【问题】系数中含有向​量和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参数未定义,如何解决呢,谢谢各位。

 채택된 답변

0 개 추천

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

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 非线性方程组에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!