资源描述:
《计算流体力学实验报告fortran.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、中山大学本科生实验报告书差分格式A、B、C的fortran编程院系工学院应用力学与工程系专业班级理论与应用力学10级实验课程计算流体力学姓名程彬学号10332054实验地点中山大学东校区实验中心实验时间2012年4月5日指导教师詹杰民一实验目的通过实验使用fortran语言编写差分格式A、B、C数值求解一维对流方程,更加了解不同差分格式求解方程的解的不同,熟练掌握fortran语言编程技巧。二实验说明1、一维对流方程2、fortran程序主程序programfirstimplicitnoneintegeri,j,krealA(-160:160,0:100)REALR!dt/d
2、x=1R=0.5K=160callcomu(A,R,K)OPEN(10,FILE='test2.xls')doj=32,32!n=30doi=-40,40WRITE(10,*)A(i,j)enddoenddopauseendprogramfirst差分A格式的子程序subroutinecomu(A,R,K)realA(-160:160,0:100)A(-160:-21,0)=0A(21:160,0)=0doi=-20,0a(i,0)=i*0.05+1enddodoi=1,20a(i,0)=1-i*0.05enddodoj=1,100doi=-k+1,k-1A(i,j)=A(i
3、,j-1)-R/2.0*(A(i+1,j-1)-A(i-1,j-1))enddoenddoendsubroutine差分B格式的子程序subroutinecomu(A,R,K)realA(-160:160,0:100)A(-160:-21,0)=0A(21:160,0)=0doi=-20,0a(i,0)=i*0.05+1enddodoi=1,20a(i,0)=1-i*0.05enddodoj=1,100doi=-k+1,k-1A(i,j)=A(i,j-1)-R*(A(i+1,j-1)-A(i,j-1))enddoenddoendsubroutine差分C格式的子程序subro
4、utinecomu(A,R,K)realA(-160:160,0:100)A(-160:-21,0)=0A(21:160,0)=0doi=-20,0a(i,0)=i*0.05+1enddodoi=1,20a(i,0)=1-i*0.05enddodoj=1,100doi=-k+1,k-1A(i,j)=A(i,j-1)-R*(A(i,j-1)-A(i-1,j-1))enddoenddoendsubroutine2、执行结果差分A格式在t=0.5s、0.8s时不同R值下的图像差分B格式在t=0.5s、0.8s时不同R值下的图像差分C格式在t=0.5s、0.8s时不同R值下的图像2、
5、实验分析由图像可知,A格式在∆t/∆x较小时,且t也非常非常小时,图像与精确值浮动不大,而当∆t/∆x较大,且随t变化图像稳定性越差。而B格式无论∆t/∆x与t大小,与精确解误差都很大。C格式当∆t/∆x取较小值时,稳定性较好,而随∆t/∆x取值越大,其稳定性变差,符合ABS(∆t/∆x)<=1的结论。