matlab中为什么这个函数只能输出第一个参数?function [n,y]=HT(f,c,e)%计算步长y1=diff(f,2);f1=@(x)eval(y1);,fmin]=fminbnd(f1,c(1),c(2));y1=diff(-f,2);f1=@(x)eval(y1);,fmax]=fminbnd(f1,c(1),c(2));b=max(abs(fmin),abs(fmax));n=ceil((b*(
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/27 10:34:41
matlab中为什么这个函数只能输出第一个参数?function [n,y]=HT(f,c,e)%计算步长y1=diff(f,2);f1=@(x)eval(y1);,fmin]=fminbnd(f1,c(1),c(2));y1=diff(-f,2);f1=@(x)eval(y1);,fmax]=fminbnd(f1,c(1),c(2));b=max(abs(fmin),abs(fmax));n=ceil((b*(
matlab中为什么这个函数只能输出第一个参数?
function [n,y]=HT(f,c,e)
%计算步长
y1=diff(f,2);
f1=@(x)eval(y1);
,fmin]=fminbnd(f1,c(1),c(2));
y1=diff(-f,2);
f1=@(x)eval(y1);
,fmax]=fminbnd(f1,c(1),c(2));
b=max(abs(fmin),abs(fmax));
n=ceil((b*(c(2)-c(1))^3/12/e)^0.5);
%进行计算
h=(c(2)-c(1))/n;
i=1:n+1;
x(i)=c(1)+(i-1)*h;
y=subs(f,c(1))+subs(f,c(2));
for i=2:n-1
y=y+2*subs(f,x(i));
end
y=h/2*y;
把y放前面只输出y,n放前面只输出n。为什么会这样呢…………?
matlab中为什么这个函数只能输出第一个参数?function [n,y]=HT(f,c,e)%计算步长y1=diff(f,2);f1=@(x)eval(y1);,fmin]=fminbnd(f1,c(1),c(2));y1=diff(-f,2);f1=@(x)eval(y1);,fmax]=fminbnd(f1,c(1),c(2));b=max(abs(fmin),abs(fmax));n=ceil((b*(
是不是你调用的时候有问题?按照你的意思,调用应该如此:
[a,b]=HT(f,c,e)
其中a存放n的结果,b存放y的结果.
f、c、e则应该输入实际的参数.