feat(reproduce): legacy-test framework + fixed-inlet reproduce pipeline
- Track A (legacy_test): systematic validation scripts for all trained PPO models using LegacyCelerisLab. Each test script rebuilds the exact legacy CFD environment, runs deterministic inference, and compares against SR_analysis reference data using DTW-based comparison. Verified: Karman re100/re50/re200, Vortex lamb/taylor all pass (DTW > 0.95). - Track B (reproduce): Phase 2 open-loop CFD validation + Phase 3 DRL inference using the legacy-compatible config (regularized inlet with neq_damp=1.0, matching the legacy NBB formula). The inlet scheme fix improves new-CFD Karman DTW from 0.916 to 0.943. - Fixes: action_wrapper sign convention docstring, model inventory duplicate entries and missing models, stale config paths in legacy run_all_cases.py/run_illusion_vortex.py, illusion label formatting - Add READMEs and run-all shell scripts for both tracks - Add .gitignore entries for runtime output directories Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -119,8 +119,10 @@ for re_code, name in [(50, "re50"), (200, "re200"), (400, "re400")]:
|
||||
})
|
||||
|
||||
# -- Illusion (three target diameters) ---------------------------------------
|
||||
# Inference geometry (matching uni_test): target at x=31*L0, sensors at x=40*L0
|
||||
# Pinball uses standard geometry (front x=30, rear x=31.3, sensors x=40)
|
||||
# NOTE: The positions below (sensors at 40*L0, pinball at 30/31.3*L0) are the
|
||||
# "unified" inference geometry used by CCD_analysis. The actual training
|
||||
# geometry (legacy_env_imit.py) used sensors at 30*L0 and pinball at 19/20.3*L0.
|
||||
# phase3_reproduce.py and legacy_test scripts use the TRAINING positions.
|
||||
def _illusion_base() -> Dict[str, Any]:
|
||||
return {
|
||||
"scene_id": "illusion",
|
||||
@@ -164,7 +166,7 @@ illusion_entries = [
|
||||
"model": "d1a3o14_250525_imit_1L_2U_600S",
|
||||
"model_subdir": "250525",
|
||||
"target_diameter": 1.0 * L0, # 20
|
||||
"sample_interval": 800, # uni_test used 800 for inference
|
||||
"sample_interval": 600,
|
||||
}),
|
||||
("illusion_15L", {
|
||||
"model": "d1a3o14_250525_imit_15L_2U",
|
||||
|
||||
Reference in New Issue
Block a user