找回密码
 注册
关于网站域名变更的通知
查看: 347|回复: 2
打印 上一主题 下一主题

ode45('fun',[],[]) 中的函数如何调用外部参数

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-10-18 11:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
我想利用ode45函数求解一个方程组,方程组中一个方程的系数的参数来自函数外部,不管怎样都无法调用,请问应该如何解决?function dy=fun(t,y,a): {; ^2 x& t, r2 L0 C5 a
dy=zeros(2,1);
5 M3 c" Y" R) ~( o" S' j( _1 K; Vdy(1)=sin(y(2));
. G7 q" K7 R* h" q2 wdy(2)=a(4)+a(3)*t+a(2)*t.^2+a(1)*t.^3;  k. O+ S; B* r, _" _0 T! u8 _

. a; p, f3 p7 L/ ?' W$ p% \; u$ }+ W3 B
[t,f]=ode45('fun',[t0 tf],[y0 yf],a);
- |4 h% b/ C3 m9 h' }运行一直出错
# z" h+ M7 S* i* y9 g! e: [5 P( I5 {, I错误提示:3 G! a4 z9 R6 f  @$ ~8 r; \/ l
Attempted to access a(4); index out of bounds because numel(a)=0.- [8 t  N+ n5 C' O/ |6 p6 ~# }
  • TA的每日心情
    开心
    2022-1-29 15:05
  • 签到天数: 2 天

    [LV.1]初来乍到

    2#
    发表于 2022-10-18 13:13 | 只看该作者
    试试' g7 L+ `- C: [* z2 T8 \, Q
    [t,f]=ode45(@(t,y)fun(t,y,a),[t0 tf],[y0 yf]);

    点评

    我现在想用ode45求解一个 微分方程 p=1; a=0.826; s=a*cos(p*t); s1=0.001*cos(1*t); x1=s1+sqrt(0.01)*randn(length(t)); yprime=; 这里面如果将s1改为一串序列(从外面调用一串数据) 而不是用公式表  详情 回复 发表于 2022-10-18 13:17

    该用户从未签到

    3#
     楼主| 发表于 2022-10-18 13:17 | 只看该作者
    someone 发表于 2022-10-18 13:13! Z4 A( v( i) t& Y
    试试
    & k% e# N' e1 [$ B" X: k[t,f]=ode45(@(t,y)fun(t,y,a),[t0 tf],[y0 yf]);
    2 H& x3 Y0 j4 H& K- O7 \' U
    我现在想用ode45求解一个  微分方程  - I9 ^1 i9 Q7 ]9 w3 M! E& V
    p=1;
    * v; n2 R8 M& ?' K/ r. p; \+ j7 A, Ya=0.826;* g1 o* V% F# }
    s=a*cos(p*t);
    % ?1 k: N$ u) U" p: Cs1=0.001*cos(1*t);$ ^0 _9 \4 {# e) K. M+ i( O8 C
    x1=s1+sqrt(0.01)*randn(length(t));2 ^. d3 O# U# y0 L1 i
    yprime=[p*y(2);p*(-0.5*y(2)+y(1)^1-y(1)^3+s+x1)];
    5 y# ^" P8 B8 A$ }这里面如果将s1改为一串序列(从外面调用一串数据)  而不是用公式表示  还能不能求解呢?要怎么改呢2 {& g+ p; j% a5 d
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-6-19 20:41 , Processed in 0.093750 second(s), 24 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表