- 在线时间
- 3 小时
- 最后登录
- 2017-9-30
- 注册时间
- 2017-9-27
- 听众数
- 4
- 收听数
- 1
- 能力
- 0 分
- 体力
- 6 点
- 威望
- 0 点
- 阅读权限
- 10
- 积分
- 3
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 1
- 主题
- 1
- 精华
- 0
- 分享
- 0
- 好友
- 4
升级   60% 该用户从未签到 - 自我介绍
- Mathematica初学者
 |
萌新求助如何求解一个非线性方程组:4 s/ D# T( }$ q9 f/ v: d# r
! K- F* M9 e+ E( F; [8 p/ m* a$ L
求助大神,我要解的非线性方程组不是规范的,无法直接套用NDSolve,也没有在Help中查到处理方法。原因是微分方程组中有一项表达式需要再解一个方程才能得到,具体的:
! `& i0 E+ r$ d& K' @/ `" h( O; d) u9 ]- b' |7 K# U* z$ H/ q
NDSolve[{ EIS'[t] == (segma[t] + f[EIS[t]]/(str*omega))*str*
7 i! p$ c- D' C2 o7 ^9 q5 t omega,
7 V& S0 g# c; G3 s7 h) @2 S* B segma'[t] ==
. D3 Z0 G3 H0 ]9 l5 [" e shear*str -
( A( F& F9 k. W( g9 l+ M 1/(str*omega)*Df[EIS[t]]*EIS'[t],EIS[0] == -4.842, segma[0] == 0,}, {EIS, segma}, {t, 0,
1 g, q3 m+ }$ A! f) v r8 w 10}]
Y+ G: ^& S( }% [1 D9 G. h以上是我想要求解的微分方程,形式很简单。其中各个函数除了f[EIS]以外均有直接的表达式。而f[EIS]需要由以下表达式得到:
' Q5 N) P: a; `" A, ^4 Q6 I, {8 u9 x# h6 R& A! J
f[EIS_] := 6 X( ]$ H" z& Q: k" `! \( @
Re[Coef /.
9 ~ `0 ~0 p8 ]* O FindRoot[
) b( k+ \" I+ A1 L$ R Integrate[P[EA, EIS, Coef], {EA, 0, Infinity}] == 1, {Coef, 1}]];. g% J$ }- B! J1 a
也就是f[EIS]每一点的值都需要解一个上述的方程。! O: C. ^" v% l- k B. _: R
& X7 G% ]0 f- p! G
* J0 F7 `& g- B0 d+ }! I4 ]9 R$ J2 ], N
程序报错是求解f[EIS]时得不到数值无法进行。请问这样的情况应该怎么处理呢?我也尝试了将f[EIS]也作为一个方程放入NDSolve中求解微分代数方程,但是也无法得到结果。
, H- F l! T. ?) g0 }( D' b: z: Z0 L; u3 q# l* r. H
( v ~, Q. ^/ t* s" g/ D
X& U( |6 _4 }" `9 J! q; D$ d
十分感谢大神帮助
! ^: f: ]2 J; i: c
! v2 i# r7 k4 s- @1 R1 c
* k5 R F7 k9 U+ c( _3 s: v1 O |
zan
|