0

我为“矢量函数的 Newton-Raphson 方法”制作了一个程序。

假设我有这个功能f(x,y)=(x-y,x+y^2)。雅可比矩阵是[1,-1;1,2*y]。然后我输入r=symvar(jacobian)并评估它,我使用subs(jacobian,r,x0).

x0=(0,0)如果第一个变量x没有出现,我如何评估矩阵?

4

3 回答 3

2

我正在为你为什么试图让你(和我)的生活复杂化而摸不着头脑。

  1. 您不需要计算 jacobian:Matlab 使用jacobian函数为您计算(首先您必须从工作区中删除 jacobian 变量实例)

    jak = jacobian(f);
    
  2. 接下来,您可以使用该eval功能进行投标:

    x = 0, y = 0;
    eval(jak)
    
    ans =
    
      1.00         -1.00
      1.00             0
    
于 2013-01-20T14:59:10.420 回答
1

如果 x 没有出现在 jacobian 的表达式中,则意味着它的值不会影响得到的 jacobian。

如果您的问题是如何评估:

[1,-1;1,2*y]

当 x 和 y 都等于 0 时,答案很简单:

[1,-1;1,2*0]

归结为:

[1,-1
 1, 0]
于 2013-01-20T14:26:40.953 回答
0

正如其他用户已经建议的那样,您可以遵循此替代解决方案

syms x y
jacobian([x - y,x + y.^2])

对于评估,x = 0只需输入

subs(jacobian([x - y,x + y.^2]),0)

我希望这有帮助。

于 2013-01-21T11:00:48.377 回答