Skip to content

Commit f136ffb

Browse files
committed
ENH: added ka property to Parachute class
1 parent 0c434f8 commit f136ffb

File tree

2 files changed

+13
-8
lines changed

2 files changed

+13
-8
lines changed

rocketpy/rocket/parachute.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,12 @@ def __init__(
196196
self.parachute_radius = parachute_radius
197197
self.parachute_height = parachute_height or parachute_radius
198198
self.porosity = porosity
199+
self.ka = 1.068 * (
200+
1
201+
- 1.465 * self.parachute_porosity
202+
- 0.25975 * self.parachute_porosity**2
203+
+ 1.2626 * self.parachute_porosity**3
204+
)
199205

200206
alpha, beta = self.noise_corr
201207
self.noise_function = lambda: alpha * self.noise_signal[-1][

rocketpy/simulation/flight.py

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -777,6 +777,9 @@ def __simulate(self, verbose):
777777
lambda self, parachute_porosity=parachute.porosity: setattr(
778778
self, "parachute_porosity", parachute_porosity
779779
),
780+
lambda self, ka=parachute.ka: setattr(
781+
self, "parachute_ka", ka
782+
),
780783
]
781784
self.flight_phases.add_phase(
782785
node.t + parachute.lag,
@@ -1041,6 +1044,9 @@ def __simulate(self, verbose):
10411044
"parachute_porosity",
10421045
parachute_porosity,
10431046
),
1047+
lambda self, ka=parachute.ka: setattr(
1048+
self, "parachute_ka", ka
1049+
),
10441050
]
10451051
self.flight_phases.add_phase(
10461052
overshootable_node.t + parachute.lag,
@@ -1995,13 +2001,6 @@ def u_dot_parachute(self, t, u, post_processing=False):
19952001
# Get the mass of the rocket
19962002
mp = self.rocket.dry_mass
19972003

1998-
# Define constants
1999-
ka = 1.068 * (
2000-
1
2001-
- 1.465 * self.parachute_porosity
2002-
- 0.25975 * self.parachute_porosity**2
2003-
+ 1.2626 * self.parachute_porosity**3
2004-
)
20052004
# to = 1.2
20062005
# eta = 1
20072006
# Rdot = (6 * R * (1 - eta) / (1.2**6)) * (
@@ -2013,7 +2012,7 @@ def u_dot_parachute(self, t, u, post_processing=False):
20132012

20142013
# Calculate added mass
20152014
ma = (
2016-
ka
2015+
self.ka
20172016
* rho
20182017
* (4 / 3)
20192018
* np.pi

0 commit comments

Comments
 (0)