AIDT 온디바이스 STEM 방사광 X선 스트론튬(Sr-87) 광격자 원자시계 램-디케(Lamb-Dicke) 분해능 레이저 주파수 안정화 서보 제어기

10^-18 초정밀 시간 표준 813nm 매직 파장 격자 트랩 및 698nm 클락 레이저 파브리-페로 초안정 공진기 서보, 10,000Hz C# 엔진

1. 개요

현대 물리학의 기본 상수 불변성 검증, 일반 상대성이론에 따른 중력 적색편이(Gravitational Redshift) 계측, 그리고 차세대 SI 초(Second) 재정의의 표준으로 자리 잡은 장치는 스트론튬-87(\(^{87}\text{Sr}\)) 중성 원자 기반 광격자 원자시계(Optical Lattice Clock)입니다. 1차원 광학 정재파 격자의 매직 파장(\(\lambda_{magic} \approx 813.42\,\text{nm}\))에 수천 개의 레이저 냉각 원자를 가두어 바닥상태(\(^1S_0\))와 들뜬상태(\(^3P_0\)) 간의 AC 슈타르크(Stark) 천이 주파수 편위를 완벽히 상쇄하며, 원자의 반동(Recoil) 에너지를 억제하는 램-디케(Lamb-Dicke) 영역에서 초협선폭(밀리헤르츠 급) 클락 전이를 유도합니다. 이 시계 전이를 탐침하는 698nm 클락 레이저는 극저열팽창(ULE) 초공동 파브리-페로 공진기에 파운드-드레버-홀(Pound-Drever-Hall, PDH) 기법으로 고속 록킹되어야 합니다. 그러나 방사광 가속기 빔라인 및 실험실 환경의 열적 요동과 미세 지진파로 인해 공진기 반사 신호의 위상이 표류합니다. 본 고에서는 PDH 오차 신호를 10,000Hz 주기로 검출하여 음향광학 변조기(AOM)와 피에조 미러를 이중 폐루프로 제어하는 0-Alloc C# 엔진을 구현합니다.

2. 수학적 모델링 및 지배 방정식

원자 트랩 영역에서의 램-디케 매개변수 \(\eta_{LD}\) 및 도플러 프리 흡수 조건식은 다음과 같습니다:

\[ \eta_{LD} = k_{clock} \sqrt{\frac{\hbar}{2 M_{Sr} \omega_{trap}}} = \frac{2\pi}{\lambda_{clock}} \sqrt{\frac{\hbar}{2 M_{Sr} \omega_{trap}}} \ll 1 \]

여기서 \(\omega_{trap}\)은 광격자 트랩의 조화 진동 주파수이며, \(\eta_{LD} < 0.2\)일 때 반동 없는 전이가 보장됩니다.

초공동 파브리-페로 캐비티 반사 신호로부터 복조되는 파운드-드레버-홀(PDH) 주파수 오차 신호 \(\epsilon_{pdh}(\Delta\omega)\)는 다음과 같습니다:

\[ \epsilon_{pdh}(\Delta\omega) \approx -\frac{8 \sqrt{P_c P_s}}{\pi} \frac{\mathcal{F}}{\Delta\nu_{fsr}} \cdot \Delta\omega = -K_{pdh} \cdot \Delta f_{laser} \]

여기서 \(\mathcal{F} \approx 300,000\)은 공진기 피네스(Finesse), \(\Delta\nu_{fsr}\)는 자유 스펙트럼 영역(FSR)입니다.

고속 음향광학 변조기(AOM) RF 주파수 \(\Delta f_{aom}\) 및 피에조 미러 전압 \(V_{pzt}\) 이중 피드백 서보 법칙은 다음과 같습니다:

\[ \Delta f_{aom}[k] = K_{p,fast} \epsilon_{pdh}[k] + K_{i,fast} \sum_{m=0}^k \epsilon_{pdh}[m] \Delta t \]
\[ V_{pzt}[k] = V_{pzt}[k-1] + K_{slow} \cdot \Delta f_{aom}[k] \Delta t \]

3. C# 고성능 온디바이스 서보 엔진 구현

10,000Hz 주기로 PDH 에러 복조 전압을 판독하여 주파수 편위를 서브-Hz 수준으로 록킹하는 0-Alloc C# 엔진입니다.

using System;
using System.Runtime.CompilerServices;

namespace ZeliDesk.Stem.OpticalClock
{
    /// <summary>
    /// PDH 복조 오차 전압 및 캐비티 환경 계측 상태
    /// </summary>
    public readonly ref struct PdhDemodulationTelemetryState
    {
        public readonly double PdhErrorVoltageMilliVolts; // PDH 믹서 출력 오차 전압 [mV]
        public readonly double PdhSensitivityMvPerHz;     // 전압-주파수 오차 감도 [mV/Hz]
        public readonly double CavityTempKelvin;          // ULE 공진기 제로 팽창 온도 [K]
        public readonly double LatticePowerWatts;         // 813nm 매직 격자 레이저 파워 [W]

        [MethodImpl(MethodImplOptions.AggressiveInlining)]
        public PdhDemodulationTelemetryState(double vErr, double sens, double temp, double pLattice)
        {
            PdhErrorVoltageMilliVolts = vErr;
            PdhSensitivityMvPerHz = sens;
            CavityTempKelvin = temp;
            LatticePowerWatts = pLattice;
        }
    }

    /// <summary>
    /// AOM 고속 주파수 및 피에조 저속 보정 출력
    /// </summary>
    public readonly ref struct ClockLaserServoOutput
    {
        public readonly double AomFrequencyShiftHz;   // AOM 고속 주파수 보정치 [Hz]
        public readonly double PiezoCommandVolts;     // 공진기 피에조 미러 전압 [V]
        public readonly double ResidualFrequencyJitterHz;// 잔류 주파수 지터 [Hz]
        public readonly bool IsClockLocked;          // 시계선 잠금(<0.5Hz) 유지 플래그

        [MethodImpl(MethodImplOptions.AggressiveInlining)]
        public ClockLaserServoOutput(double aomShift, double pztVolt, double jitter, bool locked)
        {
            AomFrequencyShiftHz = aomShift;
            PiezoCommandVolts = pztVolt;
            ResidualFrequencyJitterHz = jitter;
            IsClockLocked = locked;
        }
    }

    /// <summary>
    /// 10,000Hz 스트론튬 광격자 원자시계 레이저 주파수 안정화 서보 엔진
    /// </summary>
    public ref struct StrontiumClockLaserServoEngine
    {
        private readonly double _kpFast;
        private readonly double _kiFast;
        private readonly double _kdFast;
        private readonly double _kSlowPiezo;
        private readonly double _maxAomShiftHz;
        private readonly double _maxPiezoVolts;

        private double _intFast;
        private double _prevFreqErrHz;
        private double _piezoAccumVolt;

        public StrontiumClockLaserServoEngine(
            double kpFast,
            double kiFast,
            double kdFast,
            double kSlowPiezo,
            double maxAomShiftHz,
            double maxPiezoVolts)
        {
            _kpFast = kpFast;
            _kiFast = kiFast;
            _kdFast = kdFast;
            _kSlowPiezo = kSlowPiezo;
            _maxAomShiftHz = maxAomShiftHz;
            _maxPiezoVolts = maxPiezoVolts;
            _intFast = 0.0;
            _prevFreqErrHz = 0.0;
            _piezoAccumVolt = 0.0;
        }

        [MethodImpl(MethodImplOptions.AggressiveInlining)]
        public ClockLaserServoOutput ProcessCycle(
            in PdhDemodulationTelemetryState state,
            double dtSeconds)
        {
            // 1. PDH 전압으로부터 물리적 주파수 오차 Delta f [Hz] 연산
            double freqErrorHz = state.PdhErrorVoltageMilliVolts / Math.Max(1e-4, state.PdhSensitivityMvPerHz);

            // 2. 고속 루프: AOM RF 구동 주파수 PID 보정
            _intFast += freqErrorHz * dtSeconds;
            double dErr = (freqErrorHz - _prevFreqErrHz) / dtSeconds;
            _prevFreqErrHz = freqErrorHz;

            double aomShiftHz = _kpFast * freqErrorHz + _kiFast * _intFast + _kdFast * dErr;
            aomShiftHz = Math.Clamp(aomShiftHz, -_maxAomShiftHz, _maxAomShiftHz);

            // 3. 저속 루프: AOM 동작점을 중앙으로 유지하기 위한 피에조 미러 적분
            _piezoAccumVolt += _kSlowPiezo * aomShiftHz * dtSeconds;
            _piezoAccumVolt = Math.Clamp(_piezoAccumVolt, -_maxPiezoVolts, _maxPiezoVolts);

            // 4. 잔류 지터 및 잠금 판정 (0.5Hz 이하 안정화)
            double residualJitterHz = Math.Abs(freqErrorHz - aomShiftHz);
            bool isLocked = residualJitterHz <= 0.5;

            return new ClockLaserServoOutput(
                aomShiftHz,
                _piezoAccumVolt,
                residualJitterHz,
                isLocked);
        }
    }
}

4. 교육 및 국가 표준 적용 방안

  • 한국방송통신대학교 원자물리·양자표준 원격 실험: 램-디케 트랩 영역 모델링, PDH 초공동 레이저 록킹 시뮬레이션 가상 교구.
  • 한국표준과학연구원(KRISS) 시간표준그룹: 10^-18 광시계 국가 표준기 698nm 레이저 초안정 서보 제어기 실장.