QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 6017|回复: 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)
    ! [8 I# a- L2 {, u+ \( d# M9 gfunction z=nd(a,v,n,r,rv)" Z0 I5 O/ F' Y6 ~8 L
    A=a;! h# g8 U4 B8 z0 \
    V=v;/ F8 h# q) o8 N, P0 [6 f
    N=n;; a- \' Y# c; ~6 A
    R=r;, Q1 Z9 d% q0 A4 Q0 O% R
    RV=rv;
    3 g8 W0 v) `$ N/ S: xfor k=1:N, F8 l" B2 u: M/ {8 [
        A(k)=A(k+1)+(R*RV+V*A(k))*RV/(V^2);9 Q  F7 w! Z9 q: m1 r$ U9 ]: _$ _5 `
        z(1,k)=k;
    5 c/ B# x7 Q- P; B- m: ^8 Z( N) s( z    z(2,k)=A(k);
    % A9 Q8 w0 A! lend;$ [2 p. i) U; v6 m/ P
    然后z=nd(0.2,200*10^4,360,0.02,10^4);
    ) A$ q& H$ K; V1 t# R系统显示:
    # z3 T+ e0 P1 A! a9 W??? Attempted to access A(2); index out of bounds because numel(A)=1.
    4 y1 [. g9 f! o8 A* }Error in ==> nongdu at 8" L& N$ N% K1 R
        A(k)=A(k+1)+(R*RV+V*A(k))*RV/(V^2);0 ?+ i" I' H6 ^7 G
    : A; L: v2 M* O# a! i7 p! q9 h
    1.请问为什么啊?
    7 D; e% Q1 l7 j* c6 y7 I2.请问差分方程在matlab里边要怎么写啊,我以前写的时候都是用一维的矩阵写的,如A(n,1)。
    ! R# G6 S$ q  D+ y; C; a看书上直接可以写成A(k),到底应该如何呢?
      E7 z2 ]& D' ?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 _/ ]8 q# z4 Q1 T' W) F0 }1 b
    A=a;' g. m# R: K% b  R; ^4 I
    V=v;; |% V, O/ e& f
    N=n;
    % B8 W& C( k& p6 @R=r;. _; x) `0 Y/ i5 Q% q, x
    RV=rv;
    6 ?% ?- A# }9 l; @8 l& L. P  wfor k=1:N
    $ N9 R, H" P' J. q( l7 M; K    A(k+1)=A(k)-(R*RV+V*A(k))*RV/(V^2);6 C0 s7 B. g0 @$ m' J/ Y( N( w; ?% C1 t; K
        z(1,k)=k;
    7 \9 C2 q! R5 C$ l: Y- h  G% |    z(2,k)=A(k);
    ) |/ n- X, |: D. W+ ?5 v: G$ m+ Xend9 r$ ]+ E4 C5 g0 \- u* I1 N

      \: x3 _/ _6 J: N4 M/ N不知道这样可不可以。
    回复

    使用道具 举报

    5

    主题

    2

    听众

    806

    积分

    小学生

    升级  51.5%

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

    [LV.4]偶尔看看III

    自我介绍
    乐观、自信

    新人进步奖

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

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

    我试了一下,这样改一下就行了:
    & y/ w. H/ @  u8 a0 {! Y4 |function z=nd(a,v,n,r,rv)7 L  P5 ?; Q, @( e% z, c
    A(1)=a;
    5 n5 K& A+ Q% J" Z) kV=v;
    9 n$ Q+ W6 S" |: g) `, e' W; KN=n;
    9 n7 O, ?3 N$ }, e0 lR=r;
    , `1 [: y& f: w8 KRV=rv;
    / C* s3 S7 r2 \7 t8 M' Cfor k=1:N
    " Y7 l' m& f. M3 f* |0 M    A(k+1)=A(k)-(R*RV+V*A(k))*RV/(V^2);6 ?, Q, b6 d! W  \  P' a6 i( d: v9 y1 `
        z(1,k)=k;* P3 G7 z7 s$ F2 A) X
        z(2,k)=A(k);* r. |! x  ]. B" w' W5 S9 ]+ D6 a
    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),这属于非法赋值
    6 M$ W- ?; H% [所以应该修改成:A(k+1)=A(k)-(R*RV+V*A(k))*RV/(V^2)
    6 v( o  x5 B- ?) i2.不论是写成A(k),还是A(k,1),只要达到能表示向量的目的就行了,因为差分方程研究的是一个向量,而非一个矩阵' @9 Y: |5 V6 Z- x
    3.例子:这个就比较多了,根据差分方程的不同,主要改变的是上面的函数中的条件式子,但要始终注意赋值的合法性。
    回复

    使用道具 举报

    23

    主题

    5

    听众

    215

    积分

    升级  57.5%

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

    [LV.2]偶尔看看I

    自我介绍
    200 字节以内

    不支持自定义 Discuz! 代码

    新人进步奖

    厚积薄发 发表于 2009-12-25 12:08
    ( L3 b1 y# t2 O0 W1.出现error:A(k)=A(k+1)+(R*RV+V*A(k))*RV/(V^2);因为你的等式右边出现了A(k),这属于非法赋值
    , ~  w: f" {* T% o所以应该修 ...

    7 T8 b6 C8 i, \! C8 {0 U谢谢谢  我终于明白了
    回复

    使用道具 举报

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

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2026-4-12 18:18 , Processed in 0.461229 second(s), 79 queries .

    回顶部