我如何让Matlab使用变量值而不是名称

Chachmu

在我的代码中,有一行如下所示:

f=@(test) bf{i}(5);

其中bf是一个单元格数组,其中存储了来自str2func()的函数,i是一个存储整数的变量,而5是传递给该函数的参数。我如何让Matlab使用i的当前值评估线?现在,当我显示f时,它输出:

@(test)bf{i}(5)

假设i = 1,我希望它输出:

@(test)bf{1}(5)

尽管从技术上讲,bf {1}也应替换为bf {1}中存储的任何函数。如何强制matlab评估此语句中的变量?

丹尼尔

创建函数句柄时,将在调用函数句柄时复制工作区变量并评估表达式(通常在内存消耗方面不是问题,matlab仅存储更改)。

现在的问题是,告诉Matlab什么时候评估表达式的哪一部分。如果您希望获得更好的性能,请预先评估该功能的所有恒定部分。假设您的函数是@(x)(g(3).*f(x)),在这种情况下,matlab将g(3)在每次调用时求值

而是使用:

f=@(x)(x.^2)
g_3=g(3)
h=@(x)(g_3.*f(x))

现在已经评估了常量部分,您想查看常量而不是variabe名称。我知道实现此目的的两种方法。

您可以使用符号工具箱,基本上将函数句柄转换为符号函数,然后再次转换为函数句柄。这不仅显示常量,而且还显示f并非对所有功能都可行。

>> matlabFunction(h(sym('x')))

ans = 

    @(x)x.^2.*4.2e1

另一种可能性是使用eval:

h=eval(['@(x)',sprintf('%e',g_3),'.*f(x)'])

通常建议像我在第一步中那样对表达式的常量部分进行预评估,但是实际上不建议使用两种方法来使常量在函数句柄中可见。第一种解决方案matlabFunction使用某些功能,而第二种解决方案则具有的所有缺点eval

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用结构或变量值的字段作为模板名称?

来自分类Dev

Bash-如何在后台进程描述中显示变量值而不是名称?

来自分类Dev

在bash中,我如何回显变量名,而不是变量值?

来自分类Dev

如何使用mdb读取变量值?

来自分类Dev

lua如何获取表中的表使用变量值而不是变量作为索引?TTS

来自分类Dev

PHP在变量名称中使用变量值

来自分类Dev

如何使用JAXB附加外部生成的XML而不是POJO的变量值?

来自分类Dev

如何使用JAXB附加外部生成的XML而不是POJO的变量值?

来自分类Dev

JavaScript使用变量值作为对象方法的名称

来自分类Dev

动作使用变量值作为参数名称

来自分类Dev

使用变量值作为名称参考的Javascript

来自分类Dev

使用名称中的变量值访问redux存储

来自分类Dev

使用变量值作为名称参考的Javascript

来自分类Dev

我如何在C#中使用Regex从cshtml页面提取@ViewData变量值?

来自分类Dev

如何在我的代码中使用诸如n或i之类的变量值?

来自分类Dev

我如何在 asp.net 按钮单击中使用 javascript 变量值

来自分类Dev

如何保存变量值

来自分类Dev

如何保存变量值

来自分类Dev

SQL使用变量值

来自分类Dev

变量值未保存MATLAB

来自分类Dev

如何使用Swift从ViewController读取AppDelegate中的变量值

来自分类Dev

如何在IF条件下使用变量值

来自分类Dev

在Ansible中设置变量值时如何使用算术?

来自分类Dev

如何使用用户输入定义变量值

来自分类Dev

如何对变量值强制使用特定模式

来自分类Dev

如何使用if条件在python中更改变量值

来自分类Dev

如何使用if条件在python中更改变量值

来自分类Dev

如何使用if条件在python中更改变量值

来自分类Dev

如何使用if条件在python中更改变量值

Related 相关文章

  1. 1

    如何使用结构或变量值的字段作为模板名称?

  2. 2

    Bash-如何在后台进程描述中显示变量值而不是名称?

  3. 3

    在bash中,我如何回显变量名,而不是变量值?

  4. 4

    如何使用mdb读取变量值?

  5. 5

    lua如何获取表中的表使用变量值而不是变量作为索引?TTS

  6. 6

    PHP在变量名称中使用变量值

  7. 7

    如何使用JAXB附加外部生成的XML而不是POJO的变量值?

  8. 8

    如何使用JAXB附加外部生成的XML而不是POJO的变量值?

  9. 9

    JavaScript使用变量值作为对象方法的名称

  10. 10

    动作使用变量值作为参数名称

  11. 11

    使用变量值作为名称参考的Javascript

  12. 12

    使用名称中的变量值访问redux存储

  13. 13

    使用变量值作为名称参考的Javascript

  14. 14

    我如何在C#中使用Regex从cshtml页面提取@ViewData变量值?

  15. 15

    如何在我的代码中使用诸如n或i之类的变量值?

  16. 16

    我如何在 asp.net 按钮单击中使用 javascript 变量值

  17. 17

    如何保存变量值

  18. 18

    如何保存变量值

  19. 19

    SQL使用变量值

  20. 20

    变量值未保存MATLAB

  21. 21

    如何使用Swift从ViewController读取AppDelegate中的变量值

  22. 22

    如何在IF条件下使用变量值

  23. 23

    在Ansible中设置变量值时如何使用算术?

  24. 24

    如何使用用户输入定义变量值

  25. 25

    如何对变量值强制使用特定模式

  26. 26

    如何使用if条件在python中更改变量值

  27. 27

    如何使用if条件在python中更改变量值

  28. 28

    如何使用if条件在python中更改变量值

  29. 29

    如何使用if条件在python中更改变量值

热门标签

归档