【问题标题】:SPM in matlab: how to call matlab function in Batch Editormatlab中的SPM:如何在批处理编辑器中调用matlab函数
【发布时间】:2015-01-14 15:51:35
【问题描述】:

我正在使用 matlab 在 SPM8 中使用批处理编辑器编写批处理。现在我想包含一个我自己编写的简单 matlab 函数。我确保这个函数保存在 SPM 的路径中。作为输入变量,该函数使用批处理中上一步中的文件,当我指定要调用的函数时,它显示“无法评估输入”。

所以现在我尝试在 SPM 批处理中创建另一个简单的函数,例如“sqrt”。我将“评估输入”设置为 25,将“输出变量类型”设置为实数,将“要调用的函数”设置为 sqrt。再次出现一条错误消息,提示“无法评估输入”。

我在这里做错了什么?

【问题讨论】:

    标签: matlab batch-processing matlab-spm matlabbatch


    【解决方案1】:

    在单引号中输入函数如下: 'sqrt'

    我刚刚试了一下,效果很好。

    您的批处理文件最终应如下所示:

    matlabbatch{1}.cfg_basicio.run_ops.call_matlab.inputs{1}.evaluated = 25;
    matlabbatch{1}.cfg_basicio.run_ops.call_matlab.outputs{1}.strtype.r = true;
    matlabbatch{1}.cfg_basicio.run_ops.call_matlab.fun = 'sqrt';
    

    【讨论】:

    • 非常感谢,这正是我要找的。​​span>
    • 嗨@sdbonte,由于此代码现在有效,并且此解决方案可能是唯一的,您是否考虑将其标记为“已回答”?谢谢。
    猜你喜欢
    • 1970-01-01
    • 2013-01-19
    • 2019-12-05
    • 2020-12-10
    • 2015-01-19
    • 1970-01-01
    • 2014-05-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多