数学建模社区-数学中国
标题:
求助:Mathematica 求解微分方程组
[打印本页]
作者:
Magic111
时间:
2017-9-27 08:43
标题:
求助:Mathematica 求解微分方程组
萌新求助如何求解一个非线性方程组:
( K5 |$ u! F; q/ s( i
6 p. w3 O7 c- w2 V
求助大神,我要解的非线性方程组不是规范的,无法直接套用NDSolve,也没有在Help中查到处理方法。原因是微分方程组中有一项表达式需要再解一个方程才能得到,具体的:
1 n6 N4 T- [2 X, h. V7 O$ J# b% K
: b/ X5 c$ n& P I" p* J
NDSolve[{ EIS'[t] == (segma[t] + f[EIS[t]]/(str*omega))*str*
' c1 @) u# }4 u' \
omega,
# }7 ^! Y5 o9 C
segma'[t] ==
8 T: l0 P* t+ l" T
shear*str -
, N& x B* b6 L9 d' k
1/(str*omega)*Df[EIS[t]]*EIS'[t],EIS[0] == -4.842, segma[0] == 0,}, {EIS, segma}, {t, 0,
! L% N) r) R7 o% L5 i" ]* J
10}]
# D @% P* y3 ^5 r2 P
以上是我想要求解的微分方程,形式很简单。其中各个函数除了f[EIS]以外均有直接的表达式。而f[EIS]需要由以下表达式得到:
* I b% v* \7 ~. j
/ o( r5 T- Z$ x2 J2 A
f[EIS_] :=
8 Q$ a! S. b' c
Re[Coef /.
3 ? X# t) g7 O4 r# l6 [
FindRoot[
9 e: B9 `+ `1 n4 W5 n+ o; t
Integrate[P[EA, EIS, Coef], {EA, 0, Infinity}] == 1, {Coef, 1}]];
: u- U/ L4 E; P h
也就是f[EIS]每一点的值都需要解一个上述的方程。
8 {* j- x7 ~3 f" g- L: c5 {; O4 f
; S: L* _6 V1 D* I
) j- v" c( w/ q4 b* b: j
0 u, S2 x7 V+ B( I5 J4 r: C k0 f
程序报错是求解f[EIS]时得不到数值无法进行。请问这样的情况应该怎么处理呢?我也尝试了将f[EIS]也作为一个方程放入NDSolve中求解微分代数方程,但是也无法得到结果。
& ]4 n: _$ {7 d! s- l
9 i+ m" `5 o9 U: l
! c7 @: M0 _+ V& M$ n# z
4 P4 e4 W, w& V' U( e
十分感谢大神帮助
1 U+ i# u o/ }' z1 S( Y# L3 K& n- |
# `5 K8 n! s% l8 S$ X7 E
0 r% Q* K6 L, k$ K& K, S
作者:
有生之莲
时间:
2017-12-21 21:08
泛函就是没办法。。。尝试重新转化处理问题吧
* {4 m/ S8 F$ G! d
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5