| 查看: 648 | 回复: 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矩阵改变,进而出现不收敛的情况。 因此特来此求助,希望有高手能告知妥善的解决方法,不胜感激。 |
» 猜你喜欢
科研求助
已经有4人回复
博士去二本高校当辅导员,如何调整心态?
已经有11人回复
面上没中,邀请各位路过的虫友分析一下分数
已经有15人回复
面上有专家说实验设备不是我们单位的
已经有6人回复
江苏省自然基金 什么时候出结果
已经有6人回复
广西大学-广州大学招聘博士后 欢迎广大优秀人才!!!
已经有11人回复
闲聊
已经有3人回复
两块石头
已经有10人回复
初秋的晨风
已经有6人回复
Ei源刊怎么投
已经有4人回复









回复此楼