BDD:算法层

        classDiagram
    class CR3BP_System {
        <<algorithm>>
        CR3BP 系统定义(质量参数、平动点、Jacobi 常数)
    }
    class Dynamics {
        <<algorithm>>
        通用动力学基类
    }
    class CR3BP_Dynamics {
        <<algorithm>>
        CR3BP 动力学方程与 STM 计算
    }
    CR3BP_Dynamics --> Dynamics : uses
    CR3BP_Dynamics --> CR3BP_System : uses
    class EphemerisSystem {
        <<algorithm>>
        星历系统配置
    }
    EphemerisSystem --> SPICEManager : uses
    class EphemerisDynamics {
        <<algorithm>>
        星历 N 体动力学(遗留,仅供多点射击内部使用)
    }
    EphemerisDynamics --> Dynamics : uses
    EphemerisDynamics --> EphemerisSystem : uses
    class DifferentialCorrection {
        <<algorithm>>
        微分修正问题构造入口
    }
    DifferentialCorrection --> CR3BP_Dynamics : uses
    class CorrectionConfig {
        <<algorithm>>
        修正策略不可变配置
    }
    class symmetric_2d_fixed_x0 {
        <<algorithm>>
        二维对称固定 x0 修正策略
    }
    symmetric_2d_fixed_x0 --> CorrectionConfig : uses
    class symmetric_xz_fixed_z0 {
        <<algorithm>>
        XZ 对称固定 z0 修正策略
    }
    symmetric_xz_fixed_z0 --> CorrectionConfig : uses
    class Continuation {
        <<algorithm>>
        轨道族延拓
    }
    Continuation --> DifferentialCorrection : uses
    class StabilityAnalysis {
        <<algorithm>>
        Floquet 稳定性分析
    }
    StabilityAnalysis --> CR3BP_Dynamics : uses
    class MultipleShooting {
        <<algorithm>>
        多点射击法问题构造入口
    }
    MultipleShooting --> CR3BP_Dynamics : uses
    class compute_F_and_dF_symmetric_xz_plane {
        <<algorithm>>
        XZ 对称约束函数与 Jacobian
    }
    compute_F_and_dF_symmetric_xz_plane --> CR3BP_Dynamics : uses