24小时热门版块排行榜    

查看: 717  |  回复: 3
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

duinichixin

金虫 (著名写手)

[求助] 小弟求教几个程序-关于迭代法的(多谢) 已有1人参与

小弟编写了Table4.1SOR中的r=0.01及n=8的程序,现有如下几个疑问:1、我运行出it为8,cpu=0.042,w(exp)=1.02,为什么与作者不一样?2、作者终止条件是F范数,我的是2范数,应该怎么修改?3.当n=64时出现‘Out of memory. Type HELP MEMORY for your options.’请问是我程序太复杂了吗?
注:test为确定w(exp)程序,SOR为调用程序,test2为根据w(exp)计算it程序,各位大神不吝赐教。
test.m:
n=8;
r=0.01;
a=ones(n,1);
b=ones(n-1,1);
I=eye(n);
MM=2*diag(a)-diag(b,-1)-diag(b,1);
N=0.5*diag(b,-1)-0.5*diag(b,1);
A=MM+2*r*N+100*I/(n+1);
B=A;
X=rand(n,n);
F=A*X+X*B;
E=kron(I,A)+kron(B',I);
b=F(;
%x=E\b;
x0=b;
ww=0.01:0.01:1.99;
D=diag(diag(E));    %求E的对角矩阵
L=-tril(E,-1);      %求E的下三角矩阵
U=-triu(E,1);       %求E的上三角矩阵
for i=1:length(ww)
    w=ww(i);
    B=inv(D-L*w)*((1-w)*D+w*U);
p(i)=max(max(abs(eig(B))));
%plot(ww,p);
[x,n1]=SOR(E,b,x0,w);
mm(i)=n1;
end
plot(ww,mm);
Xe=reshape(x,n,n);
errror=norm((Xe-X),2)

SOR.m:
function [x,n1]=SOR(E,b,x0,w,eps,M)

if nargin==4
    eps=1.0e-6;
    M=2000;
elseif nargin<4
    error
    return
elseif nargin==5
    M=200;
end
if(w<=0 || w>=2)    %收敛条件要求
    error;
    return;
end
D=diag(diag(E));    %求E的对角矩阵
L=-tril(E,-1);      %求E的下三角矩阵
U=-triu(E,1);       %求E的上三角矩阵
B=inv(D-L*w)*((1-w)*D+w*U);
f=w*inv((D-L*w))*b;
x=B*x0+f;
n1=1;               %迭代次数
%迭代过程
while norm(x-x0)>=eps
    x0=x;
    x=B*x0+f;
    n1=n1+1;
    if(n1>=M)
        disp('Warining:迭代次数太多,可能不收敛!');
        return;
    end
end

test2.m
w=1.02
n=8;
r=0.01;
a=ones(n,1);
b=ones(n-1,1);
I=eye(n);
M=2*diag(a)-diag(b,-1)-diag(b,1);
N=0.5*diag(b,-1)-0.5*diag(b,1);
A=M+2*r*N+100*I/(n+1);
B=A;
X=rand(n,n);
F=A*X+X*B;
E=kron(I,A)+kron(B',I);
b=F(;
%x=E\b;
x0=b;
[x,n1]=SOR(E,b,x0,w)
Xe=reshape(x,n,n);
errror=norm((Xe-X),2)

小弟求教几个程序-关于迭代法的(多谢)
1.png


小弟求教几个程序-关于迭代法的(多谢)-1
2.png
回复此楼
辉煌在拼搏之后
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

匿名

用户注销 (职业作家)

Matlab专家

感谢参与,应助指数 +1
本帖仅楼主可见
3楼2015-01-11 19:20:45
已阅   申请程序强帖   回复此楼   编辑   查看我的主页
查看全部 4 个回答

duinichixin

金虫 (著名写手)

b=F(  );括号里是冒号,谢谢,表示把矩阵拉长
辉煌在拼搏之后
2楼2015-01-11 18:39:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

duinichixin

金虫 (著名写手)

引用回帖:
3楼: Originally posted by yanze at 2015-01-11 19:20:45
是你内存不够了,不是程序太复杂

也就是说这个程序在我电脑上没法运行了吗?终止准则||R(k)||/||R(0)||<=10^-6在F范数下不知道怎么编译,我用的是2范数
辉煌在拼搏之后
4楼2015-01-11 19:55:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 2019年青年基金涵评意见,大家看看几个A,几个B? +9 Tide man 2026-08-11 9/450 2026-08-12 20:30 by 微不足道士
[基金申请] 不应该看fileCode +5 且听虎啸 2026-08-12 6/300 2026-08-12 16:26 by Tide man
[基金申请] FileCode能看出啥? +8 要乐观耀哥 2026-08-10 21/1050 2026-08-12 16:08 by 云上清扬
[论文投稿] 职称评审,求友友推荐见刊最快的期刊 +4 工厂打螺丝 2026-08-08 4/200 2026-08-12 09:18 by hansi2025
[基金申请] 是这周出结果还是下周出结果? +3 yuleib84 2026-08-11 3/150 2026-08-11 21:53 by jnhyjjm
[基金申请] 小木虫上这么多卖论文的,真有人买论文么?感觉没必要啊 +8 Tide man 2026-08-10 9/450 2026-08-11 20:39 by beefly
[基金申请] 有时候,自然基金真的不能太认真 (我的申报经验) +3 majunge000 2026-08-11 4/200 2026-08-11 20:13 by lch2012
[基金申请] 帮忙看看fileCode +7 wwncly 2026-08-10 13/650 2026-08-11 19:36 by 冰心玉壶晴
[基金申请] 为什么网上很多人说本周 12号出结果 +6 瞬息宇宙 2026-08-10 7/350 2026-08-11 19:25 by Tide man
[基金申请] 听说今天filecode变了 +26 布布和一二 2026-08-06 49/2450 2026-08-11 13:18 by WH3796
[基金申请] 确定了,国自然21号放榜 +6 布布和一二 2026-08-10 7/350 2026-08-10 19:15 by 2000zf36392
[基金申请] 静等基金结果 +5 gjjjzhong 2026-08-10 16/800 2026-08-10 17:19 by Tide man
[基金申请] 面上项目filecode邪修 +5 西山十月 2026-08-09 7/350 2026-08-10 07:32 by 仁砚薪传
[基金申请] filecode与中标关系的预测 +5 布布和一二 2026-08-07 5/250 2026-08-09 16:15 by 袁向阳007
[基金申请] 关于filecode,很负责任的告诉大家 +6 爱看书的可乐 2026-08-08 7/350 2026-08-08 22:13 by a_niu
[基金申请] 关于豆爷回答的JTJC与%2F数量 +5 yang182083 2026-08-06 7/350 2026-08-08 18:29 by zhanghaozhu
[基金申请] 化学口download_prp&amp;fileCode的固定段好像这几天一直没变,有变的大神么? +3 Tide man 2026-08-07 4/200 2026-08-07 22:39 by Tide man
[基金申请] 固定端突然变了,今天 +6 archvillain 2026-08-06 10/500 2026-08-07 16:03 by 医学老男孩
[基金申请] 大家散了吧,后缀研究没有意义,别浪费时间了,过好目前的每一天,不要焦虑 +5 Tide man 2026-08-06 7/350 2026-08-07 13:11 by 医学老男孩
[基金申请] filecode +8 布布和一二 2026-08-06 11/550 2026-08-06 20:41 by tangpu318
信息提示
请填处理意见