【摘要】:输出参数中:x是非线性方程的数值解;fx是数值解的函数值;返回参数flag>0时,表示求解成功,否则求解出现问题。例8-5求二维非线性方程组的数值解M文件运行结果:可见,两个非线性方程组解的函数值非常接近0,说明其解的误差很小,而且判断参数flag>0,表示求解成功。
1.一维非线性方程
对于一维非线性方程f(x)=0求解,可以看作是单变量的极小化问题,通过不断缩小搜索区间来逼近一维问题的真解。因此,可以使用一维非线性方程优化解函数来求解。其调用格式是:
[x,fx,flag]=fzero(fun,x0)
其中,输入参数中:fun是非线性方程的函数表达式,x0是根的初值。输出参数中:x是非线性方程的数值解;fx是数值解的函数值;返回参数flag>0时,表示求解成功,否则求解出现问题。
函数fzero所使用的算法为二分法、secant法和逆二次插值法的组合。
例8-4 求解一维非线性方程f(x)=atan(x)+ex=0的数值解。
M文件运行结果:
可见,得到解的误差非常小,而且判断参数flag>0,表示求解成功。
2.多维非线性方程组(www.xing528.com)
对于多维非线性方程组f(X)=0,其中f(X)是由多个非线性函数组成的向量函数:
使用多维非线性方程组优化函数求解的调用格式是:
其中,输入参数中fun是非线性方程组的向量函数表达式:x0是根的初值;输出参数中x是非线性方程(组)的数值解;fval是数值解的函数值;返回参数flag>0时,表示求解成功,否则求解出现问题。
函数fsolve的作用是从根的初值x0开始,以逐渐减少误差的算法,搜索出满足多维非线性方程组fun的实根x和对应的函数值fval。例8-5求二维非线性方程组
的数值解
M文件运行结果:
可见,两个非线性方程组解的函数值非常接近0,说明其解的误差很小,而且判断参数flag>0,表示求解成功。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。