Mathematica中,如何将FindRoot[]的结果转化成数值形式?如题,FindRoot[]的结果是{t -> **}的形式,如何将其中的数值**提出呢?此题背景为,想研究一个超越方程的某个参数变化时对根的影响.我最初的想法

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/29 05:40:07

Mathematica中,如何将FindRoot[]的结果转化成数值形式?如题,FindRoot[]的结果是{t -> **}的形式,如何将其中的数值**提出呢?此题背景为,想研究一个超越方程的某个参数变化时对根的影响.我最初的想法
Mathematica中,如何将FindRoot[]的结果转化成数值形式?
如题,FindRoot[]的结果是{t -> **}的形式,如何将其中的数值**提出呢?
此题背景为,想研究一个超越方程的某个参数变化时对根的影响.我最初的想法是
tab = Table[ { FindRoot[ (a COMPLICIATE expr) == 0,{t,t0} ],x },{x,xmin,xmax,di} ];
ListPlot[ tab ]
可是ListPlot[]是无法识别{t -> **}形式的参数的.有什么函数可以将{t -> **}中的数值提出呢?或者,有没有什么更好的办法可以绕开这些表达式呢?

Mathematica中,如何将FindRoot[]的结果转化成数值形式?如题,FindRoot[]的结果是{t -> **}的形式,如何将其中的数值**提出呢?此题背景为,想研究一个超越方程的某个参数变化时对根的影响.我最初的想法
Manipulate是6.0版才有的新函数.
ListPlot[]是无法识别{t -> **}形式的参数,因此要用/.,也就是:
tab = Table[ { t /.FindRoot[ (a COMPLICIATE expr) == 0,{t,t0} ],x },{x,xmin,xmax,di} ];
ListPlot[ tab ]
这样就行了.
/.是按一定的规则替换的意思.如:
In[1]:= a + b /.{a -> 1}
Out[1]:= 1 + b