QQ登录

只需要一步,快速开始

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

求助:差分方程在matlab的实现问题

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

23

主题

5

听众

215

积分

升级  57.5%

  • TA的每日心情
    开心
    2012-5-4 18:47
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    自我介绍
    200 字节以内

    不支持自定义 Discuz! 代码

    新人进步奖

    跳转到指定楼层
    1#
    发表于 2009-12-24 15:14 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    为算一道题我写了如下程序:(保存为nongdu.m)
    " V" k, c0 V. F) z8 Yfunction z=nd(a,v,n,r,rv)1 t% |) f! I  Y3 j) P
    A=a;$ a4 X; g7 M1 P* K: ]$ q
    V=v;
    ( q" ?% z7 ]( L, e, `& W( q5 kN=n;/ Y+ x( C4 |8 I9 M9 ^9 g
    R=r;
    1 ^: B" K" @! m9 ~4 }- s# E% HRV=rv;$ o8 p3 E% q' J* i/ a, P4 H/ i
    for k=1:N: e* `7 R1 k" a9 }5 u
        A(k)=A(k+1)+(R*RV+V*A(k))*RV/(V^2);
    4 J, J) r8 ^9 q1 v! r    z(1,k)=k;; A$ X$ [( q6 \$ j8 ~
        z(2,k)=A(k);
    $ K6 J8 G7 w0 g6 n% iend;  `4 W' U& h  J" y. H1 z1 w
    然后z=nd(0.2,200*10^4,360,0.02,10^4);% g7 Y0 z& q5 G6 Y! P, u5 w5 `
    系统显示:
    ; Z7 C0 z. P& Z- U3 ?/ r! ^??? Attempted to access A(2); index out of bounds because numel(A)=1.
    / P/ b1 W* f! z" j! a( Z3 y, WError in ==> nongdu at 8
    / v% m, s* \" V. Z    A(k)=A(k+1)+(R*RV+V*A(k))*RV/(V^2);$ E( @% z  z1 r, a

    3 P% Q& w& _& K: i1.请问为什么啊?8 Y5 S! I8 H( D% w8 M3 n- q* B
    2.请问差分方程在matlab里边要怎么写啊,我以前写的时候都是用一维的矩阵写的,如A(n,1)。, C5 ^/ ^3 E6 S/ |8 j
    看书上直接可以写成A(k),到底应该如何呢?
    4 e0 \4 V% b+ M- w- l3能不能有些教程或者实际的程序啊,当例子。
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    leo12ok 实名认证       

    3

    主题

    4

    听众

    556

    积分

    升级  85.33%

  • TA的每日心情
    擦汗
    2012-6-14 16:31
  • 签到天数: 1 天

    [LV.1]初来乍到

    自我介绍
    200 字节以内

    不支持自定义 Discuz! 代码

    新人进步奖

    function z=nd(a,v,n,r,rv)% ]! ~4 l1 b( p4 A
    A=a;
    - X! S; u/ A% lV=v;
    # a" Q* d7 f, CN=n;
    , U6 V, W/ _) o" C2 i9 b4 R+ eR=r;
    : {$ [+ A8 }, k: V' Y1 _RV=rv;& f1 _, r6 F0 V& s) |& ~
    for k=1:N
    ! D. N1 @/ U. k4 q# d0 q    A(k+1)=A(k)-(R*RV+V*A(k))*RV/(V^2);
    + `3 \' [" U: x% u    z(1,k)=k;
    ; m7 Z3 L" F2 y/ M. ^    z(2,k)=A(k);2 Q' H& }, P- E5 S
    end
    7 A' S: m3 |0 p4 J1 R; q
    5 Q/ V8 j* \/ ~" }+ W不知道这样可不可以。
    回复

    使用道具 举报

    5

    主题

    2

    听众

    806

    积分

    小学生

    升级  51.5%

  • TA的每日心情
    开心
    2012-2-11 15:11
  • 签到天数: 23 天

    [LV.4]偶尔看看III

    自我介绍
    乐观、自信

    新人进步奖

    群组中国矿业大学数学建模协会

    群组数学趣味、游戏、IQ等

    我试了一下,这样改一下就行了:
    : S+ Y9 L: c0 Y6 |+ k  Afunction z=nd(a,v,n,r,rv)
    2 `* }& ]% {2 u6 l" UA(1)=a;
    5 O+ H; f, x; n# v, M2 RV=v;6 m7 ?$ `9 ^3 d2 H$ w; f
    N=n;
    , \- x+ }* W0 R2 [% ?R=r;
    : l/ }" |8 p2 bRV=rv;
    & {' Z# Y& O# ?1 F( R" nfor k=1:N% n4 l# F& _1 Z5 [& [5 s% \
        A(k+1)=A(k)-(R*RV+V*A(k))*RV/(V^2);
    0 B( X  k0 F' h  y; `% R    z(1,k)=k;
      \" O- Z9 a% H* r    z(2,k)=A(k);3 ]- _; l  z  q3 y8 D+ P* G
    end
    回复

    使用道具 举报

    23

    主题

    5

    听众

    215

    积分

    升级  57.5%

  • TA的每日心情
    开心
    2012-5-4 18:47
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    自我介绍
    200 字节以内

    不支持自定义 Discuz! 代码

    新人进步奖

    回复

    使用道具 举报

    1341

    主题

    738

    听众

    2万

    积分

    数学中国总编辑

  • TA的每日心情

    2016-11-18 10:46
  • 签到天数: 206 天

    [LV.7]常住居民III

    超级版主

    社区QQ达人 邮箱绑定达人 元老勋章 发帖功臣 新人进步奖 原创写作奖 最具活力勋章 风雨历程奖

    群组2011年第一期数学建模

    群组第一期sas基础实训课堂

    群组第二届数模基础实训

    群组2012第二期MCM/ICM优秀

    群组MCM优秀论文解析专题

    1.出现error:A(k)=A(k+1)+(R*RV+V*A(k))*RV/(V^2);因为你的等式右边出现了A(k),这属于非法赋值8 l/ _9 M: f! L# W/ y- T
    所以应该修改成:A(k+1)=A(k)-(R*RV+V*A(k))*RV/(V^2)
    ' T9 ^- T' ]/ Q- a2.不论是写成A(k),还是A(k,1),只要达到能表示向量的目的就行了,因为差分方程研究的是一个向量,而非一个矩阵! G0 E# O, W0 r; H% M5 m
    3.例子:这个就比较多了,根据差分方程的不同,主要改变的是上面的函数中的条件式子,但要始终注意赋值的合法性。
    回复

    使用道具 举报

    23

    主题

    5

    听众

    215

    积分

    升级  57.5%

  • TA的每日心情
    开心
    2012-5-4 18:47
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    自我介绍
    200 字节以内

    不支持自定义 Discuz! 代码

    新人进步奖

    厚积薄发 发表于 2009-12-25 12:08 ' u6 F- G0 s3 p: v: M- Y" ?, j+ F
    1.出现error:A(k)=A(k+1)+(R*RV+V*A(k))*RV/(V^2);因为你的等式右边出现了A(k),这属于非法赋值
    + I. m7 l; h5 `& o& W0 B所以应该修 ...

    5 {9 z5 G$ Q% C2 P谢谢谢  我终于明白了
    回复

    使用道具 举报

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

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2026-7-12 14:36 , Processed in 0.400863 second(s), 80 queries .

    回顶部