QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3081|回复: 3
打印 上一主题 下一主题

求助:关于分块矩阵的还原,为什么实行不了

[复制链接]
字体大小: 正常 放大

1

主题

2

听众

35

积分

升级  31.58%

该用户从未签到

自我介绍
20100103重要的日子
跳转到指定楼层
1#
发表于 2009-12-17 20:17 |只看该作者 |正序浏览
|招呼Ta 关注Ta
%运用Jacobi迭代拟合出来的u关于x和y的矩阵* X9 o* E: h+ x9 G
function J=jac(A,b,u0,eps)
- l, g& `% C# v) c1 U& ~$ Cif nargin==3
* Y. G, t: ]- B  [    eps=1.0e-8+ a- l+ d! G% k- d
elseif nargin<3
2 U" }2 h" v+ h, r$ v# J$ N    'error'. h3 k) D! Z6 h
    return
+ Z6 i6 c. x. a& e1 R( Y7 F9 k- Wend2 y) ?0 J8 e0 \7 e( \7 |

5 r9 m7 s+ v* E5 |& }8 ?%定义内部节点矩阵u0
! z: i+ h" T$ z5 B6 l; F1 Z0 `h=1;k=1;+ @) l% `* j9 D+ x# z
x=0:h:17;y=0:k:10;
& S" B4 @  k: B3 i: Ee=length(x)-2;f=length(y)-2;: @6 Q6 G3 c7 g8 G: `  e! B
u=zeros(e,f);9 e/ L( m, g; A; l# |5 [
u0=u;
7 b6 y/ V: d" P7 @
. H7 i  I- ^$ w/ W( s. H( Q6 W%定义外部节点p
" K2 }: }+ N% H# n2 H9 tp=zeros(e+2,e+2);
* `" e- [! @' B% J" e! j8 |p(1,1:f+2)=0;p(e+2,1:f+2)=0;       ' p# }$ i" f  q8 V9 `
p(1:e+2,1)=100;p(1:e+2,f+2)=100;7 S- ~9 C% G4 _* R; I1 w! o
6 c, i  ^0 K. ^) e- d$ d0 @$ [3 g
%定义系数矩阵A; l8 q3 y, s/ f; C
A=zeros(e*f,e*f);& d2 R2 T8 j  G% [2 `" F* I& n' p
B=mat2cell(A,ones(e*f/e,1)*e,ones(e*f/e,1)*e);: y3 M0 c" G! B# F
d1=ones(e,1);d2=ones(e-1,1);" F) k$ U2 b2 a8 t+ @6 Y8 c
M=4*diag(d1)-diag(d2,1)-diag(d2,-1);
% q& U! u( q7 W2 m( V$ \N=-eye(e);1 R* M) K$ A% K+ @* z* I; F  u! b5 @1 q
B{1,1}=M;B{e,e}=M
4 [: T/ @0 }3 j. K3 Pfor i=2:e-10 f6 w: z0 E# T9 n- K, e% U
    B{i,i}=M;B{i-1,i}=N;B{i+1,i}=N4 f; l1 J8 k: i, s
end( v) o3 ^$ r- S9 k
A=cell2mat(B);  
; |% ]6 }& M* _+ W6 a这里总是显示
9 j4 C; O$ r+ B% b??? function J=jac(A,b,u0,eps)
2 |" Q' d& P0 F1 e8 o9 ?    |3 r% f& y2 I, K3 ?7 R6 D
Error: Function definitions are not permitted at the prompt or in scripts.
/ ?6 w6 b0 _+ K

$ V( x' d( [) j- S5 y%定义b
9 c0 @- x7 ~* j1 n0 Yb=ones(e*f,1);
+ t* v9 S' o4 D" _' {. E, d& ufor i=1:e
' y2 ?* H2 C: [    for j=1:f
  r: D1 J/ Y0 ?* {        b(i+j)=p(i,j+1)+p(i+1,j)+p(i+2,j+1)+p(i+1,j+2)
; s) q) Q/ m0 W; T, Y2 q  I+ r0 e    end
+ l5 f6 b7 ~' s, uend
8 G, j9 h0 c2 l# w9 y* B%运用Jacobi迭代法计算
0 M( M" h, c+ i- [: sD=diag(diag(A));# s$ a" h, r+ Q, Q# F
D=inv(D);
2 A( m+ Z( H3 U% |L=tril(A,-1);
" {: {; W0 T8 K: N6 U1 p, J6 sU=triu(A,1);
, `5 F- w) f3 WB=-D*(L+U);+ H0 q3 \9 J9 O, p
f=D*b;
$ ?7 i% F5 T$ OJ=B*u0+f;
% J) V! c' q& g1 h: H, |while norm(J-u0)>=eps, A, i3 M, ?2 S: A. A
x0=J;7 t$ Z4 y; p0 u+ P  a
J=B*u0+f;2 _3 A4 S4 P' S# G
end
5 |+ d1 F8 o0 ?! B+ {5 @8 ureturn
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
madio        

3万

主题

1312

听众

5万

积分

  • TA的每日心情
    奋斗
    2024-7-1 22:21
  • 签到天数: 2014 天

    [LV.Master]伴坛终老

    自我介绍
    数学中国站长

    社区QQ达人 邮箱绑定达人 优秀斑竹奖 发帖功臣 风雨历程奖 新人进步奖 最具活力勋章

    群组数学建模培训课堂1

    群组数学中国美赛辅助报名

    群组Matlab讨论组

    群组2013认证赛A题讨论群组

    群组2013认证赛C题讨论群组

    回复

    使用道具 举报

    BenCam 实名认证       

    9

    主题

    6

    听众

    89

    积分

    该用户从未签到

    自我介绍
    200 字节以内
    不支持自定义 Discuz! 代码
    回复

    使用道具 举报

    1

    主题

    2

    听众

    35

    积分

    升级  31.58%

    该用户从未签到

    自我介绍
    20100103重要的日子
    自己顶一下,拜托哪位高手指点一下,纠结这个矩阵的还原,想了好多方法还是不行~~实在想不出哪里出错了
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-8-25 20:44 , Processed in 0.457116 second(s), 73 queries .

    回顶部