Add Astra example: ascent+descent validation, hazard zone & abort#72
Merged
Conversation
A km-scale real-flight example built on RocketPy's "Astra" (Faraday Rocketry UPV, EuRoC 2022; Cesaroni 4263L1350-P, apogee ~3.25 km). Unlike the existing validation examples it validates trochia on BOTH legs of the flight: the recovery did not deploy cleanly, so the measured descent is near ballistic and can be checked against real data, not just the apogee. What it shows: - validation vs the measured trajectory (measured.dat): apogee 3260 m vs measured 3249 m (+0.3 %, t 25.0 s vs ~24 s); the as-flown partial-recovery descent reproduced to ~70 m over the 3.2 km fall (effective recovery CdA). - Cd sensitivity: a still-air Cd sweep shows the measured apogee selects a flight-averaged constant Cd ~ 0.55 (the transonic drag rise folded into one number; the rocket reaches ~Mach 0.88 at burnout). - hazard zone (落下分散) + abort (途中破談): a wind-direction sweep over four contingency scenarios (nominal dual-deploy / recovery-failure ballistic / motor-cutoff / cato) -> one landing footprint each, on an OSM basemap of the EuRoC site (Ponte de Sor) with the measured GPS track overlaid. Uses the 12 m rail / 84 deg / 133 deg launch geometry now expressible via the config [launcher] length & azimuth. Files: config.toml (hazard+abort), config-validation.toml (still-air reconstruction), measured.dat / measured-track.dat (RocketPy flight data, GPS dropout fixes removed), fetch-engine.sh, run.sh, the gnuplot scripts + footprints-map.py, and the four committed result plots. Also cites the example from the repo and examples READMEs. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LiKBVgTqjZV84zcMVY3w46
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
概要
RocketPy の検証用ロケット "Astra"(Faraday Rocketry UPV / EuRoC 2022,
市販 Cesaroni 4263L1350-P, apogee ~3.25 km)を題材にした km スケールの
実飛行 example。既存の検証 example と違い、上昇と降下の両方を実測と
照合できるのが要点です(Astra は回収がうまく展開せず降下がほぼ弾道だったため、
apogee だけでなく降下も実データで検証できる)。
内容
1. 妥当性検証(実測トラジェクトリと比較)
config-validation.toml(無風で実飛行を再構成)降下は「回収部分展開」を有効 CdA としてキャリブレートし、実測記録が終わる
~145 m AGL まで ~70 m(約 2 %)で一致。
2. Cd 感度
無風で定数 Cd をスイープ → 実測 apogee が apogee を合わせる有効定数 Cd ≈ 0.55
を選ぶことを示す(遷音速の抗力上昇を 1 つの定数に畳み込み。燃焼終了で約 Mach 0.88)。
3. 警戒区域(落下分散)+ 途中破談
config.toml:風向スイープ × 4 シナリオ(nominal=dual deploy / recovery-failure=弾道 / motor-cutoff / cato)→ シナリオごとの着地 footprint。打上げは 84° / 方位 133°
に傾けてあり、各 footprint は 133° 方向にバイアス。
EuRoC サイト(Ponte de Sor)の OSM 地図に実測 GPS トラックを重ねて表示:
モデル上の注意(README に明記)
recovery-failureシナリオは parachute なし(実飛行の部分回収より厳しい弾道)。massは装填エンジンを除いた機体質量(9.10 kg)。エンジンは.engから(装填 3.57 kg / 推進剤 2.02 kg)→ 離昇 12.67 kg は RocketPy モデルと一致。
catoは単体飛翔(推力停止+回収無効)で、破片分散モデルではない。実行
run.shは通しで動作し、4 つの図がすべてバイト単位で同一に再生成される(差分ゼロ)。🤖 Generated with Claude Code