Matlab求定积分并作图问题形如图所示的积分方程,其中K已知等于0.1242,t为一系列数:即从60到6000等差60的一系列数.现目的是想把每个t值带入积分式后算出一个lny值,然后以lny对t作图获得一曲线

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/08 12:51:11

Matlab求定积分并作图问题形如图所示的积分方程,其中K已知等于0.1242,t为一系列数:即从60到6000等差60的一系列数.现目的是想把每个t值带入积分式后算出一个lny值,然后以lny对t作图获得一曲线
Matlab求定积分并作图问题
形如图所示的积分方程,其中K已知等于0.1242,t为一系列数:即从60到6000等差60的一系列数.现目的是想把每个t值带入积分式后算出一个lny值,然后以lny对t作图获得一曲线,请问如何实现,急盼您的解答,

Matlab求定积分并作图问题形如图所示的积分方程,其中K已知等于0.1242,t为一系列数:即从60到6000等差60的一系列数.现目的是想把每个t值带入积分式后算出一个lny值,然后以lny对t作图获得一曲线
clear;
g=inline(' exp(-55748.7/0.1242./x) ','x');
t=60:60:6000;
for n=1:length(t)
y(n)=-16.909+11089/0.1242/t(n)+101417.4*quad(g,0,t(n));
end
plot(t,y,'-*');
你这个题不用符号积分,用数值积分就完全能解决.

syms t
x=60:60:6000;
k=0.1242;
for i=1:length(x)
y(i)=-16.909+11089/k/x(i)+int('101417.4*exp(-55748.7/k/x(i))','x',0,x(i));%注意了
end
y=vpa(y);
plot(x,y)
这是我尝试的,行不通的<...

全部展开

syms t
x=60:60:6000;
k=0.1242;
for i=1:length(x)
y(i)=-16.909+11089/k/x(i)+int('101417.4*exp(-55748.7/k/x(i))','x',0,x(i));%注意了
end
y=vpa(y);
plot(x,y)
这是我尝试的,行不通的
该积分无法直接求出,可以参考积分的梯形求法,还原微积分。这个积分程序网上很多
只要int('101417.4*exp(-55748.7/k/x(i))','x',0,x(i));部分换成梯形积分程序的值就好了
大体的框架不变。
祝好运~~~~

收起