关于matlab中fsolve的使用
当用fsolve解非线性方程组时,x=fsolve(fun,x0),x0是初始矩阵,这是什么意思啊,麻烦最好举个例子说明下,谢谢!...
当用fsolve解非线性方程组时,x=fsolve(fun,x0),x0是初始矩阵,这是什么意思啊,麻烦最好举个例子说明下,谢谢!
展开
1个回答
展开全部
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]就是初值,其实初值一般情况下可以随便给的。
因为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]就是初值,其实初值一般情况下可以随便给的。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询