QQ登录

只需要一步,快速开始

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

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

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

1

主题

2

听众

35

积分

升级  31.58%

该用户从未签到

自我介绍
20100103重要的日子
跳转到指定楼层
1#
发表于 2009-12-17 20:17 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
%运用Jacobi迭代拟合出来的u关于x和y的矩阵$ H$ J% E  p0 T3 c: G
function J=jac(A,b,u0,eps)
9 Y( P! w3 e# z# ^if nargin==3* |  z' G+ m3 X* e' I0 m+ j& R
    eps=1.0e-83 \, t; ^* ~* d
elseif nargin<3
* T! J+ f! p1 y1 I* J5 p' O    'error'
9 K1 T" ~% a, R! j2 T- X    return
  p* H& @0 E/ J8 k$ ?6 I! E/ Gend
1 |6 X; m& k& k. b& P5 }1 V+ t$ |& v) F* D+ ~$ N; B
%定义内部节点矩阵u0+ K: t3 U6 A" z' h' ^) P0 {' m, Q
h=1;k=1;! J+ P7 C. e% k) J) V4 E
x=0:h:17;y=0:k:10;% h# ?. }  Z) D2 _
e=length(x)-2;f=length(y)-2;! k8 |  L8 Q5 e
u=zeros(e,f);/ a$ N0 R" g4 [! @$ f! |' l( [1 ~
u0=u;2 f: r6 U7 g* ?, w0 e
  P4 K8 i5 \6 W
%定义外部节点p
0 R7 W* w0 R7 q! Q$ K. Qp=zeros(e+2,e+2);
  a5 ?4 m, g" D7 x/ Mp(1,1:f+2)=0;p(e+2,1:f+2)=0;       . z% g+ A4 U9 _2 E. ]
p(1:e+2,1)=100;p(1:e+2,f+2)=100;
7 ~/ f' J' C# m- G
$ @2 t4 w( A6 _6 D%定义系数矩阵A9 {5 F9 T6 O7 i' E) N' U
A=zeros(e*f,e*f);
% s4 Q4 R/ F) ]4 v& X' YB=mat2cell(A,ones(e*f/e,1)*e,ones(e*f/e,1)*e);1 F  u! r# `; ~7 l2 t' q5 d
d1=ones(e,1);d2=ones(e-1,1);
9 t0 Q# W8 @' e+ D( E: fM=4*diag(d1)-diag(d2,1)-diag(d2,-1);
; T6 A0 c# P# gN=-eye(e);
  f4 Z" z4 j# w! jB{1,1}=M;B{e,e}=M
% c% y7 w- \( [8 ]- Hfor i=2:e-1
7 `* f$ n- `- n2 }$ e9 p! ~    B{i,i}=M;B{i-1,i}=N;B{i+1,i}=N
" l3 A, R! o6 |5 j$ lend
6 i0 F; E' l5 D$ I" i! W2 ^A=cell2mat(B);  3 J% @# ^4 Y8 ?: N
这里总是显示
% q5 o" Q& \2 C" s/ E# _??? function J=jac(A,b,u0,eps)
" d. A0 E2 ?, m- ~    |
& w1 w# Y8 f2 x0 MError: Function definitions are not permitted at the prompt or in scripts.
" o# m7 f3 v4 g2 \1 k2 R3 f9 `7 O

& M3 e* k' T) g" I( M+ g2 \%定义b# v5 j5 h0 `" B5 n8 o
b=ones(e*f,1);- j+ Q( }2 U, {& H' s) f
for i=1:e
9 d: G' u3 j1 I0 V7 m' o, d    for j=1:f
) l1 `. R( p& \4 \7 n. H2 z& _        b(i+j)=p(i,j+1)+p(i+1,j)+p(i+2,j+1)+p(i+1,j+2)
/ k5 V7 i; f! @; f    end
6 Q) ^: E! |/ {7 K9 fend
, s# b" i0 h& j) N/ ~& ]) ]%运用Jacobi迭代法计算
* w2 |; S: [6 k8 s' B8 k. m5 pD=diag(diag(A));
( w5 P3 W( z; r. L4 g1 U  cD=inv(D);! U4 m0 }2 R3 P; S  i: d
L=tril(A,-1);- }/ b0 T% b% }& n3 Y
U=triu(A,1);7 e" s: @# p+ p3 d/ A( k
B=-D*(L+U);' X9 c, K$ S9 V2 O
f=D*b;
. L1 q% |/ J9 A; qJ=B*u0+f;
4 c+ y# B! H' @: y& lwhile norm(J-u0)>=eps' w: w, z5 m& j* \2 P5 Q1 z" {9 J
x0=J;( z8 T* A% r, U' k5 _  @
J=B*u0+f;
& Q- P/ H3 `0 s& oend
/ h. H2 I; H. E7 O6 [1 Z9 preturn
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信

1

主题

2

听众

35

积分

升级  31.58%

该用户从未签到

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

使用道具 举报

BenCam 实名认证       

9

主题

6

听众

89

积分

该用户从未签到

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

使用道具 举报

madio        

3万

主题

1312

听众

5万

积分

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

    [LV.Master]伴坛终老

    自我介绍
    数学中国站长

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

    群组: 数学建模培训课堂1

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

    群组: Matlab讨论组

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

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

    回复

    使用道具 举报

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

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2026-10-10 01:52 , Processed in 0.307351 second(s), 73 queries .

    回顶部