【发布时间】:2017-01-22 21:21:19
【问题描述】:
假设您要使用在 MATLAB 中定义的一系列函数,并且您只需将这些函数的名称作为字符串变量。假设您已经创建了fun1、fun2、...、funN,并且您还有一个字符串向量为['fun1','fun2',...,'funN']。如何自动调用每个函数,而不必一个个写每个函数的名称?
【问题讨论】:
-
你可以使用
feval来调用一个函数,但是为什么你的函数名是字符串呢?可能值得告诉我们您要完成的工作,以便我们可以帮助您提出更好的选择。通常你只想存储一个函数句柄数组或其他东西 -
我有近五十个函数,我需要运行一段代码,并对每个函数进行一些计算,主要是关于微分方程和 ode45 函数。我不想每次更改函数时都更改代码。我生成了一个字符串,以便以更通用的方式编写根代码,并且每次都会在开头设置
N=...。 -
是的,但为什么你有 50 个函数,名称如
fun1、fun2等?也许你应该有一个函数,你有一些额外的输入来修改它的行为,而不是跟踪 50 个函数。 -
这些函数已经生成。此外,他们每个人都有一个很长的表情。将它们结合起来会降低计算的速度和准确性。
标签: string matlab function eval sequence