1 / 76
文档名称:

有限元matlabPPT讲座.ppt

格式:ppt   大小:2,692KB   页数:76页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

有限元matlabPPT讲座.ppt

上传人:业精于勤 2019/10/22 文件大小:2.63 MB

下载得到文件列表

有限元matlabPPT讲座.ppt

文档介绍

文档介绍:求数值解方法差分方法有限元方法MATLAB的pedpe函数MATLAB的PDEtool工具箱偏微分方程分类椭圆偏微分方程双曲线偏微分方程抛物线偏微分方程椭圆偏微分方程特例—拉普拉斯方程拉普拉斯方程是最简单的椭圆偏微分方程,以下以拉普拉斯方程为例,讲述椭圆偏微分方程的的数值解法。拉普拉斯方程形式如下:3椭圆偏微分方程边界条件椭圆偏微分方程边界条件有以下三种提法:其中第一种提法最为普遍,下面以第一种边界条件,拉普拉斯方程为例介绍椭圆偏微分方程常用的五点差分格式和工字型差分格式的解法。4五点差分格式五点差分格式最常用的格式,其形式如下:注意:这里的边界为矩形区域。5五点差分格式算法注意:要保证x方向和y方向上的网格步长相等才能使用上面的公式。6*五点差分格式在MATLAB中实现functionu=peEllip5(nx,minx,maxx,ny,miny,maxy)%x方向的节点数:nx%求解区间x的左端:minx%求解区间x的右端:maxx%y方向的节点数:ny%求解区间y的左端:miny%求解区间y的右端:maxy%求解区间上的数值解:uformatlong;hx=(maxx-minx)/(nx-1);hy=(maxy-miny)/(ny-1);u0=zeros(nx,ny);forj=1:nyu0(j,1)=EllIni2Uxl(minx,miny+(j-1)*hy);u0(j,nx)=EllIni2Uxr(maxx,miny+(j-1)*hy);endforj=1:nxu0(1,j)=EllIni2Uyl(minx+(j-1)*hx,miny);u0(ny,j)=EllIni2Uyr(minx+(j-1)*hx,maxy);end%边界条件的离散*五点差分格式在MATLAB中实现A=-4*eye((nx-2)*(ny-2),(nx-2)*(ny-2));b=zeros((nx-2)*(ny-2),1);fori=1:(nx-2)*(ny-2);ifmod(i,nx-2)==1ifi==1A(1,2)=1;A(1,nx-1)=1;b(1)=-u0(1,2)-u0(2,1);elseifi==(ny-3)*(nx-2)+1A(i,i+1)=1;A(i,i-nx+2)=1;%注意边界节点的离散方式b(i)=-u0(ny-1,1)-u0(ny,2);elseA(i,i+1)=1;A(i,i-nx+2)=1;A(i,i+nx-2)=1;b(i)=-u0(floor(i/(nx-2))+2,1);endendelseifmod(i,nx-2)==0ifi==nx-2*五点差分格式在MATLAB中实现A(i,i-1)=1;%注意边界节点的离散方式A(i,i+nx-2)=1;b(i)=-u0(1,nx-1)-u0(2,nx);elseifi==(ny-2)*(nx-2)A(i,i-1)=1;A(i,i-nx+2)=1;b(i)=-u0(ny-1,nx)-u0(ny,nx-1);elseA(i,i-1)=1;A(i,i-nx+2)=1;A(i,i+nx-2)=1;b(i)=-u0(floor(i/(nx-2))+1,nx);endendelseifi>1&&i<nx-2A(i,i-1)=1;A(i,i+nx-2)=1;A(i,i+1)=1;b(i)=-u0(1,i+1);elseifi>(ny-3)*(nx-2)&&i<(ny-2)*(nx-2)A(i,i-1)=1;A(i,i-nx+2)=1;%其余靠近边界点的离散A(i,i+1)=1;b(i)=-u0(ny,mod(i,(nx-2))+1);*五点差分格式在MATLAB中实现elseA(i,i-1)=1;A(i,i+1)=1;%与边界无关的点离散A(i,i+nx-2)=1;A(i,i-nx+2)=1;endendendendendu=A\b;%求线性方程组的解uformatshort