| 查看: 650 | 回复: 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矩阵改变,进而出现不收敛的情况。 因此特来此求助,希望有高手能告知妥善的解决方法,不胜感激。 |
» 猜你喜欢
上海工程技术大学激光智能制造课题组|2027级博士研究生招生公告
已经有11人回复
上海工程技术大学激光智能制造课题组招收博士研究生
已经有10人回复
实名举报:华南理工大学物理与光电学院副院长李志远婚内两次出轨女学生(博士)
已经有15人回复
申博发邮件
已经有11人回复
现代”学阀”该如何界定
已经有7人回复
各位大神,目前国内有哪些比较好用的逆合成软件?
已经有12人回复
我的奶奶
已经有3人回复
国社科系统bug了,是不是要放榜了?
已经有9人回复










回复此楼