想用matlab的循环结构利用quad quadl trapz解决六个函数的积分值问题f1=@(x)1;f2=@(x)x;f3=@(x)x.^2;f4=@(x)x.^3;f5=@(x)x.^4;f6=@(x)exp(x);x=0:0.01;2;h=0;f=2;g={f1 f2 f3 f4 f5 f6};for i=1:6A(i)=quad(g(i),h,f);B(i)=quadl(g(i),h,f);C(i)=t
来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/23 18:55:05
想用matlab的循环结构利用quad quadl trapz解决六个函数的积分值问题f1=@(x)1;f2=@(x)x;f3=@(x)x.^2;f4=@(x)x.^3;f5=@(x)x.^4;f6=@(x)exp(x);x=0:0.01;2;h=0;f=2;g={f1 f2 f3 f4 f5 f6};for i=1:6A(i)=quad(g(i),h,f);B(i)=quadl(g(i),h,f);C(i)=t
想用matlab的循环结构利用quad quadl trapz解决六个函数的积分值问题
f1=@(x)1;
f2=@(x)x;
f3=@(x)x.^2;
f4=@(x)x.^3;
f5=@(x)x.^4;
f6=@(x)exp(x);
x=0:0.01;2;
h=0;
f=2;
g={f1 f2 f3 f4 f5 f6};
for i=1:6
A(i)=quad(g(i),h,f);
B(i)=quadl(g(i),h,f);
C(i)=trapz(x,g(i)(x));
end
其中g={f1 f2 f3 f4 f5 f6};这一步可能有问题,g(2)并非是quad quadl trapz所需的函数,但是单独在命令窗口输入g(2),得ans=@(x)x;再输入quad(@(x)x,h,f)可得正确答案,但输入quad(g(2),h,f)却显示错误,求高手指导,用循环结构实现六个函数的三种积分
想用matlab的循环结构利用quad quadl trapz解决六个函数的积分值问题f1=@(x)1;f2=@(x)x;f3=@(x)x.^2;f4=@(x)x.^3;f5=@(x)x.^4;f6=@(x)exp(x);x=0:0.01;2;h=0;f=2;g={f1 f2 f3 f4 f5 f6};for i=1:6A(i)=quad(g(i),h,f);B(i)=quadl(g(i),h,f);C(i)=t
lz 可以这样修改:
clear;clc
f1=@(x)1*(x+1)./(x+1);%这里需要改一下,不然没有x自变量,计算机没法算
f2=@(x)x;
f3=@(x)x.^2;
f4=@(x)x.^3;
f5=@(x)x.^4;
f6=@(x)exp(x);
x=0:0.01:2;
h=0;
f=2;
g={f1 f2 f3 f4 f5 f6};
for i=1:6
A(i)=quad(g{i},h,f);%必须用{}
B(i)=quadl(g{i},h,f);
C(i)=trapz(x,g{i}(x));
end
结果::
A =
2.0000 2.0000 2.6667 4.0000 6.4000 6.3891
B =
2.0000 2.0000 2.6667 4.0000 6.4000 6.3891
C =
2.0000 2.0000 2.6667 4.0001 6.4003 6.3891
希望能帮助你