版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
matlab程序(解泊松方程)matlab程序(解泊松方程)matlab程序(解泊松方程)matlab程序(解泊松方程)编制仅供参考审核批准生效日期地址:电话:传真:邮编:求解泊松方程的functionFinite_element_tri(Imax)%用有限元法求解三角形形区域上的Possion方程Jmax=2*Imax;%其中ImaxJmax分别表示x轴和y轴方向的网格数,其中Jmax等于Imax的两倍%定义一些全局变量globalndmnelna%ndm总节点数%nel基元数%na表示活动节点数V=0;J=0;X0=1/Imax;Y0=X0;%V=0为边界条件domain_tri%调用函数画求解区域[X,Y,NN,NE]=setelm_tri(Imax,Jmax);%给节点和三角形元素编号,并设定节点坐标%以下求解有限元方程的求系数矩阵T=zeros(ndm,ndm);forn=1:neln1=NE(1,n);n2=NE(2,n);n3=NE(3,n);%整体编号s=abs((X(n2)-X(n1))*(Y(n3)-Y(n1))-(X(n3)-X(n1))*(Y(n2)-Y(n1)))/2;%三角形面积fork=1:3ifn1<=na|n2<=naT(n1,n2)=T(n1,n2)+((Y(n2)-Y(n3))*(Y(n3)-Y(n1))+(X(n3)-X(n2))*(X(n1)-X(n3)))/(4*s);T(n2,n1)=T(n1,n2);T(n1,n1)=T(n1,n1)+((Y(n2)-Y(n3))^2+(X(n3)-X(n2))^2)/(4*s);%V=0则边界积分为零,非零时积分编程类似,再加边界积分。endk=n1;n1=n2;n2=n3;n3=k;%轮换坐标将值赋入3阶主子矩阵中endendM=T(1:na,1:na);%求有限元方程的右端项f=X;%场源函数G=zeros(na,1);forn=1:neln1=NE(1,n);n2=NE(2,n);n3=NE(3,n);s=abs((X(n2)-X(n1))*(Y(n3)-Y(n1))-(X(n3)-X(n1))*(Y(n2)-Y(n1)))/2;fork=1:3ifn1<=naG(n1)=G(n1)+(2*f(n1)+f(n2)+f(n3))*s/12;%f在单元上为线性差值时场域单元的积分公式endn4=n1;n1=n2;n2=n3;n3=n4;%轮换坐标标endendF=M\G;%求解方程得结果NNV=zeros(Imax+1,Jmax+1);fi=zeros(ndm,1);fi(1:na)=F(1:na);fi(na+1:ndm)=V;forj=0:Jmaxfori=0:Imaxn=NN(i+1,j+1);ifn<=0n=na+1;endNNV(i+1,j+1)=fi(n);endendfigure(2)imagesc(NNV);%画解函数的平面图X1=zeros(1,Imax+1);Y1=zeros(1,Jmax+1);fori=1:Imax+1X1(i)=(i-1)*X0;endfori=1:Jmax+1Y1(i)=(i-1)*Y0;endfigure(3)surf(X1,Y1,NNV');%画解函数的曲面图%以下是结果的输出fid=fopen('','w');fprintf(fid,'\n*********有限元法求解三角形区域上Possion方程的结果**********\n\n');L=[1:ndm]';fprintf(fid,'\n\n节点编号坐标分量x坐标分量yu(x,y)的值\n\n');fori=1:ndmfprintf(fid,'%8d%%%\n',L(i),X(i),Y(i),fi(i));endfclose(fid);functiondomain_tri%画求解区域xy=[01;0-1;10];A=zeros(3,3);A(1,1)=2;A(1,2)=-1;A(1,3)=-1;A(2,2)=2;A(2,1)=-1;A(2,3)=-1;A(3,3)=2;A(3,2)=-1;A(3,1)=-1;A=sparse(A);figure(1);gplot(A,xy);function[X,Y,NN,NE]=setelm_tri(Imax,Jmax)%给节点和三角形单元编号,并设定节点坐标%定义一些全局变量globalndmnelna%I1I2J1J2ImaxJmax分别描述网线纵向和横向数目的变量%XY表示节点坐标%NN描述节点编号%NE描述各单元局部节点编号与总体编号对应的矩阵%ndm总节点数%nel单元数%na表示不含边界的节点数nlm=Imax*Jmax;dx=1/Imax;dy=1/Jmax;X=nlm:1;Y=nlm:1;NN=zeros(Imax+1,Jmax+1);n1=0;forj=3:Jmax/2fori=2:j-1n1=n1+1;NN(i,j)=n1;%X=i列,Y=j行处节点X(n1)=(i-1)*dx;Y(n1)=-1+(j-1)*dy;endendk=Jmax/2+1;forj=Jmax/2+1:Jmax-1%三角形区域上下两部分节点坐标分别求k=k-1;fori=2:kn1=n1+1;NN(i,j)=n1;X(n1)=(i-1)*dx;Y(n1)=1+(j-Jmax-1)*dy;endendna=n1;%不含边界节点数forj=Jmax+1:-1:Jmax/2+1%降序n1=n1+1;NN(1,j)=n1;X(n1)=0;Y(n1)=1+(j-Jmax-1)*dy;endforj=Jmax/2:-1:1n1=n1+1;NN(1,j)=n1;X(n1)=0;Y(n1)=-1+(j-1)*dy;end%fori=2:Imax+1n1=n1+1;NN(i,i)=n1;X(n1)=(i-1)*dx;Y(n1)=-1+(i-1)*dy;endK=0;fori=Imax:-1:2K=K+2;n1=n1+1;NN(i,i+K)=n1;X(n1)=(i-1)*dx;Y(n1)=1+(i+K-Jmax-1)*dy;end%以上四个循环为对边界节点进行编号ndm=n1;NE=zeros(3,2*ndm);n1=0;forj=3:Jmax/2fori=2:j-1n1=n1+1;NE(1,n1)=NN(i,j);NE(2,n1)=NN(i-1,j+1);NE(3,n1)=NN(i-1,j);n1=n1+1;NE(1,n1)=NN(i,j);NE(2,n1)=NN(i,j+1);NE(3,n1)=NN(i-1,j+1);endendk=Jmax/2+1;forj=Jmax/2+1:Jmax-1k=k-1;fori=2:kn1=n1+1;NE(1,n1)=NN(i,j);NE(2,n1)=NN(i-1,j+1);NE(3,n1)=NN(i-1,j);n1=n1+1;NE(1,n1)=NN(i,j);NE(2,n1)=NN(i,j+1);NE(3,n1)=NN(i-1,j+1);endend%内部节点对应左上角正方形的两个三角形单元,上左,左上fori=2:Imaxn1=n1+1;NE(1,n1)=NN(i,i);NE(2,n1)=NN(i-1,i);NE(3,n1)=NN(i-1,i-1);n1=n1+1;NE(1,n1)=NN(i,i);NE(2,n1)=NN(i-1,i+1);NE(3,n1)=NN(i-1,i);n1=n1+1;NE(1,n1)=NN(i,i);NE(2,n1)=NN(i,i+1);NE(3,n1)=NN(i-1,i+1);end%下斜边界节点要对应三个单元,上左,左上,左下n1=n1+1;NE(1,n1)=NN(Imax+1,Imax+1);NE(2,n1)=NN(Imax,Imax+1);NE(3,n1)=NN(Imax,Imax);%右顶点的左下n1=n1+1;NE(1,n1)=NN(Imax+1,Imax+1);NE(2,n1)=NN(Imax,Imax+2);NE(3,n1)=NN(Imax,Imax+1);%右顶点的左上K=0;fori=Imax:-1:2K=K+2;n1=n1+1;NE(1,n1)=NN(i,i+K);NE(2,n1)=NN(i-1,i+K+1);NE(3,n1)=NN(i-1,i+K);end%右上边界的左上nel=n1;%此时n1值为总的单元个数求解偏微分方程function[c,f,s]=pdefun(x,t,u,du)c=[1;1];f=[*du(1);*du(2)];temp=u(1)-u(2);s=[-1;1].*(exp*temp)-exp*temp));functionu0=pdeic(x)function[pa,qa,pb,qb]=pdebc(xa,ua,xb,ub,t)%a表示左边界,b表示右边界pa=[0;ua(2)];qa=[1;0];pb=[ub(1)-1;0];qb=[0;1];clx=0::1;t=0::2;m=0;sol=pdepe(m,@pdefun,@pdeic,@pde
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026广东中山市黄圃镇新地村民委员会公益性岗位招聘3人考试参考试题及答案解析
- 2026江西投资集团全资子公司招聘1人考试备考题库及答案解析
- 2026湖北恩施州宣恩贡水融资担保有限公司招聘测试考试备考试题及答案解析
- 2026年度哈尔滨市第一专科医院公开招聘编外合同制工作人员51人笔试备考题库及答案解析
- 2026湖北宜昌市宜都市清泉农村供水有限公司招聘专业技术人员5人笔试备考试题及答案解析
- 2026四川广安武胜县嘉陵水利集团有限公司招聘工作人员1人考试备考试题及答案解析
- 2026年福建泉州晋江兆瑞建设有限公司公开招聘2名工作人员考试备考题库及答案解析
- 2026江苏南京江北新区泰山小学后勤人员招聘1人笔试备考题库及答案解析
- 2026广东中山大学肿瘤防治中心中心泌尿外科尧凯教授课题组自聘技术员招聘1人考试备考试题及答案解析
- 2026年安徽省选调生招录(700人)考试参考试题及答案解析
- 飞行营地建设项目可行性研究报告
- 2025-2030中国溶剂染料行业消费状况及竞争策略分析报告
- 急诊科脑出血课件
- 电大专科水利水电工程水法规与行政执法试题及答案
- 安全生产管理机构人员配备表
- 非职业一氧化碳中毒课件
- 保定市道路野生地被植物资源的调查与分析:物种多样性与生态功能的探究
- smt车间安全操作规程
- JJF 2254-2025戥秤校准规范
- 2.3.2中国第一大河长江
- 强制医疗活动方案
评论
0/150
提交评论