差分Word文件下载.docx

上传人:b****2 文档编号:973635 上传时间:2023-04-29 格式:DOCX 页数:14 大小:165.31KB
下载 相关 举报
差分Word文件下载.docx_第1页
第1页 / 共14页
差分Word文件下载.docx_第2页
第2页 / 共14页
差分Word文件下载.docx_第3页
第3页 / 共14页
差分Word文件下载.docx_第4页
第4页 / 共14页
差分Word文件下载.docx_第5页
第5页 / 共14页
差分Word文件下载.docx_第6页
第6页 / 共14页
差分Word文件下载.docx_第7页
第7页 / 共14页
差分Word文件下载.docx_第8页
第8页 / 共14页
差分Word文件下载.docx_第9页
第9页 / 共14页
差分Word文件下载.docx_第10页
第10页 / 共14页
差分Word文件下载.docx_第11页
第11页 / 共14页
差分Word文件下载.docx_第12页
第12页 / 共14页
差分Word文件下载.docx_第13页
第13页 / 共14页
差分Word文件下载.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

差分Word文件下载.docx

《差分Word文件下载.docx》由会员分享,可在线阅读,更多相关《差分Word文件下载.docx(14页珍藏版)》请在冰点文库上搜索。

差分Word文件下载.docx

a三对角矩阵的对角线元素

b三对角矩阵对角线上的元素

c三对角矩阵对角线下的元素

u解向量

f节点上的自由项函数值(线性方程组Ax=f的右项)

%%%%--------------------------------------------

主程序:

%%-------------------

dx=0.01;

%%-------------------

N=length(x);

a=-2*ones(N,1);

b=ones(N-1,1);

;

c=ones(N-1,1);

u=zeros(N,1);

f=dx^2*sin(2*x);

f

(1)=f

(1);

f(N)=f(N)-1;

%%%%%%%%%%%%%%% 

u=my_chasing(a,b,c,f);

%%%%%%%%%%%% 

y_an=-sin(2*x)/4+(1+sin

(2)/4)*x;

%theanalysissolutionofODE

subplot(2,1,1)

plot(x,u,x,y_an,'

.'

title(['

\deltax='

num2str(dx)])

subplot(2,1,2)

plot(x,u-y_an'

mean_error=mean(abs(u-y_an'

));

mean_-error='

num2str(mean_error)])

问题

(2)利用中心差分格式离散

,分别调用FTCS,BTCS和C-N格式。

求解偏微分方程的混合定解问题:

(一维热传导方程)

T(x,0)=0;

(0<

=x<

=1)

偏微分方程定解问题的解析解为

FTCS

步骤:

(A)写出对应微分方程的FTCS差分格式

(B)构建递推公式,递推得到每一层的结果

根据上面的双层差分格式,由第(n-1)层的结果递推n曾的结果。

对所有的1<

=n<

=N,改写上式

(1)为

其中λ=τ/h^2为网格比网格比

由初始值(t=0)便可递推得到任何时刻的温度值

FTCS差分格式的MATLAB程序:

程序中主要符号:

dx=0.01...,空间步长

空间网格节点坐标

J=length(x)空间数据点长度

dt=0.25E-4 

 

 

时间步长

N=2000 

时间数据点长度

t=(0:

N-1)*dt时间节点坐标

ubc_l左侧边界条件

ubc_r 

右侧边界条件

ubc_initial初始条件

lamda网格比

u解矩阵

f节点上的自由项函数值

%%%%---------

J1=length(x);

dt=0.25e-4;

N=2000;

t=(0:

N-1)*dt;

%%Initialandboundarycondiction

ubc_l=100*ones(N,1);

ubc_r=100*ones(N,1);

u_initial=zeros(1,J1);

lamda=dt/dx^2;

u=zeros(N,J1);

u(1,:

)=u_initial;

%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 

forn1=2:

N

j1=1;

u(n1,j1)=u(n1-1,j1)+lamda*(u(n1-1,j1+1)-2*u(n1-1,j1)+ubc_l(n1-1));

forj1=2:

J1-1

u(n1,j1)=u(n1-1,j1)+lamda*(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)+lamda*(ubc_r(n1-1)-2*u(n1-1,j1)+u(n1-1,j1-1));

end

[xx,tt]=meshgrid(x,t(1:

10:

end));

contourf(xx,tt,u(1:

end,:

))

colorbar

\lambda='

num2str(lamda)])

%%TheanalysissolutionofPDE

k3=find(t==max(t));

T0=100;

fork2=1:

100

Dn=-200/k2/pi*(1-(-1)^k2);

temp3=Dn*sin(k2*pi*x)*exp(-k2^2*pi^2*t(k3));

T0=T0+temp3;

plot(x'

T0,x'

u(k3,:

),'

*'

mean_error=mean(abs(T0-u(k3,:

)));

t='

num2str(t(k3)),'

上图中上侧图横坐标是x,纵坐标是时间,表示随着时间的延长,高温逐渐向内部扩散。

下侧图是最后时间步解析解与差分解的比较。

横坐标表示x。

可见平均误差为0.0054。

注意:

FTCS是条件稳定的差分格式,稳定条件为网格比λ<

=0.5。

故在Δx=0.01的条件下,Δt应小于0.5E-4

BTCS差分格式(C-N差分格式与之类似,其步骤不另写):

(A)写出对应微分方程的BTCS差分格式

(B)构建递推公式,由第n-1层结果递推得到第n层的结果

递推公式为

差分格式为隐式格式,故对每一层,需利用边界条件,上一层结果求解。

求解时需用到追赶法。

BTCS差分格式的MATLAB程序:

dt=0.25E-3 

N=500 

解矩阵

节点上的自由项函数值

%%%%--------------------------------------------

dt=0.25e-3;

N=500;

%a:

themaindiagnalvectorofcoefficientmatrixA;

Au=f

%b:

theupperdiagnalvectorofA

%c:

thelowerdiagnalvectorofA

%f:

a=ones(J1,1)*(2*lamda+1);

b=-lamda*ones(J1-1,1);

c=-lamda*ones(J1-1,1);

f=zeros(J1,1);

%%%%%%%%% 

f=u(n1-1,:

);

f

(1)=f

(1)+lamda*ubc_l(n1);

f(J1)=f(J1)+lamda*ubc_r(n1);

u(n1,:

)=my_chasing(a,b,c,f);

求解三对角方程组的追赶法程序请见另一篇博文

解线性方程组的直接法及matlab程序

(2)

下图为差分方程计算结果。

BTCS差分格式为无条件稳定的差分格式,从下图可见,网格比为2.5时,计算结果仍然稳定收敛。

另外,BTCS差分格式误差比FTCS差分格式误差大。

C-N差分格式的MATLAB程序:

对应微分方程的的C-N差分格式为:

其递推公式为

根据上面的双层差分格式,由第(n-1)层的结果递推n层的结果。

与BTCS差分格式相同。

a=ones(J1,1)*(lamda+1);

b=-lamda/2*ones(J1-1,1);

c=-lamda/2*ones(J1-1,1);

temp1=lamda/2*ubc_l(n1-1)+(1-lamda)*u(n1-1,1)+lamda/2*u(n1-1,2);

f

(1)=temp1+lamda/2*ubc_l(n1);

f(2:

J1-1)=lamda/2*u(n1-1,1:

J1-2)+(1-lamda)*u(n1-1,2:

J1-1)+lamda/2*u(n1-1,3:

J1);

f(J1)=lamda/2*u(n1-1,J1-1)+(1-lamda)*u(n1-1,J1)+lamda/2*ubc_r(n1-1)+lamda/2*ubc_r(n1);

下图为C-N差分格式的数值结果。

C-N为无条件稳定的差分格式。

从下图可见,C-N差分格式的精度远高于BTCS差分格式。

且为无条件稳定的差分格式。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2