【发布时间】:2017-11-24 14:58:38
【问题描述】:
假设我有一个array[2 2] 的符号函数。每个元素代表一个功能。然后我用matlabFunction() 函数将它转换为函数处理程序。到目前为止一切都很好。例如,当我输入f(1,1) 时,我可以获得2x2 答案矩阵。如何输入向量而不是手动输入1 and 1。例如我想定义x0=[1 1],然后输入f(x0)。每次我得到Not enough input arguments. 它都会尝试输入1 to x,然后再输入1 to x 并给出答案。但是因为还有一个名为 y 的变量,所以它给出了输入参数不足的错误。有什么建议吗?基本上我想创建 f(x),其中 f 和 x 是矩阵。所以它变成了方程组。
例如:
variable1= [1 1]
jac= @(a,b)reshape([b,a.*2.0+a.^2.*b.^2.*3.0,a+b.*2.0,a.^3.*b.*2.0],[2,2])
jac(variable[1 1])
Not enough input arguments.
Error in symengine>@(a,b)reshape([b,a.*2.0+a.^2.*b.^2.*3.0,a+b.*2.0,a.^3.*b.*2.0],[2,2])
但是当
jac(1,1)
ans =
1 3
5 2
【问题讨论】:
-
请在您的帖子中包含该符号函数和您的代码
-
@SardarUsama 完成
-
复制这个变量1= [1 1] jac= @(a,b)reshape([b,a.*2.0+a.^2.*b.^2.*3.0,a +b.*2.0,a.^3.*b.*2.0],[2,2]) jac(variable[1 1]) 它将起作用。在把 jac(1,1) 重新创建我的问题之后,我还编辑了你可以从那里复制的问题
-
谢谢让我现在检查
标签: arrays matlab function math