萌新求助关于数值解得函数如何调用的问题
mathematica吧
全部回复
仅看楼主
level 3
Foreve胡牛 楼主
目前还没码好代码就随手举个例子吧:
NDSolve[
{
x''[t] == -y'[t],
y''[t] == x'[t],
x[0] == 0, y[0] == -1, x'[0] == 1, y'[0] == 0
},
{x[t], y[t]},
{t, 0, 10}
]
比如简单的带电粒子在均匀磁场中运动的模型,我用数值求解解得它的运动方程(这是前提)。如果我想画出它的运动轨迹,应该怎样将解得值变成已知量调用在新的函数里——比如动能表达式——然后将这个新的函数画出图像;甚至更进一步地,做出一个关于t的轨迹动态图(就是体系随t的空间分布变化)——就像几何画板中能做到的那样,请问这是mathematica常规操作吗?
2017年11月01日 16点11分 1
level 7
引用的话:
x = x[t] /.
NDSolve[{x''[t] == -y'[t], y''[t] == x'[t], x[0] == 0, y[0] == -1,
x'[0] == 1, y'[0] == 0}, {x[t], y[t]}, {t, 0, 10}];
轨迹动态图的话,你去帮助文档看看Manipulate这个函数?
2017年11月02日 03点11分 2
谢了! 感觉可以再把ndsolve赋给a作为/。后的一坨,是吗?
2017年11月02日 03点11分
@Foreve胡牛 啊,没太明白你。。总之你可以去帮助文档上看看/.相关的例子
2017年11月02日 07点11分
回复 幽谷de清泉 :已经全部解决了,第一次用mma编程,已经把一个挺复杂的微分方程组数值解出来了,画了图,做了动画,正在做庞加莱截面😄
2017年11月03日 00点11分
level 3
Foreve胡牛 楼主
楼主的问题自己解决了,以前的调用问题出在倒数第三行,把2个{t}都去掉,后面就可以比较方便的调用、求某点值了
2017年11月03日 00点11分 3
1