curve.nb
0.03MB

$(1,1)$에서 $(0,0)$까지를 연결하는 일차 곡선 ($y=x$), 이차 곡선 ($y=x^2$), 6차 곡선 ($y=x^6$), 사분원 ($y=1-\sqrt{1-x^2}$) 그리고 cycloid ($x=1-R(\theta-\sin\theta), y=1-R(1-\cos\theta)$) 위를 움직이는 물체의 운동을 mathematica를 사용해서 animation으로 표현하는 방법을 알아보자. 중력가속도는 $g=1$로 놓는다. 적절한 generalized coordinate를 선택해서 Euler-Lagrange equation을 이용하면 운동방정식을 쉽게 구할 수 있다.

(A)  곡선이 $y=f(x)$의 형태로 주어지는 경우 운동방정식은

$$\big[ 1+ (f')^2 \big] \ddot{x} + f' f''  \dot{x} ^2 + f'= 0 .$$

직선경로를 제외하면 운동방정식은 비선형이므로 mathematica의 $\tt NDSolve[]$을 이용해서 수치적으로 푼다.

(B) 원의 경우는 $x$ 좌표보다는 각변수를 이용하면 apparent singularity를 피할 수 있다. 이 경우 운동방정식은

$$ \ddot{\theta} = -\sin \theta,$$

로 주어진다. 

(C) cycloid는 곡선을 따라 움직이는 시간

$$t =\int \frac{ds}{v} = \int  \sqrt{\frac{1 + (dx/dy)^2}{2g(1-y)}}dy$$

을 최소로 만들어주는 곡선이다. cycloid는 다음과 같이 $R$ 변수와 각도 변수 $\theta$로 표현할 수 있다.

$$ 1-x=R(\theta-\sin \theta),~~y-1= -R(1-\cos \theta)$$

이 곡선이 $(0,0)$을 지나야 하는 조건에서 $R$과 그 때의 $\theta$ 값을 구할 수 있다. 먼저 $\theta$을 소거하면,

$$ R \cos \Big( \frac{1+\sqrt{2R-1}}{R} \Big) + 1 = R $$

을 얻고, 이 식의 근을 구하면 $R$ 값이 정해진다. 또한, $$1=R(\theta- \sin \theta)$$을 풀어서 $(0,0)$에 도달할 때 $\theta=\theta_0$ 값을 얻을 수 있다. 그리고 시간과 $\theta$ 변수의 관계는 위의 표현을 적분에 대입하면 

$$t = \sqrt{ \frac{R}{g} }  \theta $$

로 주어짐을 알 수 있다. 이는 사이클로이드가 일정하게 굴러가는 바퀴의 한 점이 그리는 자취이기 때문이다.

 

아래는 5가지 경우의 곡선 각각에서 운동을 보여주는 mathematica 코드다. 곡선의 모양에 따라 바닥에 도착하는 시간이 다름을 알 수 있다. 출발 높이가 $H$일 때 걸리는 시간은 $\sqrt{H/g}$ 단위로 

직선: $t_1=\int_0^1{ \frac{dy}{\sqrt{1-y}}} = 2$

2차 곡선: $t_2=\int_0^1\sqrt{ \frac{1+4y}{8y(1-y)}}dy= 1.86336$

6차 곡선: $t_6=\int_0^1 \sqrt{\frac{1+36y^{5/3}}{72y^{5/3}(1-y)}}dy=1.90954$

4분원: $t_c=\int_0^{\pi/2} \frac{d \theta}{\sqrt{2\sin \theta }}=1.85407$

cycloid: $t_0= \sqrt{R}\theta_0 = 1.82568$

Cyan: 직선, Blue: 2차 곡선, Magenta: 6차 곡선, Black: 원, Red: cycloid

728x90
Posted by helloktk
,