- 在线时间
- 3 小时
- 最后登录
- 2017-9-30
- 注册时间
- 2017-9-27
- 听众数
- 4
- 收听数
- 1
- 能力
- 0 分
- 体力
- 6 点
- 威望
- 0 点
- 阅读权限
- 10
- 积分
- 3
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 1
- 主题
- 1
- 精华
- 0
- 分享
- 0
- 好友
- 4
升级 60% 该用户从未签到
- 自我介绍
- Mathematica初学者
|
萌新求助如何求解一个非线性方程组:9 Q# ?' j! G' t
, M! a7 a& A- E' d8 T求助大神,我要解的非线性方程组不是规范的,无法直接套用NDSolve,也没有在Help中查到处理方法。原因是微分方程组中有一项表达式需要再解一个方程才能得到,具体的:. u" T' m: x. B! g8 v0 C
8 m# {* r0 M8 t# ZNDSolve[{ EIS'[t] == (segma[t] + f[EIS[t]]/(str*omega))*str*
/ s' Y; _! U8 K3 }/ t n' P( f omega,
: R7 ^4 d( I+ `1 y* [6 y4 A2 e. ] segma'[t] ==
- ^8 v# \( C, Y% [+ o shear*str - 5 d9 m( W$ k. R l
1/(str*omega)*Df[EIS[t]]*EIS'[t],EIS[0] == -4.842, segma[0] == 0,}, {EIS, segma}, {t, 0,
( D' \/ j5 S" d 10}]
% x/ R. K& s3 r! L/ f以上是我想要求解的微分方程,形式很简单。其中各个函数除了f[EIS]以外均有直接的表达式。而f[EIS]需要由以下表达式得到:6 D1 Q' \* B: N
. Y5 r; G" l( O i8 E
f[EIS_] := 9 k; t" d' X2 I- J0 w
Re[Coef /. . [- y" h/ I/ a4 V/ p' \1 a
FindRoot[
) c, r. F1 `7 Z/ \8 q! Y- D Integrate[P[EA, EIS, Coef], {EA, 0, Infinity}] == 1, {Coef, 1}]];
* [. D* @( _$ o# G! Z1 i& y也就是f[EIS]每一点的值都需要解一个上述的方程。5 p p4 B/ G" q
* S) f0 v, L# |
3 w4 T+ f+ ]: ^( h6 D" @- s% P; a2 n: r+ o- ?7 j$ G
程序报错是求解f[EIS]时得不到数值无法进行。请问这样的情况应该怎么处理呢?我也尝试了将f[EIS]也作为一个方程放入NDSolve中求解微分代数方程,但是也无法得到结果。
% ]) L; P8 \1 }
4 f( [$ p- o( G3 r
) d" F% C5 }" @/ w, Z% |: t: b) U$ {# Y! @2 w* _# W8 }3 Q7 Y4 U
十分感谢大神帮助' u' g& i; _( [6 ^( P
% | G9 k; f1 R
) v" q/ b& F0 W% j- K. d3 L
|
zan
|