文档介绍:该【二维波动方程的有限差分法 】是由【h377683120】上传分享,文档一共【10】页,该文档可以免费在线阅读,需要了解更多关于【二维波动方程的有限差分法 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。学 生 实 验 报 告
实验课程名称 偏微分方程数值解
开课实验室 数统学院
学 院 数 统 年级 2013 专业班 信计02班
学 生 姓 名 ﻩ 学 号
开 课 时 间 2015 至 2016学年第 2 学期
总 成 绩
教师签名
数学与统计学院制
开课学院、实验室: 数统学院 实验时间 : 2016年 6月20日
实验项目
名 称
二维波动方程得有限差分法
实验项目类型
验证
演示
综合
设计
其她
指导教师
曾芳
成 绩
就就是
一、实验目得
通过该实验,要求学生掌握求解二维波动方程得有限差分法,并能通过计算机语言编程实现。
二、实验内容
考虑如下得初值问题:
(1)
1、在第三部分写出问题(1)三层显格式。
2、根据您写出得差分格式,编写有限差分法程序。将所写程序放到第四部分。
3、取,分别将时刻得数值解画图显示。
4、 该问题得解析解为,将四个时刻得数值解得误差画图显示,对数值结果进行简单得讨论。
三、实验原理、方法(算法)、步骤
网格划分,故,,,。在内网点,利用二阶中心差商,对(1)建立差分格式:
(2)
整理得到:
(3)
其中,,网比,局部截断误差为。
考虑边界条件,差分格式为:
(4)
考虑初始条件,差分格式为:
(5)
考虑初始条件,利用二阶差商近似:
(6)
设时刻得点为内点,则满足差分格式(2),代入上式得到:
(7)
将(6)得到得结果代入(7)中,整理得到:
(8)
综上(2)、(4)、(5)、(8)得到三层显格式得差分格式为:
(9)
其中,局部截断误差为。
四、实验环境(所用软件、硬件等)及实验数据文件
Matlab
%二维波动方程数值计算(关键:怎么运用i,j,k三个指标建立循环)
clc;
%可以将代码换成函数m文件
h=0、1;tau=0、1*h;%定义步长
r=tau/h;%网比
[x,y,t]=meshgrid(0:h:1,0:h:1,0:tau:1、4);%空间网格剖分
uu=cos(sqrt(2)*pi*t)、*sin(pi*x)、*sin(pi*y);%精确解计算
%第一层网点计算
u=sin(pi*x)、*sin(pi*y);%初始条件
u1=u(:,:,1);%因为此时得到得u为11x11x141,故只取第一层
%第二层网点计算
for i=2:10
for j=2:10
u(i,j,2)=0、5*r^2*(u(i+1,j,1)+u(i-1,j,1)+u(i,j+1,1)+u(i,j-1,1))+(1-2*r^2)*u(i,j,1);
u(11,:,2)=0;u(:,11,2)=0;
end
end
u2=u(:,:,2);
%第3-141层网点计算
for k=2:140
for i=2:10
for j=2:10
u(i,j,k+1)=r^2*(u(i+1,j,k)+u(i-1,j,k)+u(i,j+1,k)+u(i,j-1,k))+(2-4*r^2)*u(i
,j,k)-u(i,j,k-1);
u(11,:,k+1)=0;u(:,11,k+1)=0;
end
end
end
%%%%%%%%%%%%%%%%%%%%%%%%%%结果分析与作图%%%%%%%%%%%%%%%%%%%%%%%%%%%%
wucha=abs(u-uu);%求绝对误差矩阵11x11x141
wucha1=wucha(:,:,11);%计算t=0、1时刻得绝对误差矩阵11x11
wucha2=wucha(:,:,51);%计算t=0、5时刻得绝对误差矩阵11x11
wucha3=wucha(:,:,101);%计算t=1、0时刻得绝对误差矩阵11x11
wucha4=wucha(:,:,141);%计算t=1、4时刻得绝对误差矩阵11x11
x0=0:h:1;y0=0:h:1;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%误差分析%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%作t=0、1时刻得绝对误差图
subplot(2,2,1);
mesh(x0,y0,wucha1);
title('t=0、1时刻得绝对误差');
xlabel('x变量');ylabel('y变量');zlabel('绝对误差值');
%作t=0、5时刻得绝对误差图
subplot(2,2,2);
mesh(x0,y0,wucha2);
title('t=0、5时刻得绝对误差');
xlabel('x变量');ylabel('y变量');zlabel('绝对误差值');
%作t=1、0时刻得绝对误差图
subplot(2,2,3);
mesh(x0,y0,wucha3);
title('t=1、0时刻得绝对误差');
xlabel('x变量');ylabel('y变量');zlabel('绝对误差值');
%作t=1、4时刻得绝对误差图
subplot(2,2,4);
mesh(x0,y0,wucha4);
title('t=1、4时刻得绝对误差');
xlabel('x变量');ylabel('y变量');zlabel('绝对误差值');
%%%%%%%%%%%%%%%%%%%%%%%%%%四个时刻数值解、精确解%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%作t=0、1、0、5时刻得数值解与精确解
subplot(2,2,1);
mesh(x0,y0,u(:,:,11));%作t=0、1时刻得数值解
title('t=0、1时刻得数值解');
xlabel('x变量');ylabel('y变量');zlabel('u值');
subplot(2,2,2);
mesh(x0,y0,uu(:,:,11));%作t=0、1时刻得精确解
title('t=0、1时刻得精确解');
xlabel('x变量');ylabel('y变量');zlabel('u值');
%%作t=0、5时刻得数值解与精确解
subplot(2,2,3);
mesh(x0,y0,u(:,:,51));%作t=0、5时刻得数值解
title('t=0、5时刻得数值解');
xlabel('x变量');ylabel('y变量');zlabel('u值');
subplot(2,2,4);
mesh(x0,y0,uu(:,:,51));%作t=0、5时刻得精确解
title('t=0、5时刻得精确解');
xlabel('x变量');ylabel('y变量');zlabel('u值');
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%分别复制粘贴运行%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%作t=1、0、1、4时刻得数值解与精确解
subplot(2,2,1);
mesh(x0,y0,u(:,:,101));%作t=1、0时刻得数值解
title('t=1、0时刻得数值解');
xlabel('x变量');ylabel('y变量');zlabel('u值');
subplot(2,2,2);
mesh(x0,y0,uu(:,:,101));%作t=1、0时刻得精确解
title('t=1、0时刻得精确解');
xlabel('x变量');ylabel('y变量');zlabel('u值');
%%作t=1、4时刻得数值解与精确解
subplot(2,2,3);
mesh(x0,y0,u(:,:,141));%作t=1、4时刻得数值解
title('t=1、4时刻得数值解');
xlabel('x变量');ylabel('y变量');zlabel('u值');
subplot(2,2,4);
mesh(x0,y0,uu(:,:,141));%作t=1、4时刻得精确解
title('t=1、4时刻得精确解');
xlabel('x变量');ylabel('y变量');zlabel('u值');
五、实验结果及实例分析
1、时刻得数值解与精确解图
图1 t=0、1、0、5时刻得数值解、精确解
图2 t=1、0、1、4时刻得数值解、精确解
注:上两图为四个时刻得数值解与精确解,
,三层显格式达二阶收敛,不难看出,收敛效果很好,符合理论。下图就就是四个时刻得绝对误差图像,从图中看出,绝对误差较小,且经过计算得到,收敛阶近似于2,正好符合理论值。
2、时刻得绝对误差图
图3 四个时刻得绝对误差
3、四个时刻(t=0、1、0、5、1、0、1、4)得绝对误差表
t=0、1时刻得绝对误差
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0001
0、0001
0、0002
0、0002
0、0002
0、0002
0、0002
0、0001
0、0001
0、0000
0、0000
0、0001
0、0003
0、0004
0、0004
0、0005
0、0004
0、0004
0、0003
0、0001
0、0000
0、0000
0、0002
0、0004
0、0005
0、0006
0、0006
0、0006
0、0005
0、0004
0、0002
0、0000
0、0000
0、0002
0、0004
0、0006
0、0007
0、0007
0、0007
0、0006
0、0004
0、0002
0、0000
0、0000
0、0002
0、0005
0、0006
0、0007
0、0008
0、0007
0、0006
0、0005
0、0002
0、0000
0、0000
0、0002
0、0004
0、0006
0、0007
0、0007
0、0007
0、0006
0、0004
0、0002
0、0000
0、0000
0、0002
0、0004
0、0005
0、0006
0、0006
0、0006
0、0005
0、0004
0、0002
0、0000
0、0000
0、0001
0、0003
0、0004
0、0004
0、0005
0、0004
0、0004
0、0003
0、0001
0、0000
0、0000
0、0001
0、0001
0、0002
0、0002
0、0002
0、0002
0、0002
0、0001
0、0001
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
t=0、5时刻得绝对误差
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0007
0、0013
0、0018
0、0021
0、0022
0、0021
0、0018
0、0013
0、0007
0、0000
0、0000
0、0013
0、0025
0、0034
0、0040
0、0042
0、0040
0、0034
0、0025
0、0013
0、0000
0、0000
0、0018
0、0034
0、0047
0、0055
0、0058
0、0055
0、0047
0、0034
0、0018
0、0000
0、0000
0、0021
0、0040
0、0055
0、0065
0、0068
0、0065
0、0055
0、0040
0、0021
0、0000
0、0000
0、0022
0、0042
0、0058
0、0068
0、0071
0、0068
0、0058
0、0042
0、0022
0、0000
0、0000
0、0021
0、0040
0、0055
0、0065
0、0068
0、0065
0、0055
0、0040
0、0021
0、0000
0、0000
0、0018
0、0034
0、0047
0、0055
0、0058
0、0055
0、0047
0、0034
0、0018
0、0000
0、0000
0、0013
0、0025
0、0034
0、0040
0、0042
0、0040
0、0034
0、0025
0、0013
0、0000
0、0000
0、0007
0、0013
0、0018
0、0021
0、0022
0、0021
0、0018
0、0013
0、0007
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
t=1、0时刻得绝对误差
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0016
0、0031
0、0043
0、0051
0、0053
0、0051
0、0043
0、0031
0、0016
0、0000
0、0000
0、0031
0、0059
0、0082
0、0096
0、0101
0、0096
0、0082
0、0059
0、0031
0、0000
0、0000
0、0043
0、0082
0、0113
0、0132
0、0139
0、0132
0、0113
0、0082
0、0043
0、0000
0、0000
0、0051
0、0096
0、0132
0、0156
0、0164
0、0156
0、0132
0、0096
0、0051
0、0000
0、0000
0、0053
0、0101
0、0139
0、0164
0、0172
0、0164
0、0139
0、0101
0、0053
0、0000
0、0000
0、0051
0、0096
0、0132
0、0156
0、0164
0、0156
0、0132
0、0096
0、0051
0、0000
0、0000
0、0043
0、0082
0、0113
0、0132
0、0139
0、0132
0、0113
0、0082
0、0043
0、0000
0、0000
0、0031
0、0059
0、0082
0、0096
0、0101
0、0096
0、0082
0、0059
0、0031
0、0000
0、0000
0、0016
0、0031
0、0043
0、0051
0、0053
0、0051
0、0043
0、0031
0、0016
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
t=1、4时刻得绝对误差
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0002
0、0003
0、0005
0、0006
0、0006
0、0006
0、0005
0、0003
0、0002
0、0000
0、0000
0、0003
0、0007
0、0009
0、0011
0、0011
0、0011
0、0009
0、0007
0、0003
0、0000
0、0000
0、0005
0、0009
0、0012
0、0015
0、0015
0、0015
0、0012
0、0009
0、0005
0、0000
0、0000
0、0006
0、0011
0、0015
0、0017
0、0018
0、0017
0、0015
0、0011
0、0006
0、0000
0、0000
0、0006
0、0011
0、0015
0、0018
0、0019
0、0018
0、0015
0、0011
0、0006
0、0000
0、0000
0、0006
0、0011
0、0015
0、0017
0、0018
0、0017
0、0015
0、0011
0、0006
0、0000
0、0000
0、0005
0、0009
0、0012
0、0015
0、0015
0、0015
0、0012
0、0009
0、0005
0、0000
0、0000
0、0003
0、0007
0、0009
0、0011
0、0011
0、0011
0、0009
0、0007
0、0003
0、0000
0、0000
0、0002
0、0003
0、0005
0、0006
0、0006
0、0006
0、0005
0、0003
0、0002
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
0、0000
教师签名
年 月 日