请教高手指点,用Matlab求解二元非线性方程的程序 (这个程序运行错误如 ...
发布网友
发布时间:2024-09-28 15:34
我来回答
共1个回答
热心网友
时间:2024-11-21 22:59
不知道到你为什么把程序搞这么复杂。直接把各个参数带入方程啊。直接用fsolve。
fsolve用法:
x=fsolve(fun,x0)求解fun(x)=0的解,x0是初值,fun是函数,x就是解
因为fsolve使用迭代法求解方程的,所以总要有个迭代的初值吧,这个初值就是你给的x0。
比如解方程组
x(1).^2+x(2).^2=1
x(1)=2*x(2)
可以写成
f=@(x)([x(1).^2+x(2).^2-1;x(1)-2*x(2)])
x=fsolve(f,[1 1])
这里[1 1]就是初值,其实初值一般情况下可以随便给的。