| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4669 人关注过本帖
标题:怎样修改下面的MATLAB程序实现每一步迭代结果都显示并且迭代次数也显示
只看楼主 加入收藏
冰越
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2016-3-19
结帖率:0
收藏
 问题点数:0 回复次数:0 
怎样修改下面的MATLAB程序实现每一步迭代结果都显示并且迭代次数也显示
逐次松弛迭代法
跪求大神们
怎样修改下面的MATLAB程序实现每一步迭代结果都显示并且迭代次数也显示
function [ x , k ,index] = SOR( A ,b ,ep ,w,it_max);
A=[8 -3 2;4 11 -1;2 1 4];
b=[20 33 12]';
ep=1e-5
if nargin<5
    it_max=100;
end
if nargin<4
    w=1.25;
end
if nargin<3
    ep=1e-10;
end
n=length(A);
k=0;
x=zeros(n,1);
y=zeros(n,1);
index=1;
while 1
    y=x;
    for i=1:n
        z=b(i);
        for j=1:n
            if j~=i
                z=z-A(i,j)*x(j);
            end
        end
        if abs(A(i,i))<1e-10|k==it_max
            index=0;
            return;
        end
        z=z/A(i,i);
        x(i)=(1-w)*x(i)+w*z;
    end
    if norm(y-x,inf)<ep
        break;
    end
    k=k+1;
end
搜索更多相关主题的帖子: function 
2016-03-26 16:24
快速回复:怎样修改下面的MATLAB程序实现每一步迭代结果都显示并且迭代次数也显示 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014013 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved