π μΌνλ¬μ λ²μΉ: μ°μ£Όμ μΆ€μ λ¨κ³λ³λ‘ μ΄ν΄νκΈ° β¨
π μΌνλ¬μ λ²μΉ: μ°μ£Όμ μΆ€μ λ¨κ³λ³λ‘ μ΄ν΄νκΈ° β¨
(νμΈλ§μ ν¨μ λ°κ²¬ λ©νν둬ννΈ μμ€ν νμ©)
μ°μ£Όλ λ§μΉ μ μ₯ν 무λνμ₯μ λλ€. νμμ 무λμ μ€μ¬μμ λΉμ λ΄λΏκ³ , νμ±λ€μ κ·Έ μ£Όμλ₯Ό λΉκΈλΉκΈ λλ©° μλ¦λ€μ΄ κΆ€λ μΆ€μ μΆκ³ μμ΅λλ€. μ΄ κΈμ μΌνλ¬μ λ²μΉμ μ½κ³ μ§κ΄μ μΌλ‘ μ΄ν΄νκ³ , μ€μ κ³μ° μμλ₯Ό ν΅ν΄ κΉμ ν΅μ°°μ μ»μ μ μλλ‘ μλ΄ν©λλ€. μ΄ κ³Όμ μμ μ΄λͺ¨ν°μ½κ³Ό νΉμλ¬Έμλ₯Ό νμ©νμ¬ νλμ λ€μ΄μ€λλ‘ λ§λ€κ³ , κ°λ¨ν μνμ κ°λ λΆν° μ€μ μ½λ κ³μ°κΉμ§ μ°¨κ·Όμ°¨κ·Ό μ΄ν΄λ³΄κ² μ΅λλ€.
1. μμνκΈ°: μ°μ£Όμ κΈ°λ³Έ κ°λ μ΄ν΄νκΈ° βοΈπͺ
1.1 μ°μ£Όλ₯Ό 무λνμ₯μΌλ‘ λΉμ νκΈ°
μ°μ£Όλ₯Ό κ±°λν 무λνμ₯μ΄λΌ μκ°ν΄λ΄ μλ€.
νμ: 무λ μ€μμμ λΉλλ κ±°λν μ€ν¬νΈλΌμ΄νΈ (μ§λ: Mβ)
νμ±: 무λλ₯Ό λΉκΈλΉκΈ λλ 무μ©μλ€ (μ§λ: m)
κΆ€λ: 무μ©μλ€μ΄ 그리λ μ°μν κ²½λ‘ (λ°μ§λ¦: r)
νμ: 무λμ μ€μ¬, κ±°λν λΉ λ©μ΄λ¦¬ (μ§λ: Mβ)
νμ±: νμ μ£Όμλ₯Ό μΆ€μΆλ 무μ©μλ€ (μ§λ: m)
κΆ€λ: 무μ©μλ€μ΄ 그리λ 곑μ κ²½λ‘ (λ°μ§λ¦: r)
μ°μ£Όμ κΈ°λ³Έ μμλ€
G = 6.67430e-11 # λ§μ μΈλ ₯ μμ (mΒ³/kgΒ·sΒ²)
M_sun = 1.989e30 # νμ μ§λ (kg)
M_earth = 5.972e24 # μ§κ΅¬ μ§λ (kg)
AU = 1.496e11 # μ²λ¬Έλ¨μ (m) - μ§κ΅¬μ νμ μ¬μ΄ νκ· κ±°λ¦¬
1.2 μ€λ ₯ μ΄ν΄νκΈ°
μ€λ ₯μ 보μ΄μ§ μλ μ°μ£Όμ μ§νμμ λλ€. μ¬κ³Όκ° λ μΌλ‘ λ¨μ΄μ§λ―, λͺ¨λ 물체λ μλ‘λ₯Ό λμ΄λΉκΈ°λ©° μ°μ£Όμ μΆ€μ μ‘°μ¨ν©λλ€.
μ€λ ₯μ λ²μΉ: [ F = frac{G M_{odot} m}{r^2} ]
μμΉ μλμ§: [ V = -frac{G M_{odot} m}{r} ]
νμ΄μ¬ μμ:
def gravity_force(mass1, mass2, distance):
force = G * mass1 * mass2 / (distance**2)
return f"ν: {force:.2e} N"
def potential_energy(mass1, mass2, distance):
energy = -G * mass1 * mass2 / distance
return f"μμΉ μλμ§: {energy:.2e} J"
μ§κ΅¬-νμ κ° μ€λ ₯ λ° μμΉ μλμ§ κ³μ°:
print(gravity_force(M_sun, M_earth, AU))
print(potential_energy(M_sun, M_earth, AU))
2. νμ±μ μμ§μ μ΄ν΄νκΈ° ππ©°
2.1 μ΄λ μλμ§
νμ±μ κΆ€λλ₯Ό λλ©° μλμ§λ₯Ό κ°μ§κ³ μμ΅λλ€. μλκ° λΉ λ₯Όμλ‘ μ΄λ μλμ§λ 컀μ§λλ€.
μ΄λ μλμ§: [ T = frac{1}{2} m v^2 ]
def kinetic_energy(mass, velocity):
ke = 0.5 * mass * velocity**2
return f"μ΄λ μλμ§: {ke:.2e} J"
μ§κ΅¬μ κΆ€λ μ΄λ μλμ§ (νκ· μλ μ½ 29.78 km/s):
earth_velocity = 29780 # m/s
print(kinetic_energy(M_earth, earth_velocity))
2.2 λΌκ·Έλμ§μ: μ 체 μλμ§ λΆμ
λΌκ·Έλμ§μ(L)μ μ 체 μλμ§ μνλ₯Ό λΆμνλ κ°λ ₯ν λꡬμ λλ€. [ L = T - V ]
def lagrangian(T, V):
return f"λΌκ·Έλμ§μ: {T - V:.2e}"
μ§κ΅¬ κΆ€λμ λΌκ·Έλμ§μ μμ:
T_val = float(kinetic_energy(M_earth, earth_velocity).split(':')[1][:-2])
V_val = float(potential_energy(M_sun, M_earth, AU).split(':')[1][:-2])
print(lagrangian(T_val, V_val))
2.3 보쑴λ: κ°μ΄λλ
κ°μ΄λλμ 무μ©μκ° νμ νλ μΆ€λμμ κ°μ½μ λ»ν©λλ€. [ L_{text{κ°}} = m r v ]
def angular_momentum(mass, distance, velocity):
am = mass * distance * velocity
return f"κ°μ΄λλ: {am:.2e} kgΒ·mΒ²/s"
μ§κ΅¬μ κ°μ΄λλ:
print(angular_momentum(M_earth, AU, earth_velocity))
3. μΌνλ¬μ 첫 λ²μ§Έ λ²μΉ: νμ κΆ€λ ππ
νμ±μ κΆ€λλ μλ²½ν μμ΄ μλ νμμ λλ€. νμμ λͺ¨μμ μ΄μ¬λ₯ (e)λ‘ ννλλ©°, e=0μ΄λ©΄ μμ΄κ³ , eκ° ν΄μλ‘ λμ΄μ§ ννκ° λ©λλ€.
3.1 νμμ κΈ°λ³Έ νΉμ±
μ₯λ°κ²½(a): νμμ κ°μ₯ κΈ΄ λ°μ§λ¦
λ¨λ°κ²½(b): νμμ κ°μ₯ 짧μ λ°μ§λ¦
μ΄μ¬λ₯ (e): νμμ μ°κ·Έλ¬μ§ μ λ
import numpy as np
def ellipse_properties(a, e):
b = a * np.sqrt(1 - e**2) # λ¨λ°κ²½
c = a * e # μ΄μ 거리
area = np.pi * a * b # νμμ λ©΄μ
return f"λ¨λ°κ²½: {b:.2e}, μ΄μ 거리: {c:.2e}, λ©΄μ : {area:.2e}"
μ§κ΅¬ κΆ€λ μ΄μ¬λ₯ β 0.0167:
print(ellipse_properties(AU, 0.0167))
3.2 κΆ€λ λ°©μ μ
νμ κΆ€λλ₯Ό κ·Ήμ’νκ³μμ λνλ΄λ©΄: [ r(theta) = frac{a(1 - e^2)}{1 + e cos(theta)} ]
def orbital_radius(a, e, theta):
r = a * (1 - e**2) / (1 + e * np.cos(theta))
return r
μ§κ΅¬ κΆ€λ λ°μ§λ¦ λ³ν μμ:
angles = np.linspace(0, 2 * np.pi, 5)
for angle in angles:
radius = orbital_radius(AU, 0.0167, angle)
print(f"κ°λ: {angle:.2f} rad, 거리: {radius:.2e} m")
4. μΌνλ¬μ λ λ²μ§Έ λ²μΉ: λ©΄μ μλ μΌμ π¨π
μΌνλ¬μ λ λ²μ§Έ λ²μΉμ λ°λ₯΄λ©΄, νμ±μ΄ μΌμ μκ° λμ μΈκ³ μ§λκ°λ λ©΄μ μ νμ μΌμ ν©λλ€. μ΄λ νμ±μ΄ κ·ΌμΌμ (κ°μ₯ κ°κΉμ΄ μ§μ )μμλ λΉ λ₯΄κ², μμΌμ (κ°μ₯ λ¨Ό μ§μ )μμλ λλ¦¬κ² μμ§μ¬λ, λ¨μμκ°λΉ λ©΄μ μ μΌμ νλ€λ λ»μ λλ€.
λ©΄μ μλ: [ text{λ©΄μ μλ} = frac{1}{2} r v = text{μΌμ } ]
def area_speed(r, v):
return f"λ©΄μ μλ: {0.5 * r * v:.2e} mΒ²/s"
μ§κ΅¬ κ·ΌμΌμ κ³Ό μμΌμ λΉκ΅:
r_perihelion = AU * (1 - 0.0167)
r_aphelion = AU * (1 + 0.0167)
v_perihelion = 30290 # m/s
v_aphelion = 29290 # m/s
print(area_speed(r_perihelion, v_perihelion))
print(area_speed(r_aphelion, v_aphelion))
5. μΌνλ¬μ μΈ λ²μ§Έ λ²μΉ: μ‘°νμ λ²μΉ πΌβ¬
μΌνλ¬μ μΈ λ²μ§Έ λ²μΉμ νμ±μ 곡μ μ£ΌκΈ°(T)μ κΆ€λ μ₯λ°κ²½(a) μ¬μ΄μ κ΄κ³λ₯Ό 보μ¬μ€λλ€. [ T^2 propto a^3 ]
def orbital_period(a):
T_squared = (4 * np.pi**2 * a**3) / (G * M_sun)
T = np.sqrt(T_squared)
return f"곡μ μ£ΌκΈ°: {T:.2e} s ({T / (365.25 * 24 * 3600):.2f} λ
)"
μ§κ΅¬μ 곡μ μ£ΌκΈ°:
print(orbital_period(AU))
6. μ€μ μμ©: μΈκ³΅μμ± κΆ€λ μ€κ³ ππ
μΌνλ¬μ λ²μΉμ μ°μ£Ό νμ¬μ μ΄λ μΈκ³΅μμ± κΆ€λ μ€κ³ μ μ μ©ν©λλ€.
def satellite_orbit(altitude):
r = 6371e3 + altitude # μ§κ΅¬ λ°μ§λ¦ + μμ± κ³ λ
v = np.sqrt(G * M_earth / r)
T = 2 * np.pi * r / v
return f"κΆ€λ μλ: {v:.2f} m/s, μ£ΌκΈ°: {T:.2f} s ({T / 60:.2f} λΆ)"
κ³ λ 400km μμ± κΆ€λ μμ:
print(satellite_orbit(400e3))
μ 리 ππ
ν΅μ¬ ν€μλ & μ€λͺ
μ€λ ₯(Gravitational Force): μ§λμ κ°μ§ λ¬Όμ²΄λ€ μ¬μ΄μ 보νΈμ μΈλ ₯
μ΄λ μλμ§(Kinetic Energy): νμ±μ μ΄λμ λ°λ₯Έ μλμ§
μμΉ μλμ§(Potential Energy): 거리 λ³νμ λ°λ₯Έ μ μ¬ μλμ§
λΌκ·Έλμ§μ(Lagrangian): μ΄λ μλμ§μ μμΉ μλμ§μ μ°¨λ‘ μμ€ν μν κΈ°μ
κ°μ΄λλ(Angular Momentum): νμ μ΄λμ 보쑴λ
νμ κΆ€λ(Elliptical Orbit): νμ±μ μ€μ 곡μ κΆ€λ νν
λ©΄μ μλ μΌμ (Area Velocity Constant): λ¨μ μκ°λΉ μΈκ³ μ§λκ°λ λ©΄μ μΌμ
μ‘°νμ λ²μΉ(Harmony Law): 곡μ μ£ΌκΈ°μ μ₯λ°κ²½ μ¬μ΄μ κ·Όλ³Έμ λΉλ‘ κ΄κ³
μ΄λ¬ν λ΄μ©λ€μ ν΅ν΄ μΌνλ¬μ λ²μΉμ μ§κ΄μ μΌλ‘ νμ ν μ μμΌλ©°, μ€μ κ³μ°μ ν΅ν΄ κ·Έ κ°λ μ νκ³ ν ν μ μμ΅λλ€. μ°μ£Όμ μΆ€μ μ΄ν΄νλ©΄, μΈκ³΅μμ± κΆ€λλ₯Ό μ€κ³νκ±°λ μ°μ£Ό νμ¬μ μ ν¬μ νλλ° νμν ν΅μ°°μ μ»μ μ μμ΅λλ€. π
λ μλ₯Ό μν μ§λ¬Έλ€ β
νμ± κΆ€λμ νμ ννμ μ΄μ¬λ₯ μ μ§μ λ°κΏλ³΄λ©°, κΆ€λ λ°μ§λ¦ λ³νλ₯Ό κ³μ°ν΄λ³΄κ³ μΆμ§ μλμ?
곡μ μ£ΌκΈ°μ κΆ€λ λ°μ§λ¦μ κ΄κ³λ₯Ό μ§μ μ½λλ‘ μ€νν΄λ³΄λ©°, λ€μν κ°μ νμ±μ "1λ "μ κ³μ°ν΄λ³ΌκΉμ?
μΈκ³΅μμ±μ κ³ λλ₯Ό λ³κ²½νλ©΄μ κΆ€λ μλμ μ£ΌκΈ°λ₯Ό νμν΄λ³΄λ©΄, λ ν¨μ¨μ μΈ μμ± λ°°μΉ μ λ΅μ κ³ λ―Όν΄λ³Ό μ μμ§ μμκΉμ?