dx=1/100;
J1=99;
x=(1:J1)*dx;
xigema=0.1;
dt=xigema*(dx^2);
N=1/dt;
t=(0:N-1)*dt;
% % % % ---------
% % Initial and boundary condiction
ubc_l=0*ones(N,1);
ubc_r=2*ones(N,1);
for i=2:J1
if x(i)>0 & x(i)<0.3
f(i)=0;
else if x(i)>=0.3 & x(i)<=0.6
f(i)=1;
else
f(i)=1+2.5*(x(i)-0.6);
end
end
end
u_initial=f(1,1:J1);
% % % % ---------
u=zeros(N,J1);
u(1,:)=u_initial;
for n1=2:N
j1=1;
u(n1,j1)=u(n1-1,j1)+xigema*(u(n1-1,j1+1)-2*u(n1-1,j1)+ubc_l(n1-1));
for j1=2:J1-1
u(n1,j1)=u(n1-1,j1)+xigema*(u(n1-1,j1+1)-2*u(n1-1,j1)+u(n1-1,j1-1));
end
j1=J1;
u(n1,j1)=u(n1-1,j1)+xigema*(ubc_r(n1-1)-2*u(n1-1,j1)+u(n1-1,j1-1));
end
[xx,tt]=meshgrid(x,t(1:10:N));
subplot(2,1,1)
contourf(xx,tt,u(1:10:N,:))
colorbar
title(('有限差分法(FTCS)'))
k3=find(t==max(t));
T0=0;
for k2=1:100
temp3=(2/k2/pi*cos(3*k2*pi/10)-5/k2/k2/pi/pi*sin(3*k2*pi/5))*exp(-k2^2*pi^2*k3)*sin(k2*pi*x);
T0=T0+temp3;
end
T=T0+2*x;
subplot(2,1,2)
plot(x',T,'ro',x',u(k3,:),'*')
mean_error=mean(abs(T-u(k3,:))); %平均误差
title(['t=',num2str(t(k3)),' mean_-error=',num2str(mean_error)]) %在标题中显示平均误差
FTCS.rar_FTCS_有限差分_有限差分法_热传导_非定常热传导方程
版权申诉
85 浏览量
2022-09-21
21:45:38
上传
评论 1
收藏 1KB RAR 举报
Kinonoyomeo
- 粉丝: 75
- 资源: 1万+
最新资源
- Flume进阶-自定义拦截器jar包
- Dubins曲线算法讲解和在运动规划中的使用.pdf
- 上市公司-股票性质数据-工具变量(民企、国企、央企)2003-2022年.dta
- 上市公司-股票性质数据-工具变量(民企、国企、央企)2003-2022年.xlsx
- Reeds+Shepp曲线算法讲解和实现.pdf
- 毕业设计基于SpringBoot+MyBatisPlus+MySQL+Vue的外卖配送信息系统源代码+数据库
- 词向量(Word Embeddings)是自然语言处理(NLP)领域的一种重要技术.txt
- Surfer,线性函数
- MyBatis 的动态 SQL 是其核心特性之一.txt
- 时代的sdddsddsddsd
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
评论0