使用牛顿迭代法求解非线性方程组的误差

问题描述

我正在尝试使用牛顿迭代法求解非线性方程组。为此,我在数学中使用FindRoot命令,但不幸的是,我遇到了一些错误,我正在发布我的尝试。谁能帮我解决错误

EQ1 = p\[Theta]^2/r^2 + (pr^2 (-2 + r))/r + (pt^2 r)/(
   2 - r) + \[Mu]^2 + (p\[Phi]^2 Csc[\[Theta]]^2)/r^2;

EQ2 = EE + pt - (
   p\[Theta]^2 - LL p\[Phi] + p\[Phi]^2 Csc[\[Theta]]^2)/(pt r^3);

EQ3 = (p\[Theta]^2 r)/(2 - r) + SS - 
   LL^2 Cos[\[Theta]]^2 + ((-2 + r) (pr p\[Theta] r + 
      LL p\[Phi] Cot[\[Theta]])^2)/(
   pt^2 r^3) + (p\[Theta]^2 - LL p\[Phi] + 
     p\[Phi]^2 Csc[\[Theta]]^2)^2/(pt^2 r^2) - (
   r (p\[Phi] Csc[\[Theta]] - LL Sin[\[Theta]])^2)/(-2 + 
    r) + ((-2 + r) (LL p\[Theta] Cos[\[Theta]] - 
      pr p\[Phi] r Csc[\[Theta]] + LL pr r Sin[\[Theta]])^2)/(
   pt^2 r^3);

\[Theta] = 
 Pi/2; EE = 0.92292941; LL = 4; SS = 1.4; r = 4.5; \[Mu] = 1; pr = 0;

pth = -(r (pr^2 (-2 + r) + r ((pt^2 r)/(2 - r) + \[Mu]^2))+p\[Phi]^2 Csc[\[Theta]]^2);

p\[Theta]GR = If[pth < 0,1,Sqrt[pth]];

FindRoot[{EQ1 == 0,EQ2 == 0,EQ3 == 0},{{pt,-EE},{p\[Theta],p\[Theta]GR},{p\[Phi],LL}}]

在这里,我想找到pt,p \ theta和p \ phi的根。我给了pt = -EE的初始猜测根,p \ phi = LL的初始猜测根,以及p \ theta = p \ thetaGR的初始猜测根。我对p \ thetaGR应用了一些条件,如果pth小于零,则p \ thetaGR = 1,如果pth大于零,则p \ thetaGR = sqrt [pth]。

有人可以帮助我吗,我对Mathematica不太熟悉。我不知道我在哪里做错了。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)