数学建模社区-数学中国

标题: 求助:Mathematica 求解微分方程组 [打印本页]

作者: Magic111    时间: 2017-9-27 08:43
标题: 求助:Mathematica 求解微分方程组
萌新求助如何求解一个非线性方程组:
) @! D1 C$ [2 X6 N  `- M2 G6 M" A( x& x" B
求助大神,我要解的非线性方程组不是规范的,无法直接套用NDSolve,也没有在Help中查到处理方法。原因是微分方程组中有一项表达式需要再解一个方程才能得到,具体的:
! L, L0 p9 t$ J) ~( a6 x8 }) p. w+ c6 d3 L3 D. z
NDSolve[{ EIS'[t] == (segma[t] + f[EIS[t]]/(str*omega))*str*
' `- w9 _' {& ^+ A, h1 a0 I    omega,8 V& p7 H, b. N7 I
  segma'[t] ==
- j- @, X- {: ?+ [* v- B   shear*str -
) {* _: o* Y% q    1/(str*omega)*Df[EIS[t]]*EIS'[t],EIS[0] == -4.842, segma[0] == 0,}, {EIS, segma}, {t, 0,   m# S+ \7 ?! c# N9 F/ L( F  q
  10}]; O! k  j6 q, ~0 L5 C: m. J
以上是我想要求解的微分方程,形式很简单。其中各个函数除了f[EIS]以外均有直接的表达式。而f[EIS]需要由以下表达式得到:- l4 u0 g3 n( Q" T- p+ a2 s2 {8 x% m

2 ~# p" ^* ^! y. r% C6 W! Wf[EIS_] := , p) |7 J6 ?2 F
  Re[Coef /.
! M( ?/ s0 h; o+ _    FindRoot[
' G$ Z& n; Z7 L* i. ~1 c5 O     Integrate[P[EA, EIS, Coef], {EA, 0, Infinity}] == 1, {Coef, 1}]];( d2 W- h2 I  _0 v; Z
也就是f[EIS]每一点的值都需要解一个上述的方程。" N- ~& V8 |- W' m% A" b3 z

, Z. j4 ~" ?8 g3 n) S- V: a( o8 |' j* W

! a: c% n# T; Q程序报错是求解f[EIS]时得不到数值无法进行。请问这样的情况应该怎么处理呢?我也尝试了将f[EIS]也作为一个方程放入NDSolve中求解微分代数方程,但是也无法得到结果。
6 m# k4 e$ [3 L5 w+ F. E
2 z8 ]' P; }8 W# n1 _% u
; Z1 s% d' r% V
, f% M: U* g+ z5 a十分感谢大神帮助
( s1 d5 @9 j! }0 j# h2 s3 G  W! t8 @: j# b) a; I" ^
& R  ?1 k. \# m0 B( {

作者: 有生之莲    时间: 2017-12-21 21:08
泛函就是没办法。。。尝试重新转化处理问题吧/ C5 O7 D  M6 X





欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5