QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 6072|回复: 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)6 v. H6 k  x& t" I) t
    function z=nd(a,v,n,r,rv)% H: v8 c0 }' Y! \
    A=a;
    " P8 D( p. e. B1 |V=v;
    1 i' |1 f4 r6 i+ F) }6 [" xN=n;/ P7 A5 a0 l$ N) j% H+ E& X, a1 ]7 h+ b
    R=r;: t8 E( i2 k! J0 `1 l
    RV=rv;) q& W. d; B$ X& W' |
    for k=1:N4 ?/ z/ X0 Y5 {; \3 U' N9 U: S' u
        A(k)=A(k+1)+(R*RV+V*A(k))*RV/(V^2);+ y" S5 n: ~( c
        z(1,k)=k;; `6 p$ _1 @8 t  Y; T" O
        z(2,k)=A(k);" a7 G- ?4 w  i5 e4 S
    end;
    1 w4 x; T: P3 N' b2 Y然后z=nd(0.2,200*10^4,360,0.02,10^4);
    & [3 x' A0 C# F系统显示:/ Y1 P$ l; h; t& ~1 ?- Z! s0 ]5 l
    ??? Attempted to access A(2); index out of bounds because numel(A)=1.! L$ }& ]$ S: A1 ~
    Error in ==> nongdu at 8; u7 z. q# N$ u6 ], s' F
        A(k)=A(k+1)+(R*RV+V*A(k))*RV/(V^2);
    / n9 ?) N, r- h2 a) y. c$ l* @/ `: n$ C" S& J
    1.请问为什么啊?
    6 [4 ~- T/ u1 U$ p, D) A+ f2.请问差分方程在matlab里边要怎么写啊,我以前写的时候都是用一维的矩阵写的,如A(n,1)。
    3 y% H( V1 V: s8 W# ]/ E; p- ~看书上直接可以写成A(k),到底应该如何呢?
    ' Q( b& A' a, X2 j- d3能不能有些教程或者实际的程序啊,当例子。
    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)
    5 N3 C7 X3 r1 F0 j( F" A- k' K' aA=a;% O( l! n+ q! |/ l: X: d- N4 a
    V=v;
    ' r# p, f( J6 D3 g% Y+ O5 TN=n;0 R/ w, G% w. F% M  c0 {. E
    R=r;" u# I# c. {6 _; w0 w) ~6 H  V
    RV=rv;
    6 u4 Y/ m0 [7 R" g5 |' Jfor k=1:N
    # j, A0 g' c# p2 H& i3 Q    A(k+1)=A(k)-(R*RV+V*A(k))*RV/(V^2);
    & W) g9 Q. O/ N( [* H  n2 h/ w" z: K    z(1,k)=k;
    0 `1 V+ I# P; ~6 i    z(2,k)=A(k);& |% w: @$ Z! A: L5 B+ C) c
    end
    9 l0 k* z. v: G  m% b( V6 j4 {
    ! A) ^; d/ G  V7 e3 o' e不知道这样可不可以。
    回复

    使用道具 举报

    5

    主题

    2

    听众

    806

    积分

    小学生

    升级  51.5%

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

    [LV.4]偶尔看看III

    自我介绍
    乐观、自信

    新人进步奖

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

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

    我试了一下,这样改一下就行了:) t* h& a! B* p# T* m9 z0 J
    function z=nd(a,v,n,r,rv)* B+ @2 d# ?+ h" @+ `2 s
    A(1)=a;
    4 k/ P6 C! t4 G5 }+ t) O7 }V=v;0 I% ]! M3 r+ I8 B
    N=n;
    1 @( P5 L$ o+ t# r4 f1 MR=r;
    4 m% ~5 `7 M1 M0 C9 sRV=rv;
    # \/ _% ^& ~1 p: O8 \; G+ F( {for k=1:N7 t3 X5 M7 |2 s  P
        A(k+1)=A(k)-(R*RV+V*A(k))*RV/(V^2);
    " w8 s; m' e: c$ N+ k    z(1,k)=k;) x: A6 ~1 z* o, @/ N
        z(2,k)=A(k);
    5 q' b& }! ~5 _- m( X3 X: jend
    回复

    使用道具 举报

    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),这属于非法赋值
    1 Y4 |0 l7 p6 r所以应该修改成:A(k+1)=A(k)-(R*RV+V*A(k))*RV/(V^2)- f! W8 ~6 S- _2 ^
    2.不论是写成A(k),还是A(k,1),只要达到能表示向量的目的就行了,因为差分方程研究的是一个向量,而非一个矩阵
    - N4 _# O. H8 q. ?5 i3 Q* Q, K; l3.例子:这个就比较多了,根据差分方程的不同,主要改变的是上面的函数中的条件式子,但要始终注意赋值的合法性。
    回复

    使用道具 举报

    23

    主题

    5

    听众

    215

    积分

    升级  57.5%

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

    [LV.2]偶尔看看I

    自我介绍
    200 字节以内

    不支持自定义 Discuz! 代码

    新人进步奖

    厚积薄发 发表于 2009-12-25 12:08   c; \5 _' J- D& E6 R
    1.出现error:A(k)=A(k+1)+(R*RV+V*A(k))*RV/(V^2);因为你的等式右边出现了A(k),这属于非法赋值
    ( q  {! m( F. y! O所以应该修 ...

    ) C5 e$ W. {7 k! |谢谢谢  我终于明白了
    回复

    使用道具 举报

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

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2026-7-11 15:06 , Processed in 1.321726 second(s), 80 queries .

    回顶部