QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 6069|回复: 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)
    - o: ]- k$ `3 r, Gfunction z=nd(a,v,n,r,rv)
    - v9 c# t2 ~+ Y/ ]6 eA=a;3 e2 u. K- F. p+ I: ~
    V=v;; j* w7 o% k( H
    N=n;
    8 p' O" N' n# [% x6 Q3 P' K* iR=r;3 J% X9 R+ i+ a7 S& W
    RV=rv;* t" I  g" c& ~) W
    for k=1:N) K5 w$ J4 i' x
        A(k)=A(k+1)+(R*RV+V*A(k))*RV/(V^2);# d. k5 N- p8 `% k  a7 M  p( o! Z
        z(1,k)=k;. K+ i& J" K1 `: v8 C. q9 _, S
        z(2,k)=A(k);1 L, S5 `: G2 f) c3 g8 W/ P: `
    end;4 F4 s* D$ Z6 E& _2 X
    然后z=nd(0.2,200*10^4,360,0.02,10^4);( h7 Z5 A# K. A
    系统显示:
    " ?7 W+ q: ?  \; v+ q, u0 \??? Attempted to access A(2); index out of bounds because numel(A)=1.
    ( X+ L1 ^% @$ D! z& s& `5 g& cError in ==> nongdu at 8/ C  v' b" j1 w0 o, I
        A(k)=A(k+1)+(R*RV+V*A(k))*RV/(V^2);$ p7 c" T- x+ p4 b+ W7 c0 _; x$ K6 z
    & ~# R8 G) \0 a$ n5 \
    1.请问为什么啊?4 z" Q8 F" r: l! a
    2.请问差分方程在matlab里边要怎么写啊,我以前写的时候都是用一维的矩阵写的,如A(n,1)。
    # w8 S  V# Q$ Q7 Q5 s看书上直接可以写成A(k),到底应该如何呢?/ N- v$ z! R# u* J6 e
    3能不能有些教程或者实际的程序啊,当例子。
    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)
    7 n2 h6 @) D1 i3 W1 p9 VA=a;
    6 {# W' v$ r! QV=v;0 W+ {3 W5 a. a' V5 U5 ?  r
    N=n;
    3 n1 |. L! K9 p" }) PR=r;  C  {+ R9 y. ]) [6 ]8 E9 \( w
    RV=rv;
    ' z  H$ A! G% q& xfor k=1:N. {& h! e# V/ c
        A(k+1)=A(k)-(R*RV+V*A(k))*RV/(V^2);
      g7 s8 ^0 v8 _2 l' m    z(1,k)=k;: a  x. L; w) Z2 c* l  ~
        z(2,k)=A(k);
    2 C+ U8 e7 g0 n6 E, Gend
    8 V1 @* Z7 |; [+ o8 j4 ]  i+ T
    8 q$ F6 _, P6 I& W- i9 `% b不知道这样可不可以。
    回复

    使用道具 举报

    5

    主题

    2

    听众

    806

    积分

    小学生

    升级  51.5%

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

    [LV.4]偶尔看看III

    自我介绍
    乐观、自信

    新人进步奖

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

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

    我试了一下,这样改一下就行了:# J2 B* Q( p$ `4 f9 P* c
    function z=nd(a,v,n,r,rv)5 {- E3 S. Z- Y# V( Z' Q& y
    A(1)=a;5 S) V3 A( d- m) A% I
    V=v;
    , [9 ~# K4 A/ iN=n;: W0 ]. g0 i8 q
    R=r;
    7 }- y0 c+ C" f1 t8 d) Q0 \, e6 eRV=rv;
    6 q/ w! E0 y( ~: Z2 F! U' _; pfor k=1:N$ Q, z3 k! m* ^* s
        A(k+1)=A(k)-(R*RV+V*A(k))*RV/(V^2);
    + F7 M! i  @) ^1 S; ]! [3 _2 A    z(1,k)=k;5 C( i8 \! s3 U5 o$ N8 w% C* Q4 q4 v
        z(2,k)=A(k);* F* a  [( Y2 ~0 S7 ?
    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),这属于非法赋值. k; m& k, O4 x% o
    所以应该修改成:A(k+1)=A(k)-(R*RV+V*A(k))*RV/(V^2)
    ' a9 T+ P' ]5 R# m1 P4 \2.不论是写成A(k),还是A(k,1),只要达到能表示向量的目的就行了,因为差分方程研究的是一个向量,而非一个矩阵) V3 j  P' B  Q) R$ ]. u
    3.例子:这个就比较多了,根据差分方程的不同,主要改变的是上面的函数中的条件式子,但要始终注意赋值的合法性。
    回复

    使用道具 举报

    23

    主题

    5

    听众

    215

    积分

    升级  57.5%

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

    [LV.2]偶尔看看I

    自我介绍
    200 字节以内

    不支持自定义 Discuz! 代码

    新人进步奖

    厚积薄发 发表于 2009-12-25 12:08
    + O& H2 b+ h: n  U- R" o1.出现error:A(k)=A(k+1)+(R*RV+V*A(k))*RV/(V^2);因为你的等式右边出现了A(k),这属于非法赋值2 P# J% H8 w1 |* B
    所以应该修 ...

    2 R% i0 N# H+ W: F+ O1 N谢谢谢  我终于明白了
    回复

    使用道具 举报

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

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2026-7-10 08:12 , Processed in 0.515148 second(s), 80 queries .

    回顶部