数学建模社区-数学中国
标题:
求助:如何将FindRoot[]的结果转化成数值形式?
[打印本页]
作者:
famxpencil
时间:
2011-3-18 17:29
标题:
求助:如何将FindRoot[]的结果转化成数值形式?
如题,FindRoot[]的结果是{t -> **}的形式,如何将其中的数值**提出呢?
8 F+ f4 ?( n: U4 l: q9 |
' F! a g1 d. z; B
此题背景为,想研究一个超越方程的某个参数变化时对根的影响.我最初的想法是
" X1 ]% D: x, t' E" r' {
t9 Y" \! ~5 E, U, Z& C" p
tab = Table[ { FindRoot[ (a COMPLICIATE expr) == 0, {t, t0} ], x }, {x, xmin, xmax, di} ];
. F0 l! V0 O. Z( P8 [& K/ ~
( o1 x6 @4 f, i' ^% f& b
ListPlot[ tab ]
; }8 {9 v. V O. Y! E3 Y7 K8 V
( | J a: V3 _) h& I. J
可是ListPlot[]是无法识别{t -> **}形式的参数的.有什么函数可以将{t -> **}中的数值提出呢?或者,有没有什么更好的办法可以绕开这些表达式呢?
: J# L' f5 b& E7 _
( K! D5 j/ z. ?" n/ f" [: E+ |" k
不胜感激.
作者:
princekarate
时间:
2011-3-23 12:38
可以试试 expr
/.
rules
: y* |0 W G4 h$ T O ?+ a8 Q# j
比如这里的话就是
- z& Y8 j% j9 G8 |
tab = Table[ { FindRoot[ (a COMPLICIATE expr) == 0, {t, t0} ], x }, {x, xmin, xmax, di} ];
) c& @) U: ^8 a$ u/ ]" G2 O
x/.%
4 A) d( N" c/ P6 o( I* q' ]* Y" P
ListPlot[x]
3 k$ D x$ @% G8 t& [' j8 d! e7 d
" x( N% h% s: M
如果不行的话可以参考一下documentation center里面这个指令的具体使用
作者:
famxpencil
时间:
2011-3-26 22:30
感谢啊,终于解决了
. B' a* m9 J, d) o6 G: @4 q) ]" H
基于楼上的提示,我改成:
* A9 W5 T4 M/ e, j, r3 T
tab = Table[ { t /. FindRoot[ (a COMPLICIATE expr) == 0, {t, t0} ], x }, {x, xmin, xmax, di} ];
, }! M) N9 P& K2 Y( o
终于是运行出来了,呵呵.
4 i) V; _4 N! P4 T2 m4 |
再次感谢!
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5