MATLAB代做|FPGA代做--数值积分计算的matlab源码

时间：2018-12-5 3:15:52 点击：

核心提示：数值积分计算的matlab源码...

%改变时间步长的差商近似替代导数法离散一阶非稳态导热微分方程求解源程序：

p=[0.1 0.5 1];                                         %时间步长的改变系数

r1=0.025;r2=0.05;r3=0.10;a1=1e-6;a2=5e-6/3;

h=500;k1=3;k2=0.2;

tw=300*ones(3,601);

for k=1:3

dt=0.5*p(k);dr1=0.001;dr2=0.002;

M1=dr1*dr1/a1/dt;

M2=dr2*dr2/a2/dt;

I=(r2-r1)/dr1;

J=(r3-r2)/dr2;

Nn=600/p(k);

T1=300*ones(Nn+1,I+1);                                          %陶瓷壁面温度初值

T2=300*ones(Nn+1,J+1);                                          %保温层温度初值

T10=300*ones(1,I+1);                                             %陶瓷壁面迭代变量

T20=300* ones(1,J+1);                                             %保温层迭代变量

Tw=300*ones(Nn+1);                                      %保温层内壁温度初值

for n=1:Nn                                              %时间步长迭代

for i=2:I                                            %陶瓷壁面空间步长迭代

N1=2*(r1+(i-1)*dr1)*dr1/a1/dt;

T1(n+1,i)=(1/M1+1/N1)*T10(i+1)+ (1/M1-1/N1)*T10(i-1) +(1-2/M1)*T10(i); %(7)

T1(n+1,1)=(k1*T1(n+1,2)+h*dr1*1500)/(k1+h*dr1);                         %(9)

end

for j=2:J

N2=2*(r2+(j-1)*dr2)*dr2/a2/dt;

T2(n+1,j)=(1/M2+1/N2)*T20(j+1)+ (1/M2-1/N2)*T20(j-1)+(1-2/M2)*T20(j); %(12)

T2(n+1,J+1)=T2(n+1,J);                                                  %(14)

end

Tw(n+1)=(k1*dr2*T1(n+1,I)+k2*dr1*T2(n+1,2))/(k1*dr2+k2*dr1);         %(10)

T1(n+1,I+1)=Tw(n+1);                                                %(11)

T2(n+1,1)= Tw(n+1);                                                 %(11)

T10=T1(n+1,:);                                                      %迭代变量重新赋值

T20=T2(n+1,:);                                                      %迭代变量重新赋值

end

for n=1:601                                                  %向量维数统一化

i=1+(n-1)/p(k);

tw(k,n)=Tw(i);

end

end

grid

n=0:600;

t=0.5*n/60;

plot(t,tw(3,:),t,tw(2,:),t,tw(1,:))

xlabel('时间t/min');ylabel('保温层内表面温度Tw/K');

gtext('Δt=0.05s'); gtext('Δt=0.5s');

gtext('Δt=0.25s');

QQ ：1224848052

• 百度搜索
• 查阅资料过程中
• 论坛发现
• 百度贴吧发现
• 朋友介绍
• 大名：
• 内容：