高斯-赛德尔迭代法matlab程序.doc

高斯-赛德尔迭代法matlab程序.doc

ID:59286435

大小:18.50 KB

页数:1页

时间:2020-09-06

高斯-赛德尔迭代法matlab程序.doc_第1页
资源描述:

《高斯-赛德尔迭代法matlab程序.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、disp('划分为M*M个正方形')M=5%每行的方格数,改变M可以方便地改变剖分的点数u=zeros(M+1);%得到一个(M+1)*(M+1)的矩阵disp('对每个剖分点赋初值,因为迭代次数很高,所以如何赋初值并不重要,故采用对列线性赋值。')disp('对边界内的点赋初值并使用边界条件对边界赋值:')forj=1:M-1fori=1:M-1u(i+1,j+1)=100*sin(pi/M*j)/M*(M-i);%对矩阵(即每个刨分点)赋初值endendfori=1:M+1u(1,i)=100*sin(pi*(i-1)/M);%

2、使用边界条件对边界赋值u(1,M+1)=0;endutic%获取运行时间的起点disp('迭代次数为N')N=6%迭代次数,改变N可以方便地改变迭代次数disp('n为当前迭代次数,u为当前值,结果如下:')forn=1:Nforp=2:Mi=M+2-p;forj=2:Mu(i,j)=0.25*(u(i,j-1)+u(i+1,j)+u(i-1,j)+u(i,j+1));%赛德尔迭代法endendn%输出nu%输出uenddisp('所用的时间:')t=toc%获取算法运行需要的时间[x,y]=meshgrid(0:1/M:1,0:1

3、/M:1);z=u(1,:);fora=2:M+1z=[z;u(a,:)];%获取最终迭代的结果,幅值给z,z的值代表该点的点位值endmesh(x,y,z)%绘制三维视图以便清楚地显示结果mesh(x,y,z,'FaceColor','white','EdgeColor','black')%绘制三维视图以便清楚地显示结果

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。