【问题】系数中含有向​量和sum的非线性方​程组怎么解决。

m是一个数目为8609的向量,m这个参数如何传递进去。
functionF=root3d(x)
F(1)=8609*log(abs(x(2)))-8609*psi(x(1))-sum(log(abs(m-x(3))))
F(2)=8609*x(1)*1/abs(x(2))-sum(1./(m-x(3)))
F(3)=(x(1)+1)*sum(1./abs(m-x(3)))-sum(x(2)./(m-x(3))^2)
fun= @root3d;
x0= [0,0,0];
x= fsolve(fun,x0)
提示m参数未定义,如何解决呢,谢谢各位。

 Accepted Answer

1.直接在function里面给m赋值
或者
2.在主代码和function里面都声明全局变量
global m
然后在主代码里给m赋值

More Answers (0)

Categories

Find more on MATLAB 快速入门 in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!