| 查看: 568 | 回复: 0 | ||
[求助]
使用matlab进行Newton-Raphson迭代是出现虚数的问题
|
|
首先说明,我是利用牛顿迭代法求解非线性方程组。所涉及的关键代码如下: sta_fir=Fa+F0-sum(sta_Kn.*deltan.^(1.5).*sina); sta_sec=Fr-sum(sta_Kn.*deltan.^(1.5).*(cos(phai)).*cosa); sta_thir=M-dm/2*sum(sta_Kn.*deltan.^(1.5).*cos(phai).*sina); static=[sta_fir;sta_sec;sta_thir]; 。。。 findsym(static); findsym(sina); [gen,n]=Newtonraphson(static,x0); 但是在实际运行的时候因为方程组中1.5次方的缘故会导致迭代出现负数,产生一系列后果。 我在调试中尝试过将方程在牛顿迭代函数中重新定义并添加判断来消除负数,但是这样又会导致原方程组Jacobi矩阵改变,进而出现不收敛的情况。 因此特来此求助,希望有高手能告知妥善的解决方法,不胜感激。 |
» 猜你喜欢
有时候真觉得大城市人没有县城人甚至个体户幸福
已经有9人回复
CSC & MSCA 博洛尼亚大学能源材料课题组博士/博士后招生|MSCA经费充足、排名优
已经有6人回复
天津大学招2026.09的博士生,欢迎大家推荐交流(博导是本人)
已经有4人回复
同年申请2项不同项目,第1个项目里不写第2个项目的信息,可以吗
已经有3人回复
退学或坚持读
已经有28人回复
面上项目申报
已经有3人回复
酰胺脱乙酰基
已经有9人回复
博士延得我,科研能力直往上蹿
已经有7人回复
面上基金申报没有其他的参与者成吗
已经有5人回复
遇见不省心的家人很难过
已经有22人回复













回复此楼