우주 탐사선 및 재진입 캡슐이 마하 25(초속 8km) 이상의 극초음속으로 지구 대기권에 재진입할 때, 강력한 전방 보우 충격파(Bow Shock)에 의해 공기가 10,000K 이상의 고온 플라즈마로 가열됩니다. 내부 탑재체와 우주비행사를 보호하기 위해 표면 탄소 복합재가 스스로 타들어가며 열을 흡수·방출하는 삭마(Ablation) 열화학 반응과 비선형 열전도 편미분방정식(PDE)을 1,000Hz 주기로 수치해석하는 0-Alloc C# 시뮬레이터 백서를 공개합니다.

1. 2022 개정 교육과정 교과 연계 분석

  • 물리학 (충격파 공력 가열 열유속, 흑체 복사, 푸리에 열전도 법칙): 정체점 공력 가열 페이-리델(Fay-Riddell) 관계식 $q_{aero} = C \sqrt{\frac{\rho_\infty}{R_n}} V_\infty^3$과 표면 흑체 복사 열방출 $q_{rad} = \epsilon \sigma T_w^4$.
  • 화학 (열분해 흡열 반응 엔탈피, 아레니우스 반응 속도론, 상변화 잠열): 탄소-페놀릭 기지(Matrix)의 열분해 속도 $\frac{\partial \rho}{\partial t} = -A \rho_0 e^{-E_a / (RT)}$에 의한 열차단 메커니즘.
  • 지구과학 (고도별 대기 밀도 지수 분포와 재진입 궤도 공력 제동): 대기권 스케일 하이트 $H \approx 7.2\text{km}$에 따른 대기 밀도 $\rho(z) = \rho_0 e^{-z/H}$의 고도별 급변 모델링.
  • 정보 (무할당 실시간 1,000Hz 1차원 유한차분 열전도 편미분 해석 파이프라인): 1ms 실시간 루프 내에서 가비지 컬렉션 스파이크 없이 다층 열차폐 타일 온도 프로파일을 스택 메모리로 0-Alloc 연산하는 C# 수치해석 코어.

2. 삭마 표면 에너지 평형 및 열전도 편미분 수식 모델

두께 $L$인 삭마 열차폐재(TPS) 내부의 1차원 비선형 열전도 방정식은 다음과 같이 기술됩니다.

$$\rho(T) c_p(T) \frac{\partial T}{\partial t} = \frac{\partial}{\partial x} \left( k(T) \frac{\partial T}{\partial x} \right) + \Delta H_{pyr} \dot{m}_{gas}$$

재진입체 외벽 표면($x = 0$)에서의 복합 에너지 평형 경계조건(Boundary Condition)은 다음과 같습니다.

$$q_{aero} = \epsilon \sigma T_w^4 + \left. -k \frac{\partial T}{\partial x} \right|_{x=0} + \rho_{char} \dot{s} h_{abl}$$

여기서 $\dot{s}$는 표면 후퇴(Recession) 속도이며, 삭마열 $h_{abl} \approx 15,000\text{kJ/kg}$에 달하는 거대한 화학 반응 엔탈피로 초고온 공력 가열을 차단하여 내부 캡슐 온도를 100℃ 이하로 완벽히 유지합니다.

3. 1,000Hz 0-Alloc C# 삭마 열전도 시뮬레이터 코어

using System;
using System.Runtime.CompilerServices;

namespace ZeliDesk.Education.StemAero.ReentryTps
{
    public readonly record struct ReentryFlowTelemetry(
        float AltitudeKm,
        float VelocityMps,
        float NoseRadiusMeters,
        float HeatShieldThicknessMm
    );

    public ref struct HeatShieldThermalResponse
    {
        public float SurfaceTemperatureKelvin;
        public float BacksideTemperatureCelsius;
        public float AeroHeatFluxKwM2;
        public float RadiationDissipationKwM2;
        public bool HeatShieldIntact;
    }

    public static class ReentryAblationCore
    {
        private const float StefanBoltzmann = 5.67e-8f;
        private const float Emissivity = 0.88f;
        private const float ThermalConductivity = 1.25f; // W/(m*K)
        private const float SpecificHeat = 1400.0f; // J/(kg*K)
        private const float Density = 1450.0f; // kg/m^3

        [MethodImpl(MethodImplOptions.AggressiveInlining)]
        public static void ComputeAblativeHeating(
            ref readonly ReentryFlowTelemetry flow,
            ref Span layerTempsKelvin, // 10개 층 1차원 격자
            float dtSec,
            ref HeatShieldThermalResponse response)
        {
            // 1. 대기 밀도 및 정체점 공력 가열 열유속 추정 (Fay-Riddell 간략식)
            float rhoAir = 1.225f * (float)Math.Exp(-flow.AltitudeKm / 7.2f);
            float qAeroKw = 1.10e-4f * (float)Math.Sqrt(Math.Max(rhoAir, 1e-6f) / Math.Max(flow.NoseRadiusMeters, 0.1f)) 
                           * (float)Math.Pow(flow.VelocityMps, 3.0) * 0.001f;
            response.AeroHeatFluxKwM2 = qAeroKw;

            // 2. 표면 복사 평형 온도 수치 근사
            float tSurf = layerTempsKelvin[0];
            float qRadKw = Emissivity * StefanBoltzmann * (float)Math.Pow(tSurf, 4.0) * 0.001f;
            response.RadiationDissipationKwM2 = qRadKw;

            // 3. 1차원 유한차분 열전도 시간 적분 (0-Alloc 스택)
            float dx = (flow.HeatShieldThicknessMm * 0.001f) / (layerTempsKelvin.Length - 1);
            float alpha = ThermalConductivity / (Density * SpecificHeat);
            float r = (alpha * dtSec) / (dx * dx);

            // 외벽 경계조건 적용
            float netFluxIn = (qAeroKw - qRadKw) * 1000.0f;
            layerTempsKelvin[0] += (netFluxIn / (Density * SpecificHeat * dx)) * dtSec;

            // 내부 노드 전도
            for (int i = 1; i < layerTempsKelvin.Length - 1; i++)
            {
                layerTempsKelvin[i] += r * (layerTempsKelvin[i + 1] - (2.0f * layerTempsKelvin[i]) + layerTempsKelvin[i - 1]);
            }

            // 배면 단열 경계조건
            int last = layerTempsKelvin.Length - 1;
            layerTempsKelvin[last] = layerTempsKelvin[last - 1];

            response.SurfaceTemperatureKelvin = layerTempsKelvin[0];
            response.BacksideTemperatureCelsius = layerTempsKelvin[last] - 273.15f;
            response.HeatShieldIntact = response.BacksideTemperatureCelsius < 80.0f;
        }
    }
}

4. 방통대 우호성 교수 랩실 교구 및 국방 AIDT 현장 적용 가이드

초·중·고 화학 및 물리 융합 열화학 시뮬레이터

본 백서는 중·고등학교 화학 및 물리학 교과의 "화학 반응과 열에너지, 열전도와 흑체 복사, 물질의 상태 변화와 잠열" 단원에서 우주선 귀환이라는 매력적인 소재를 통해 학생들의 호기심을 극대화합니다. 우주선 표면이 수천 도까지 뜨거워질 때 왜 타버리지 않고 견딜 수 있는지, 열화학적 흡열 삭마 반응의 비밀을 C# 0-Alloc 편미분 수치해석 코드로 직접 시뮬레이션할 수 있습니다.

5. 결론 및 향후 전망

대기권 재진입 열차폐 기술은 유인 우주 비행과 행성 탐사의 필수불가결한 핵심 기술입니다. ZeliDesk는 과학 교육과 첨단 공학의 융합을 이끄는 실천적 백서를 끊임없이 선보일 것입니다.