Skip to content

Add opening shock force estimation to Parachute class#1050

Open
Matanski wants to merge 1 commit into
RocketPy-Team:masterfrom
Matanski:ENH/parachute-opening-shock-force-161
Open

Add opening shock force estimation to Parachute class#1050
Matanski wants to merge 1 commit into
RocketPy-Team:masterfrom
Matanski:ENH/parachute-opening-shock-force-161

Conversation

@Matanski

@Matanski Matanski commented Jul 5, 2026

Copy link
Copy Markdown

Summary

Addresses #161 — estimates the peak transient "opening shock" force
experienced by recovery hardware during parachute inflation.

Changes

  • Added opening_shock_coefficient parameter to Parachute.__init__
    (default 1.5, per Knacke's typical range of 1.2–2.0).
  • Added Parachute.calculate_opening_shock_force(air_density, velocity),
    implementing F₀ = Cx · Cd·S · q from Knacke's "Parachute Recovery
    Systems Design Manual" (1992, Section 5.5).
  • Included the new coefficient in to_dict/from_dict with backward-
    compatible defaulting for old serialized data.
  • Added unit tests covering defaults, formula correctness, velocity
    scaling, and serialization round-trip.

Test plan

  • pytest tests/unit/rocket/test_parachute.py — 19 passed
  • Full unit suite: pytest tests/unit — 1546 passed, 12 skipped

Adds an opening_shock_coefficient parameter and a
calculate_opening_shock_force method to estimate the peak transient
force during parachute inflation, following the simplified model in
Knacke's Parachute Recovery Systems Design Manual (1992, Section 5.5).

Closes RocketPy-Team#161
@Matanski Matanski requested a review from a team as a code owner July 5, 2026 12:03
@codecov

codecov Bot commented Jul 5, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 81.43%. Comparing base (1e748d8) to head (61e414a).
⚠️ Report is 3 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #1050      +/-   ##
==========================================
+ Coverage   81.12%   81.43%   +0.30%     
==========================================
  Files         107      107              
  Lines       13881    14030     +149     
==========================================
+ Hits        11261    11425     +164     
+ Misses       2620     2605      -15     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@Gui-FernandesBR

Copy link
Copy Markdown
Member

@Matanski please rebase your work on top of the develop branch, your PR should be targeting develop (not master)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants