MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   [MATLAB数学相关] 用二分法求解矩阵方程 (https://www.labfans.com/bbs/showthread.php?t=13579)

warrior_ngc 2011-06-09 23:27

用二分法求解矩阵方程
 
假如我编了个求二分法的M文件:demimethod.m

如下:function [x,k]=demimethod(a,b,f,emg)
% a,b :求解区间的两个端点
% f :所求方程的函数名
% emg :精度指标
% x:所求近似解
% k: 循环次数
fa=feval(f,a);
fab=feval(f,(a+b)/2);
k=0;
while abs(b-a)>emg
if fab==0
x=(a+b)/2;
return;
elseif fa*fab<0
b=(a+b)/2;
else
a=(a+b)/2;
end
fa=feval(f,a);
fab=feval(f,(a+b)/2);
k=k+1;
end
x=(a+b)/2;

然后运行命令行:
>> f=@(x)x^3-3*x+2-exp(x);
>> demimethod(-5,5,f,10^(-8))

ans =

-1.9846

但请注意如果我要求的函数含有矩阵符号怎么办??
比如:m=[1:1:99];
f=@(x)x^3-m*x+2-exp(x);
那如何求解这100个方程的解啊....
求详细答案。。。来讨论吧

warrior_ngc 2011-06-12 22:49

回复: 用二分法求解矩阵方程
 
:eek:没人解答啊,先顶个啊


所有时间均为北京时间。现在的时间是 11:13

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.