- 在线时间
- 3 小时
- 最后登录
- 2017-9-30
- 注册时间
- 2017-9-27
- 听众数
- 4
- 收听数
- 1
- 能力
- 0 分
- 体力
- 6 点
- 威望
- 0 点
- 阅读权限
- 10
- 积分
- 3
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 1
- 主题
- 1
- 精华
- 0
- 分享
- 0
- 好友
- 4
升级   60% 该用户从未签到
- 自我介绍
- Mathematica初学者
 |
萌新求助如何求解一个非线性方程组:
) Y7 l. t) B" v( ? W% ~' f0 k/ p5 t
求助大神,我要解的非线性方程组不是规范的,无法直接套用NDSolve,也没有在Help中查到处理方法。原因是微分方程组中有一项表达式需要再解一个方程才能得到,具体的:
. i% t9 }& c! {/ ~( m% S
& z6 c4 P4 H n! ^, B7 e3 YNDSolve[{ EIS'[t] == (segma[t] + f[EIS[t]]/(str*omega))*str*% e/ |6 B0 Z3 ~
omega,$ f0 r. d* P- q) G4 j
segma'[t] == : g' ~" P/ `. P! t9 f7 {0 U
shear*str -
1 [7 _5 E2 M; B2 V+ t 1/(str*omega)*Df[EIS[t]]*EIS'[t],EIS[0] == -4.842, segma[0] == 0,}, {EIS, segma}, {t, 0,
& Y; @/ j& w( Y4 T 10}] x+ N& J. z, J8 v3 [4 O+ j8 r
以上是我想要求解的微分方程,形式很简单。其中各个函数除了f[EIS]以外均有直接的表达式。而f[EIS]需要由以下表达式得到:
/ s- _" W9 a: H$ r r( [- R/ Y, O3 v3 J, f
f[EIS_] :=
, E; O/ k. N2 R @+ J9 N0 ]+ ?, \ Re[Coef /. : ?4 c1 d3 Z( k$ y: V2 j$ o, g
FindRoot[) H. [' |. ? [3 ~2 c" ~/ }
Integrate[P[EA, EIS, Coef], {EA, 0, Infinity}] == 1, {Coef, 1}]];& F9 T' Z& N4 Q5 N4 h! X' L1 x
也就是f[EIS]每一点的值都需要解一个上述的方程。. H- c8 r- |5 J
# H3 W; } w/ ^. V- i" e1 n
( F( r+ y0 ?, v% e* X" o) _" C
- N6 }2 V; [8 h! }( h程序报错是求解f[EIS]时得不到数值无法进行。请问这样的情况应该怎么处理呢?我也尝试了将f[EIS]也作为一个方程放入NDSolve中求解微分代数方程,但是也无法得到结果。. y# ~; L R; N/ ?$ L$ H
G8 i5 x9 l3 C6 I% g' X
! B f ]9 p+ F/ R; Z& d! D* {) L; ~$ @" |. |& b; {% ^0 C& V" Q
十分感谢大神帮助
8 j% `& a6 {$ g3 a# g" a# z* q! P3 n! F$ C
# U, b5 f! j% b |
zan
|