Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ Attention: The newest changes should be on top -->

### Added

- ENH: Missile DATCOM sensitivity ascents with a 20% CD floor, larger in-envelope axial-force discrepancies from Wu et al. (2019), and ±2% nose-to-CP distance. Three apogee, speed and stability results include apogee ± the largest scenario excursion. These are engineering assumptions motivated by White (1995), not statistical confidence bounds.
- ENH: Reproducible Monte Carlo seeding, and an append that continues the same study [#1187](https://github.com/RocketPy-Team/RocketPy/pull/1187) [#1053](https://github.com/RocketPy-Team/RocketPy/issues/1053) [#1075](https://github.com/RocketPy-Team/RocketPy/issues/1075)
- ENH: 3-DOF single rail button flight phase (tip-off analysis), enabled with the opt-in `Flight(use_udot_rail2=True)`. Between the upper rail button leaving the rail and the lower one following it, the rocket pivots about the lower button under a solved constraint wrench instead of jumping straight to free 6-DOF flight. The window is reported as `between_rails_time`, `between_rails_velocity` and `tip_off_duration`, printed by `Flight.info()` and shaded in the attitude plots. Requires `simulation_mode="6 DOF"` and `equations_of_motion="standard"`. [#920](https://github.com/RocketPy-Team/RocketPy/pull/920)
- ENH: Support fixed-time parachute deployment triggers [#1133](https://github.com/RocketPy-Team/RocketPy/pull/1133) [#437](https://github.com/RocketPy-Team/RocketPy/issues/437)
Expand Down
40 changes: 40 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,11 @@ RocketPy is the next-generation trajectory simulation solution for High-Power Ro
3. **Aerodynamic Models**
- Optional Barrowman equations for lift coefficients
- Easy import of drag coefficients from other sources (e.g., CFD simulations)
- Experimental Missile DATCOM integration with nominal, upper and lower
coefficient sensitivity flights for apogee, ascent speed and stability.
Flight reports show apogee ± the largest scenario departure in meters.
[Usage, assumptions and limitations](docs/user/rocket/datcom.rst) and
[comparison examples](docs/examples/datcom/README.md).

4. **Parachutes with External Trigger Functions**
- Test the exact code that will fly
Expand All @@ -65,6 +70,41 @@ RocketPy is the next-generation trajectory simulation solution for High-Power Ro

These powerful features make RocketPy an indispensable tool for high-power rocket trajectory simulation, catering to enthusiasts, researchers, and engineers in the field of rocketry.

DATCOM flights include two engineering sensitivity ascents around the nominal
prediction. Static wind-axis **CD varies by at least ±20% at every Mach and
AoA**. Within Mach 0.8–3.02 and alpha ±6°, larger axial-force discrepancies
from Wu et al. are used as a CD-error proxy after converting them to the native
prediction's denominator; outside that envelope the excursion is 20%.
**CP varies by ±2% of its distance from the nose**, with static pitching/yawing
moments transferred consistently. Drag is varied along the airflow, preserving
perpendicular force; native damping derivatives are retained. These replace
the earlier independent CN/CM-alpha variations. CP uncertainty is not a
percentage of stability margin. Both powered and coast tables use this rule.

The reference for the design-accuracy discussion is J. T. White (1995),
*An assessment of missile DATCOM prediction accuracy relative to generic
Body+Wing+Tail missile pitch aerodynamics*, AIAA 95-1893,
[doi:10.2514/6.1995-1893](https://doi.org/10.2514/6.1995-1893).
White evaluates CN/CP for Mach 1.5–5.0; his cited preliminary-design criteria
concern normal force and CP relative to body length. **He does not establish
a universal ±20% CD uncertainty or ±2% nose-to-CP uncertainty.** Applying these
two percentages throughout rocket flight is an explicit engineering assumption,
not a result validated by that paper.

The larger drag discrepancies adapt Table 2 of Hanzhou Wu, Min Gao, Weidong
Song, Zhao Jie and Yi Wang (2019), *Accuracy Analysis of Aerodynamic Calculation
of Two-dimensional Ballistic correction Projectile based on Missile Datcom*,
**IOP Conference Series: Materials Science and Engineering 612**, 032096,
[doi:10.1088/1757-899X/612/3/032096](https://doi.org/10.1088/1757-899X/612/3/032096),
under [CC BY 3.0](https://creativecommons.org/licenses/by/3.0/).

Printed apogee ± uncertainty is the largest departure from nominal in the two
correlated scenarios, **not a confidence interval or a guaranteed envelope**.
The comparison discrepancies remain unresolved. See the
[method and limitations](docs/user/rocket/datcom.rst) and
[comparison charts](docs/examples/datcom/README.md). Use
`Flight(..., datcom_uncertainty=False)` to skip the two extra ascents.

## Validation

RocketPy's features have been validated in our latest [research article published in the Journal of Aerospace Engineering](http://dx.doi.org/10.1061/%28ASCE%29AS.1943-5525.0001331).
Expand Down
23 changes: 23 additions & 0 deletions data/rockets/ast_her/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Asteria AST-HER DATCOM example inputs

**Flight status: Asteria / AST-HER has not flown.** All Asteria apogees and trajectories in this example are simulated predictions, not flight measurements or flight validation.

Snapshot from the local `Asteria-Flight-Dynamics` repository on 2026-10-21.
`configuration.json` merges its current input and visualization JSON files;
the provenance section records source paths and SHA-256 hashes of data files.

The configured `input/thrust-curves/opt-ThrustCurve.csv` does not exist, so
`thrust_curve.csv` copies its existing `Optimized_ThrustCurve.csv`. The saved
atmosphere is for 2026-10-20 15:30 UTC. No network request is necessary.

See `docs/examples/datcom/asteria_comparison.ipynb` for the executed comparison
of ordinary RocketPy with native DATCOM. Both retain these motor/tank mass and
inertia inputs and the saved atmosphere. Asteria's supplied ordinary drag curve
is snapshotted in `docs/examples/datcom/comparison_data/asteria_drag_curve.csv`
with its hash recorded. The configured ogive tail is native-DATCOM only;
ordinary RocketPy uses an explicitly noted conical-tail approximation.

The native executable is user supplied. DAMP, powered nozzle-annulus/coast
full-base drag and adaptive Mach/alpha/Reynolds schedules are used. No Asteria
hold-down clamp, PROTUB or recovery model is included. AST-HER has not flown;
these are simulation comparisons, not measured-flight validation.
Loading