请各位大神帮帮忙,实在想不明白问题在哪。我想用二分法求零点,待求函数为HS(t)的调用函数。代码如下
主程序是这个:
%二分法迭代求解思路
%初始化
clc
cla
clear all
close all
%输入参数
a=1.44;
b=0.66;
mc=0.2;
er=0.2;
%迭代
t1=300;
t2=3000;
d=0.1;
l=t2-t1;
cc=0;
while l>d
t=(t1+t2)/2;
if HS(t1)*HS(t)<0
t2=t;
else if HS(t1)*HS(t)>0
t1=t;
else
t1=t;t2=t;
end
l=l/2;cc=cc+1;
end
x=(t1+t2)/2;
end
调用函数是这个:
function hs
clear;clc
res=HS(t)
function H =HS(t)
%先求中间参数w,m,H1
w=(12+a+16*b)*mc/(18*(1-mc));
m=er*(1+0.25*a-0.5*b);
H1=-118049.96&