质点沿粗糙球面滑下的命运(补充内容后重发)



美国《物理教师》(Physics Teachers)杂志研究过质点从球面顶部以初速度$v_0$下滑的问题,得到了下滑到不同位置处质点的速度,并指出,质点最终可能会脱离球面,也可能会停在球面上。发生这两种情形具体条件是什么?文章没有给出,我们探究一下这个问题。

根据牛顿第二定律,有

\begin{equation} mg\cos\theta - N = mv^2/R=mR\dot{\theta}^2 \label{an} \end{equation}

\begin{equation} mg\sin\theta - \mu N = mR\ddot{\theta} \label{at} \end{equation}

质点不脱离球面,要求$N\ge 0$。显然,$v_

将\eqref{an}式对$\theta$求导,得

\begin{equation} \begin{split} \frac{dN}{d\theta}=&-mg\sin\theta-2mR\dot{\theta}\frac{d\dot{\theta}}{d\theta}\\ =&-mg\sin\theta-2mR\dot{\theta}\frac{d\dot{\theta}}{dt}\frac{dt}{d\theta}\\ =&-mg\sin\theta-2mR\ddot{\theta} \end{split} \label{dN} \end{equation}

将\eqref{at}式代入上式,得

\begin{equation} \begin{split} &\frac{dN}{d\theta}=-mg\sin\theta-2(mg\sin\theta - \mu N)\\ &\frac{dN}{d\theta}-2\mu N=-3mg\sin\theta \end{split} \label{dNd} \end{equation}

这是一个一阶线性非齐次微分方程,解之得

\begin{equation} \begin{split} N(\theta)=&e^{\int_0^{\theta}2\mu d\theta}\left[\int_0^{\theta}e^{\int_0^{\theta}-2\mu d\theta}(-3mg\sin\theta)d\theta+C \right]\\ =&Ce^{2\mu \theta}-3mge^{2\mu \theta}\int_0^{\theta}e^{-2\mu \theta}\sin\theta d\theta \\ =&Ce^{2\mu \theta}+3mg\frac{2\mu\sin\theta+\cos\theta}{1+4\mu^2} \\ =&(mg-mv_0^2/R)e^{2\mu \theta}+3mg\frac{2\mu\sin\theta+\cos\theta-e^{2\mu \theta}}{1+4\mu^2} \\ =&N(0)e^{2\mu \theta}+3mg\frac{2\mu\sin\theta+\cos\theta-e^{2\mu \theta}}{1+4\mu^2} \end{split} \label{N} \end{equation}

\begin{equation} n(\theta)=\frac{N(\theta)}{mg}=(1-V_0^2)e^{2\mu \theta}+3\frac{2\mu\sin\theta+\cos\theta-e^{2\mu \theta}}{1+4\mu^2} \label{n} \end{equation}

其中$V_0=v_0/\sqrt{gR}$。

由\eqref{an}式和\eqref{N}式,可得质点速率

\begin{equation} \begin{split} V(\theta)=&\frac{v}{\sqrt{gR}}=\sqrt{\cos\theta-\frac{N}{mg}} \\ =&\sqrt{\cos\theta-(1-V_0^2)e^{2\mu \theta}-3\frac{2\mu\sin\theta+\cos\theta-e^{2\mu \theta}}{1+4\mu^2}} \end{split} \label{V} \end{equation}

光滑球面

如果球面光滑,$\mu=0$,代入\eqref{n}式,得

\begin{equation} n(\theta)=3\cos\theta-2-V_0^2 \label{Nf=0} \end{equation}

将$\mu=0$代入\eqref{V}式,得速度随位置的变化关系

\begin{equation} V(\theta)=\sqrt{V_0^2+2(1-\cos\theta)}\gt 0 \label{Vf=0} \end{equation}

显然,质点不会停止,不可能停留在球面上。

质点可能会脱离球面,$N(\theta)=0$,得脱离球面的位置为

\begin{equation} \theta=\arccos\left(\frac{V_0^2+2}{3}\right) \label{offf=0} \end{equation}

粗糙球面

质点的命运有三种情况:停驻在球面上、从球面上脱离、滑至球面底部。

根据《物理教师》(_Physics Teachers_)文章的讨论,质点不会下滑至$\theta=\pi/2$处。

因此质点最终会停驻在球面上或从球面上脱离。发生这两种情况的界线是什么呢?

当质点初速度$V_0=v_0/\sqrt{gR}$比较小时,质点会停驻在球面上,停驻位置$\theta_{\mathrm {on}}$可由$V(\theta_{\mathrm {on}})=0$得到。当质点停驻在$\theta_{\mathrm {on}}$处时,质点的静摩擦力与重力的球面切向分量$mg\sin\theta_{\mathrm {on}}$平衡。增大质点的初速度$V_0$,质点停驻的位置$\theta_{\mathrm {on}}$也将增大。$V_0$为何值时,质点刚刚好能停驻在球面上,或刚刚好要脱离球面?

当$V_0$增大到某一值$V_{0,\mathrm c}$时,质点停驻时静摩擦力等于滑动摩擦力,此情形下质点恰能停驻在球面上。$V_0$再稍大一点,质点最终将脱离球面。

质点恰好停驻在球面上,停驻的位置可以根据力的平衡得到

\begin{equation} \theta_{\mathrm c}=\arctan \mu \label{theta-c} \end{equation}

由\eqref{V}式,知要使质点恰好停驻在球面上,初速度应满足如下关系

\begin{equation} V_{0,\mathrm c}=\sqrt{\frac{4\mu^2-2+2e^{-2\mu\arctan\mu}\sqrt{1+\mu^2}}{1+4\mu^2}} \label{V0-c} \end{equation}

以上推理还可以这样进行。

质点在球面上运动时,$n(\theta) \ge 0$,由\eqref{n}式,$V_0 \ge 1$时,质点将从球面顶部直接飞出。当$V_

质点停驻在球面上或从球面上脱离,这两种情况的界线如图1所示。



质点停驻在球面上或从球面上脱离的分界线

给定$\mu$,如果初速度$V_0 \le V_{0,\mathrm c}$,质点将停驻在球面上,停驻位置由$V(\theta)=0$给出,$V(\theta)$见\eqref{V}式。如果初速度$V_0 \gt V_{0,\mathrm c}$,质点将脱离球面,脱离位置由$n(\theta)=0$给出,$n(\theta)$见\eqref{n}式。



质点停驻位置

上图为质点从球面下滑最终停驻在球面上的位置,曲线终结于$\theta=\arctan \mu$处。

下图为质点从球面下滑最终脱离球面的位置,曲线终结于$V_0=V_{0,\mathrm c}$处。



质点脱离位置

Mathematica 作图

上面三图用Mathematica做出,本节给出具体命令。编程能力所限,代码没有优化,比较繁琐。

质点停驻位置图中虚线由$V(\theta)=0,V_0=V_{0,c}$消去$\mu$给出。

质点停驻位置图中虚线由$n(\theta)=0,V_0=V_{0,c}$消去$\mu$给出。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
(*相图*)
Clear["Global`*"]
<p>Vs[[Mu]_] :=<br />
Sqrt[(4<em>[Mu]^2 - 2 +<br />
2</em>Exp[-2<em>[Mu]</em>ArcTan[[Mu]]]<em>Sqrt[1 + [Mu]^2])/(1 + 4</em>[Mu]^2)] (<em>即V_{0,c}</em>)</p>
<p>Plot[Vs[[Mu]], {[Mu], 0, 4}, Frame -&gt; True,<br />
FrameLabel -&gt; {{Style[&quot;!(*SubscriptBox[(V), (</p>
<p>(<em>驻留位置</em>)</p>
<p>cl = ContourPlot[<br />
Cos[[Theta]] - (1 - V0^2)<em>Exp[2</em>Tan[[Theta]]<em>[Theta]] -<br />
3</em>(2<em>Tan[[Theta]]</em>Sin[[Theta]] + Cos[[Theta]] -<br />
Exp[2<em>Tan[[Theta]]</em>[Theta]])/(1 + 4<em>Tan[[Theta]]^2) ==<br />
0, {V0, 0, 1}, {[Theta], 0, Pi/2},<br />
ContourStyle -&gt; {Black, Dotted}]<br />
[Mu] = 0.5; FindRoot[<br />
Cos[ArcTan[[Mu]]] - (1 - V0^2)</em>Exp[2<em>[Mu]</em>ArcTan[[Mu]]] -<br />
3<em>(2</em>[Mu]<em>Sin[ArcTan[[Mu]]] + Cos[ArcTan[[Mu]]] -<br />
Exp[2</em>[Mu]<em>ArcTan[[Mu]]])/(1 + 4</em>[Mu]^2) == 0, {V0, 0.5}]</p>
<p>on05 = ContourPlot[<br />
Cos[[Theta]] - (1 - V0^2)<em>Exp[2</em>[Mu]<em>[Theta]] -<br />
3</em>(2<em>[Mu]</em>Sin[[Theta]] + Cos[[Theta]] -<br />
Exp[2<em>[Mu]</em>[Theta]])/(1 + 4*[Mu]^2) == 0, {V0, 0,<br />
1}, {[Theta], 0, ArcTan[[Mu]]}, Frame -&gt; True,<br />
FrameLabel -&gt; {{Style[&quot;!(*SubscriptBox[([Theta]), (on)])&quot;,<br />
Bold, 16],<br />
None}, {Style[&quot;!(*SubscriptBox[(V), ()])&quot;, Bold, 16],<br />
None}}, FrameTicksStyle -&gt; Directive[FontSize -&gt; 16],<br />
ContourStyle -&gt; {Black}]<br />
[Mu] = 1.0<br />
FindRoot[Cos[ArcTan[[Mu]]] - (1 - V0^2)<em>Exp[2</em>[Mu]<em>ArcTan[[Mu]]] -<br />
3</em>(2<em>[Mu]</em>Sin[ArcTan[[Mu]]] + Cos[ArcTan[[Mu]]] -<br />
Exp[2<em>[Mu]</em>ArcTan[[Mu]]])/(1 + 4*[Mu]^2) == 0, {V0, 0.5}]</p>
<p>on1 = ContourPlot[<br />
Cos[[Theta]] - (1 - V0^2)<em>Exp[2</em>[Mu]<em>[Theta]] -<br />
3</em>(2<em>[Mu]</em>Sin[[Theta]] + Cos[[Theta]] -<br />
Exp[2<em>[Mu]</em>[Theta]])/(1 + 4*[Mu]^2) == 0, {V0, 0,<br />
1}, {[Theta], 0, ArcTan[[Mu]]}, Frame -&gt; True,<br />
FrameLabel -&gt; {{Style[&quot;!(*SubscriptBox[([Theta]), (on)])&quot;,<br />
Bold, 16],<br />
None}, {Style[&quot;!(*SubscriptBox[(V), ()])&quot;, Bold, 16],<br />
None}}, FrameTicksStyle -&gt; Directive[FontSize -&gt; 16],<br />
ContourStyle -&gt; {Black}]</p>
<p>[Mu] = 2.0<br />
FindRoot[Cos[ArcTan[[Mu]]] - (1 - V0^2)<em>Exp[2</em>[Mu]<em>ArcTan[[Mu]]] -<br />
3</em>(2<em>[Mu]</em>Sin[ArcTan[[Mu]]] + Cos[ArcTan[[Mu]]] -<br />
Exp[2<em>[Mu]</em>ArcTan[[Mu]]])/(1 + 4*[Mu]^2) == 0, {V0, 0.5}]</p>
<p>on2 = ContourPlot[<br />
Cos[[Theta]] - (1 - V0^2)<em>Exp[2</em>[Mu]<em>[Theta]] -<br />
3</em>(2<em>[Mu]</em>Sin[[Theta]] + Cos[[Theta]] -<br />
Exp[2<em>[Mu]</em>[Theta]])/(1 + 4*[Mu]^2) == 0, {V0, 0,<br />
1}, {[Theta], 0, ArcTan[[Mu]]}, Frame -&gt; True,<br />
FrameLabel -&gt; {{Style[&quot;!(*SubscriptBox[([Theta]), (on)])&quot;,<br />
Bold, 16],<br />
None}, {Style[&quot;!(*SubscriptBox[(V), ()])&quot;, Bold, 16],<br />
None}}, FrameTicksStyle -&gt; Directive[FontSize -&gt; 16],<br />
ContourStyle -&gt; {Black}]</p>
<p>Show[cl, on05, on1, on2,<br />
FrameLabel -&gt; {{Style[&quot;!(*SubscriptBox[([Theta]), (on)])&quot;,<br />
Bold, Black, 16],<br />
None}, {Style[&quot;!(*SubscriptBox[(V), (</p>
<p>(<em>脱离位置</em>)</p>
<p>Clear[&quot;Global`*&quot;]</p>
<p>V0c[v0_, [Mu]<em>] :=<br />
v0 - Sqrt[(<br />
4<em>[Mu]^2 - 2 + 2</em>Exp[-2<em>[Mu]</em>ArcTan[[Mu]]]<em>Sqrt[1 + [Mu]^2])/(<br />
1 + 4</em>[Mu]^2)]<br />
nx[[Theta]</em>, v0_, [Mu]_] := (1 - v0^2)<em>Exp[2</em>[Mu]<em>[Theta]] +<br />
3</em>(2<em>[Mu]</em>Sin[[Theta]] + Cos[[Theta]] - Exp[2<em>[Mu]</em>[Theta]])/(<br />
1 + 4*[Mu]^2)</p>
<p>vv = Flatten[<br />
Table[FindRoot[V0c[v0, [Mu]], {v0, 0}], {[Mu], 0, 3, 0.1}]] /.<br />
Rule -&gt; List</p>
<p>vv = Flatten[vv]</p>
<p>vv = DeleteCases[vv, v0]</p>
<p>tt = Table[<br />
FindRoot[nx[[Theta],<br />
v0, [Mu]] /. {v0 -&gt; vv[[i]], [Mu] -&gt; 0.1*(i - 1)}, {[Theta],<br />
1.0}], {i, 1, 31}]</p>
<p>tt = Flatten[tt] /. Rule -&gt; List</p>
<p>tt = Flatten[tt]</p>
<p>tt = DeleteCases[tt, [Theta]]</p>
<p>ol = ListPlot[Table[{vv[[i]], tt[[i]]}, {i, 1, 31}],<br />
PlotStyle -&gt; Black]</p>
<p>Clear[&quot;Global`*&quot;]</p>
<p>V0c[v0_, [Mu]<em>] :=<br />
v0 - Sqrt[(<br />
4<em>[Mu]^2 - 2 + 2</em>Exp[-2<em>[Mu]</em>ArcTan[[Mu]]]<em>Sqrt[1 + [Mu]^2])/(<br />
1 + 4</em>[Mu]^2)]<br />
nx[[Theta]</em>, v0_, [Mu]_] := (1 - v0^2)<em>Exp[2</em>[Mu]<em>[Theta]] +<br />
3</em>(2<em>[Mu]</em>Sin[[Theta]] + Cos[[Theta]] - Exp[2<em>[Mu]</em>[Theta]])/(<br />
1 + 4*[Mu]^2)</p>
<p>vv = Flatten[<br />
Table[FindRoot[V0c[v0, [Mu]], {v0, 0}], {[Mu], 0, 3, 0.1}]] /.<br />
Rule -&gt; List</p>
<p>vv = Flatten[vv]</p>
<p>vv = DeleteCases[vv, v0]</p>
<p>tt = Table[<br />
FindRoot[nx[[Theta],<br />
v0, [Mu]] /. {v0 -&gt; vv[[i]], [Mu] -&gt; 0.1*(i - 1)}, {[Theta],<br />
1.0}], {i, 1, 31}]</p>
<p>tt = Flatten[tt] /. Rule -&gt; List</p>
<p>tt = Flatten[tt]</p>
<p>tt = DeleteCases[tt, [Theta]]</p>
<p>ol = ListPlot[Table[{vv[[i]], tt[[i]]}, {i, 1, 31}],<br />
PlotStyle -&gt; Black]</p>
<p>Vs[[Mu]_] :=<br />
Sqrt[(4<em>[Mu]^2 - 2 +<br />
2</em>Exp[-2<em>[Mu]</em>ArcTan[[Mu]]]<em>Sqrt[1 + [Mu]^2])/(1 + 4</em>[Mu]^2)]</p>
<p>[Mu] = 0.5; Vs[[Mu]]<br />
FindRoot[(1 - Vs[[Mu]]^2)<em>Exp[2</em>[Mu]<em>[Theta]] +<br />
3</em>(2<em>[Mu]</em>Sin[[Theta]] + Cos[[Theta]] - Exp[2<em>[Mu]</em>[Theta]])/(<br />
1 + 4<em>[Mu]^2) == 0, {[Theta], 1}]<br />
off05 = ContourPlot[(1 - V0^2)</em>Exp[2<em>[Mu]</em>[Theta]] +<br />
3<em>(2</em>[Mu]<em>Sin[[Theta]] + Cos[[Theta]] -<br />
Exp[2</em>[Mu]<em>[Theta]])/(1 + 4</em>[Mu]^2) == 0, {V0, Vs[[Mu]],<br />
1}, {[Theta], 0, Pi/2}, Frame -&gt; True,<br />
FrameLabel -&gt; {{Style[&quot;!(*SubscriptBox[([Theta]), (off)])&quot;,<br />
Bold, 16],<br />
None}, {Style[&quot;!(*SubscriptBox[(V), (</p>
<p>[Mu] = 1.0; Vs[[Mu]]<br />
FindRoot[(1 - Vs[[Mu]]^2)<em>Exp[2</em>[Mu]<em>[Theta]] +<br />
3</em>(2<em>[Mu]</em>Sin[[Theta]] + Cos[[Theta]] - Exp[2<em>[Mu]</em>[Theta]])/(<br />
1 + 4<em>[Mu]^2) == 0, {[Theta], 1}]<br />
off1 = ContourPlot[(1 - V0^2)</em>Exp[2<em>[Mu]</em>[Theta]] +<br />
3<em>(2</em>[Mu]<em>Sin[[Theta]] + Cos[[Theta]] -<br />
Exp[2</em>[Mu]<em>[Theta]])/(1 + 4</em>[Mu]^2) == 0, {V0, Vs[[Mu]],<br />
1}, {[Theta], 0, Pi/2}, Frame -&gt; True,<br />
FrameLabel -&gt; {{Style[&quot;!(*SubscriptBox[([Theta]), (off)])&quot;,<br />
Bold, 16],<br />
None}, {Style[&quot;!(*SubscriptBox[(V), (</p>
<p>[Mu] = 2.0; Vs[[Mu]]<br />
FindRoot[(1 - Vs[[Mu]]^2)<em>Exp[2</em>[Mu]<em>[Theta]] +<br />
3</em>(2<em>[Mu]</em>Sin[[Theta]] + Cos[[Theta]] - Exp[2<em>[Mu]</em>[Theta]])/(<br />
1 + 4<em>[Mu]^2) == 0, {[Theta], 1}]<br />
off2 = ContourPlot[(1 - V0^2)</em>Exp[2<em>[Mu]</em>[Theta]] +<br />
3<em>(2</em>[Mu]<em>Sin[[Theta]] + Cos[[Theta]] -<br />
Exp[2</em>[Mu]<em>[Theta]])/(1 + 4</em>[Mu]^2) == 0, {V0, Vs[[Mu]],<br />
1}, {[Theta], 0, Pi/2}, Frame -&gt; True,<br />
FrameLabel -&gt; {{Style[&quot;!(*SubscriptBox[([Theta]), (off)])&quot;,<br />
Bold, 16],<br />
None}, {Style[&quot;!(*SubscriptBox[(V), (</p>
<p>Show[ol, off05, off1, off2, PlotRange -&gt; {{0, 1}, {0, 1.5}},<br />
AxesOrigin -&gt; {0, 0},<br />
Epilog -&gt; {Inset[Style[&quot;[Mu]=0.5&quot;, 16], {0.46, 0.9}],<br />
Inset[Style[&quot;[Mu]=1&quot;, 16], {0.7, 1.0}],<br />
Inset[Style[&quot;[Mu]=2&quot;, 16], {0.86, 1.2}]}, Frame -&gt; True,<br />
FrameLabel -&gt; {{Style[&quot;!(*SubscriptBox[([Theta]), (off)])&quot;,<br />
Bold, Black, 16],<br />
None}, {Style[&quot;!(*SubscriptBox[(V), (</p>

标签: 摩擦力, 圆周运动

添加新评论

captcha
请输入验证码