数学建模社区-数学中国
标题:
求助:Mathematica 求解微分方程组
[打印本页]
作者:
Magic111
时间:
2017-9-27 08:43
标题:
求助:Mathematica 求解微分方程组
萌新求助如何求解一个非线性方程组:
4 q2 q o& l7 U$ ?# ^4 J5 `
s$ e+ p* j1 {" Z% R4 Q
求助大神,我要解的非线性方程组不是规范的,无法直接套用NDSolve,也没有在Help中查到处理方法。原因是微分方程组中有一项表达式需要再解一个方程才能得到,具体的:
+ Z3 | |2 w V" c/ P
7 a. }8 p& X* U- _4 X5 n6 L# n( y8 [* f
NDSolve[{ EIS'[t] == (segma[t] + f[EIS[t]]/(str*omega))*str*
3 Y' Y: U6 U2 i
omega,
- T( J% k" |& Q) K( d9 c
segma'[t] ==
% ]! Q! s3 s% ~" q: I
shear*str -
. X- W: q% @/ }* U( `9 ?5 b
1/(str*omega)*Df[EIS[t]]*EIS'[t],EIS[0] == -4.842, segma[0] == 0,}, {EIS, segma}, {t, 0,
& b6 f3 U$ I! b2 ~/ O1 D7 }1 N: h
10}]
) _/ z3 C# i' t5 R y5 l
以上是我想要求解的微分方程,形式很简单。其中各个函数除了f[EIS]以外均有直接的表达式。而f[EIS]需要由以下表达式得到:
9 G: y" ?' L3 G# s
+ y+ }* d3 [7 y1 H2 }3 Z0 s
f[EIS_] :=
, ~0 E) P, p( T' O3 E9 L1 x
Re[Coef /.
- \$ [$ v5 H, M" h) J' ~
FindRoot[
7 N; S! u4 C& k: V! `
Integrate[P[EA, EIS, Coef], {EA, 0, Infinity}] == 1, {Coef, 1}]];
3 i0 M- ^7 [6 Y% m0 V; W: ^, Y, b
也就是f[EIS]每一点的值都需要解一个上述的方程。
. n& h/ p, d- J- j
7 k: N0 h' x6 }2 J0 e
: K1 b/ P6 h* t" o5 I! l% Y! B
# x' \8 w- O% A! `1 |7 A& q
程序报错是求解f[EIS]时得不到数值无法进行。请问这样的情况应该怎么处理呢?我也尝试了将f[EIS]也作为一个方程放入NDSolve中求解微分代数方程,但是也无法得到结果。
7 r' s# |3 t- I' F
% f% x) Z1 H u
" |) K( d. X+ \/ Y8 L- A
4 n' b" d+ W: A3 j
十分感谢大神帮助
/ q( P$ A9 N. f' D `- B
$ `+ E0 O7 V4 O+ U" p( w' U U3 _$ v
) f1 g J) d/ b0 W' {
作者:
有生之莲
时间:
2017-12-21 21:08
泛函就是没办法。。。尝试重新转化处理问题吧
5 q4 O4 L+ U5 J
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5