시간에 따른 거리 (Distance), 속도 (Velocity), 가속도 (Acceleration)의 변화

2024. 9. 15. 00:27정보처리,전산/Python

반응형

 


1. 거리 (x): 
   \( x(t) = \int v(t) dt \)
   - 속도의 적분으로 거리 변화를 얻는다.

2. 속도 (v):
   \( v(t) = \int a(t) dt \)
   - 가속도의 적분으로 속도 변화를 구한다.
   - 가속도가 양수면 속도가 증가하고, 음수면 속도가 감소한다.

3. 가속도 (a):
   \( a(t) = \frac{dv(t)}{dt} \)
   - 시간에 따른 속도의 변화율을 의미한다.

import numpy as np
import matplotlib.pyplot as plt

# 시간 값 설정
time = np.linspace(0, 30, 1000)

# 주어진 시간 구간에 따라 값을 할당
acceleration = np.piecewise(time,
                            [time < 5,
                             (time >= 5) & (time <= 15),
                             (time > 15) & (time <= 25),
                             time > 25],
                            [4, 0, -4, 0])

# 속도 계산
velocity = np.zeros_like(time)
velocity[1:] = np.cumsum(acceleration[:-1]) * (time[1] - time[0])

# 거리 계산 (적분)
distance = np.zeros_like(time)
distance[1:] = np.cumsum(velocity[:-1]) * (time[1] - time[0])

# 그래프 생성
fig, axs = plt.subplots(3, 1, figsize=(8, 10))

# 거리 그래프
axs[0].plot(time, distance, color='r')
axs[0].set_title('Distance')
axs[0].set_ylabel('x (m)')
axs[0].grid(True)

# 속도 그래프
axs[1].plot(time, velocity, color='b')
axs[1].set_title('Velocity')
axs[1].set_ylabel('v (m/s)')
axs[1].grid(True)

# 가속도 그래프
axs[2].plot(time, acceleration, color='g')
axs[2].set_title('Acceleration')
axs[2].set_ylabel('a (m/s^2)')
axs[2].set_xlabel('Time in seconds')
axs[2].grid(True)

# 레이아웃 및 그래프 저장
plt.tight_layout()
plt.savefig('graph_output.png')  # 그래프를 'graph_output.png'로 저장
plt.show()  # 그래프 화면에 출력


  Acceleration (가속도) 그래프
가속도는 물체의 속도가 시간에 따라 얼마나 빠르게 변화하는지를 나타낸다.
   - 그래프는 시간 구간에 따라 다르게 설정된 가속도를 보여준다:
     - 0초에서 5초까지 가속도는 4 m/s²이다. 이 구간에서는 물체가 가속하고 있다.
     - 5초에서 15초까지는 가속도가 0이다. 이 구간에서는 물체가 등속 운동을 하고 있다.
     - 15초에서 25초까지는 가속도가 -4 m/s²이다. 이 구간에서는 물체가 감속하고 있다.
     - 25초 이후로는 다시 가속도가 0이 되어, 등속 운동을 한다.

Velocity (속도) 그래프
   -속도는 시간에 따른 물체의 위치 변화를 나타내며, 가속도의 적분 값으로 구해진다.
   - 그래프의 해석:
     - 0초에서 5초까지는 가속도가 4 m/s²이기 때문에, 속도는 선형적으로 증가한다. 이 구간에서는 속도가 계속 빨라진다.
     - 5초에서 15초까지는 가속도가 0이므로, 속도는 일정하게 유지된다. 이는 등속 운동 구간이다.
     - 15초에서 25초까지는 가속도가 -4 m/s²로 음수이기 때문에 속도는 감소한다. 이 구간에서는 물체가 감속하고 있다.
     - 25초 이후로 가속도가 다시 0이므로, 속도는 더 이상 변화하지 않고 일정하게 유지된다.

 Distance (거리) 그래프 
   - 거리는 시간에 따른 물체의 이동한 총 거리를 나타낸다. 속도의 적분 값으로 구해진다.
   - 그래프의 해석:
     - 0초에서 5초까지는 속도가 증가함에 따라 거리가 점점 더 빠르게 증가한다. 즉, 곡선이 위쪽으로 구부러져 있다.
     - 5초에서 15초까지는 속도가 일정하므로 거리는 선형적으로 증가한다. 이 구간은 직선이다.
     - 15초에서 25초까지는 속도가 감소하므로, 거리가 더 천천히 증가한다. 곡선이 완만해지는 형태로 나타난다.
     - 25초 이후로 속도가 일정하게 유지되기 때문에, 거리도 일정한 속도로 증가한다.


  결과 그래프 해석 요약:
- 가속도는 시간에 따라 변화하며, 이를 기반으로 속도와 거리가 결정된다.
- 처음에는 물체가 가속하여 속도가 증가하고, 이후 등속 운동을 하며, 마지막에는 감속하여 속도가 감소한다.
- 거리는 시간이 지남에 따라 계속 증가하지만, 속도와 가속도에 따라 그 증가율이 변한다.

반응형

'정보처리,전산 > Python' 카테고리의 다른 글

in 연산자 오류  (0) 2024.09.26
selenium | chrome 브라우저 열기  (0) 2024.09.21
리스트 특정 키에 대해 내림차순 정렬  (0) 2024.09.04
폰번호 유효성 검사 if  (0) 2024.08.18
정수 유효성 검사 if  (0) 2024.08.18