求救:mathematica解一个微分方程组并画图
来源:学生作业帮 编辑:搜搜考试网作业帮 分类:数学作业 时间:2024/08/01 05:55:14
求救:mathematica解一个微分方程组并画图
![](http://img.wesiedu.com/upload/0/96/09686d64ad344d5d4426661070fa4060.jpg)
将v=0.9代入后
![](http://img.wesiedu.com/upload/e/19/e1994fbd22c1df496ff19aa987aec703.jpg)
求救.拜谢!
![](http://img.wesiedu.com/upload/0/96/09686d64ad344d5d4426661070fa4060.jpg)
将v=0.9代入后
![](http://img.wesiedu.com/upload/e/19/e1994fbd22c1df496ff19aa987aec703.jpg)
求救.拜谢!
![求救:mathematica解一个微分方程组并画图](/uploads/image/z/17062646-14-6.jpg?t=%E6%B1%82%E6%95%91%EF%BC%9Amathematica%E8%A7%A3%E4%B8%80%E4%B8%AA%E5%BE%AE%E5%88%86%E6%96%B9%E7%A8%8B%E7%BB%84%E5%B9%B6%E7%94%BB%E5%9B%BE)
用NDSolve函数,需给出边界条件:
v = 0.9;
a = NDSolve[{Theta'[
z] == -(v - (1 - v) (2. Cos[Theta[z]] + Cos[Theta[z]]^2))/R[z],
R'[z] == -1./Tan[Theta[z]], Theta[10] == 10, R[10] == 10}, {Theta,
R}, {z, -10, 10}]
Plot[Evaluate[{Theta[z], R[z]} /. a], {z, -10, 10}]
蓝色是Theta的曲线,红色是R的曲线:
再问: 膜拜大神。可不可以问一下这个Theta的单位是弧度还是度啊?
再答: 是弧度的,mathematica里面的三角函数默认都是用弧度的,比如Sin[Pi]的值是0.
再问: 为什么把初始条件换一下方程就解不出了。
其实我想画出这样的图。已知条件是z=0时的R和Theta角。不同的线是对应不同的v值。![](http://img.wesiedu.com/upload/3/e1/3e1cf6ac15c751ebcd3f15162df6604e.jpg)
再答: Clear["Global`*"];
a = Table[
NDSolve[{R[z]*
Theta'[z] == -(v - (1 - v) (2 Cos[Theta[z]] + Cos[Theta[z]]^2)),
Tan[Theta[z]]*R'[z] == -1, Theta[1] == 1, R[1] == 1}, {R,
Theta}, {z, -1, 1.5}], {v, 0.8, 0.9, 0.05}]
p = ParametricPlot[{{R[z], Theta[z]}, {-R[z], Theta[z]}} /. a, {z, -1,
1}]
将Plot改成ParametricPlot,我只能帮你到这里了,我不太理解这个问题的本质,so...
v = 0.9;
a = NDSolve[{Theta'[
z] == -(v - (1 - v) (2. Cos[Theta[z]] + Cos[Theta[z]]^2))/R[z],
R'[z] == -1./Tan[Theta[z]], Theta[10] == 10, R[10] == 10}, {Theta,
R}, {z, -10, 10}]
Plot[Evaluate[{Theta[z], R[z]} /. a], {z, -10, 10}]
蓝色是Theta的曲线,红色是R的曲线:
![](http://img.wesiedu.com/upload/1/42/1427a7da3c206f0d709bf57720ac3316.jpg)
再问: 膜拜大神。可不可以问一下这个Theta的单位是弧度还是度啊?
再答: 是弧度的,mathematica里面的三角函数默认都是用弧度的,比如Sin[Pi]的值是0.
再问: 为什么把初始条件换一下方程就解不出了。
![](http://img.wesiedu.com/upload/8/57/8578a89d273aa00bad124c6d1c9a0f74.jpg)
![](http://img.wesiedu.com/upload/3/e1/3e1cf6ac15c751ebcd3f15162df6604e.jpg)
再答: Clear["Global`*"];
a = Table[
NDSolve[{R[z]*
Theta'[z] == -(v - (1 - v) (2 Cos[Theta[z]] + Cos[Theta[z]]^2)),
Tan[Theta[z]]*R'[z] == -1, Theta[1] == 1, R[1] == 1}, {R,
Theta}, {z, -1, 1.5}], {v, 0.8, 0.9, 0.05}]
p = ParametricPlot[{{R[z], Theta[z]}, {-R[z], Theta[z]}} /. a, {z, -1,
1}]
![](http://img.wesiedu.com/upload/6/36/636c5b482bf1ad8720bd80f08e3d71b8.jpg)