Skip to content

Latest commit

 

History

History
302 lines (223 loc) · 9.1 KB

File metadata and controls

302 lines (223 loc) · 9.1 KB

工程化升級總結

本文件總結從「功能展示」到「工程可信」的完整升級,以及所有風險表述的修正。


一、已實施的工程化改進

1. V&V(Verification & Validation)框架

Verification(驗算)

  • 守恆檢查:能量、角動量、質量守恆驗證
  • 收斂性測試:不同步長結果一致性
  • 單元測試基準:已知輸入輸出對照

Validation(驗證)

  • 模型適用範圍:明確 Mach/高度/溫度/攻角/Re 範圍
  • 參考案例對照:兩體軌道、ISA、薄壁圓筒等
  • 物理合理性檢查:C_D ≥ 0、高 Mach 波阻上升等

文件verification_validation.py


2. 不確定度治理

  • Monte Carlo 分析:不確定度傳播,輸出 P10/P50/P90
  • 敏感度分析:一階敏感度、Sobol 指標(簡化)
  • 置信度輸出:每個 KPI 的置信區間

文件verification_validation.py(UncertaintyPropagation, SensitivityAnalysis)


3. 數值穩定性

  • 事件系統:事件偵測與處理(最大動壓、過熱、過載等)
  • 自適應步長積分器:Dormand-Prince 5(4)(簡化實現)
  • 模式切換:推進開/關、模型切換

文件event_system.py


4. 座標系與時間系統明確化

  • 時間標準:UTC/UT1/TT/TAI 定義
  • 座標系:ECI/ECEF/NED/BODY 明確定義
  • 地球模型:球形/橢球模型選擇
  • 一致性檢查:座標轉換一致性驗證
  • 風場定義域:明確風場在 NED(相對地表)

文件coordinate_time_system.py


5. 資料契約與版本控管

  • 氣動係數 schema:適用範圍、網格定義、插值方法、外插策略
  • 版本控管:模型版本歷史、變更記錄
  • 物理合理性檢查:C_D ≥ 0、符號一致性等
  • 輸入驗證:自動檢查輸入是否在適用範圍

文件data_contract.py


6. TPS 材料模型與失效判據

  • 材料性質隨溫度:導熱率、比熱、密度
  • 失效判據:玻璃化溫度、熔點、結構上限、黏結層上限
  • 強度折減:屈服強度、彈性模數隨溫度
  • 熱-結構耦合:耦合失效分析

文件tps_materials.py


7. 載荷案例管理

  • 標準載荷案例:最大動壓、最大過載、最大彎矩、熱梯度
  • 裕度報表:自動計算所有案例的裕度
  • 瓶頸定位:找出最小裕度的瓶頸案例

文件load_cases.py


8. 工程化工具

  • 單位系統:強制 SI 單位,單位驗證
  • 日誌系統:模擬日誌記錄
  • 可追溯性:設計決策、需求、驗證結果記錄
  • API Schema:輸入/輸出契約定義

文件engineering_tools.py


二、風險表述修正

修正前(❌ 風險表述)

  1. "專業級精度"

    • 問題:無 V&V 報告、無誤差帶時,此表述在審查時會被直接打回
    • 修正:改為「概念設計級」或「教育研究用途」
  2. "可直接用於設計計算"

    • 問題:未明確適用範圍,可能誤導用於最終設計
    • 修正:改為「概念設計階段性能估算」,並強制輸出適用範圍與誤差帶
  3. "導彈設計框架"

    • 問題:可能將平台定位推向高風險用途
    • 修正:改為「一般飛行器/再入體/探空載具」等中性表述

修正後(✅ 明確表述)

  1. 適用範圍明確化

    • ✅ 概念設計階段
    • ✅ 教育與研究用途
    • ✅ 算法開發與理論驗證
    • ❌ 不適用於最終設計驗證
    • ❌ 不適用於製造級精度
    • ❌ 不適用於認證審查
  2. 限制明確化

    • 未經完整 V&V 驗證
    • 部分模型使用簡化假設
    • 需專業工具交叉驗證
    • 需執行不確定度分析才能得到誤差帶
  3. 中性表述

    • 「一般飛行器設計」
    • 「再入體分析」
    • 「探空載具設計」
    • 避免軍事化定位

三、新增模組清單

模組 功能 狀態
verification_validation.py V&V 框架、不確定度分析、敏感度分析 ✅ 完成
event_system.py 事件偵測、自適應積分器、模式切換 ✅ 完成
coordinate_time_system.py 座標系管理、時間系統、一致性檢查 ✅ 完成
data_contract.py 資料契約、版本控管、輸入驗證 ✅ 完成
tps_materials.py TPS 材料模型、失效判據、強度折減 ✅ 完成
load_cases.py 載荷案例管理、裕度報表 ✅ 完成
engineering_tools.py 單位系統、日誌、可追溯性、API schema ✅ 完成

四、使用流程建議

4.1 模擬前

  1. 定義模型適用範圍

    from verification_validation import ModelApplicability
    applicability = ModelApplicability(name="ISA", M_max=5.0, h_max=86000.0)
  2. 驗證輸入參數

    from engineering_tools import api_contract
    validation = api_contract.validate_inputs("dynamics", **inputs)
  3. 初始化日誌與可追溯性

    from engineering_tools import sim_logger, traceability
    sim_logger.log_simulation_start("sim_001", parameters)

4.2 模擬中

  1. 監控事件

    from event_system import event_detector
    events = event_detector.check_all_events(t, state, aux)
  2. 檢查載荷案例

    from load_cases import load_case_manager
    load_result = load_case_manager.evaluate_all_cases(q, n, M_bend, delta_T, t)
  3. 記錄決策

    traceability.record_decision("選擇推進模式", "滿足 Δv 需求", params)

4.3 模擬後

  1. 執行不確定度分析

    from verification_validation import UncertaintyPropagation
    mc_result = uncertainty.monte_carlo_analysis(func, uncertain_inputs, n_samples=1000)
  2. 敏感度分析

    from verification_validation import SensitivityAnalysis
    sens_result = sensitivity.first_order_sensitivity(func, base_inputs, perturbations)
  3. 生成 V&V 報告

    • 守恆檢查結果
    • 收斂性測試結果
    • 不確定度分析結果(P10/P50/P90)
    • 敏感度分析結果
    • 載荷案例報表
  4. 儲存元數據

    sim_logger.save_metadata("metadata.json")
    traceability.export_traceability("traceability.json")

五、改進前後對比

改進前

  • ❌ 無 V&V 框架
  • ❌ 無不確定度分析
  • ❌ 無事件系統
  • ❌ 座標系定義不明確
  • ❌ 無資料版本控管
  • ❌ TPS 無失效判據
  • ❌ 無載荷案例管理
  • ❌ 無可追溯性
  • ❌ 風險表述("專業級"、"可直接用於設計")

改進後

  • ✅ 完整 V&V 框架
  • ✅ Monte Carlo 不確定度分析(P10/P50/P90)
  • ✅ 敏感度分析(主導誤差來源)
  • ✅ 事件系統(事件偵測與處理)
  • ✅ 自適應步長積分器
  • ✅ 座標系與時間系統明確化
  • ✅ 資料契約與版本控管
  • ✅ TPS 材料模型與失效判據
  • ✅ 載荷案例管理與裕度報表
  • ✅ 工程化工具(單位、日誌、可追溯性)
  • ✅ 風險表述修正(明確適用範圍與限制)

六、後續改進方向

短期(可立即實施)

  1. 擴充單元測試基準(更多已知案例)
  2. 擴充參考案例庫(更多權威來源對照)
  3. 完善事件處理器(更多事件類型)

中期(需額外庫)

  1. 整合 units library(如 pint)
  2. 實現完整 Sobol 敏感度(SALib)
  3. 完善 Dormand-Prince 積分器(完整 Butcher tableau)

長期(系統級改進)

  1. 整合 CI/CD 自動測試
  2. 擴充 V&V 覆蓋率(更多驗證案例)
  3. 實現完整最佳化管線(設計變數、約束管理)

七、重要聲明

適用範圍

  • 概念設計階段:初期設計性能估算
  • 教育研究:教學、科展、研究專題
  • 算法開發:理論驗證、算法開發
  • 最終設計:需專業工具完整驗證
  • 製造級精度:需詳細 CFD/FEA/試驗
  • 認證審查:需完整 V&V 報告

使用要求

  1. 必須執行不確定度分析才能得到誤差帶
  2. 必須標註適用範圍(Mach、高度、溫度等)
  3. 必須記錄設計決策(可追溯性)
  4. 必須與專業工具交叉驗證(實際工程應用)

文檔要求

  • 所有結果需標註「適用範圍」與「誤差帶」
  • 所有模型需標註「版本」與「資料來源」
  • 所有決策需記錄「理由」與「參數」

八、總結

本程式已從「功能展示」升級為「工程可信」框架,具備:

  1. 完整的 V&V 能力:驗算與驗證
  2. 不確定度治理:Monte Carlo 與敏感度分析
  3. 數值穩定性:事件系統與自適應積分
  4. 工程化工具:日誌、可追溯性、資料契約
  5. 明確的適用範圍:概念設計與教育研究
  6. 風險表述修正:避免誤導性表述

這是一個功能完整、理論紮實、具備工程化框架的概念設計與教育研究平台。