summaryrefslogtreecommitdiff
path: root/aircraftstudio/evaluator/lift.py
diff options
context:
space:
mode:
authorblendoit <blendoit@gmail.com>2019-11-01 18:12:34 -0700
committerblendoit <blendoit@gmail.com>2019-11-01 18:12:34 -0700
commit8b6f11119790c8c930734894a37d2a4aaa42462d (patch)
tree9d6b9013ad4522f9a5598f30b4d3a0fcd26810ac /aircraftstudio/evaluator/lift.py
parent5ab73817371c1b4fedbd98838d3cf28984d73004 (diff)
Start work on optimized multiprocessing random a/c gen. & eval.HEADmaster
Diffstat (limited to 'aircraftstudio/evaluator/lift.py')
-rw-r--r--aircraftstudio/evaluator/lift.py30
1 files changed, 30 insertions, 0 deletions
diff --git a/aircraftstudio/evaluator/lift.py b/aircraftstudio/evaluator/lift.py
new file mode 100644
index 0000000..516d649
--- /dev/null
+++ b/aircraftstudio/evaluator/lift.py
@@ -0,0 +1,30 @@
+import numpy as np
+from math import sqrt
+
+
+def _get_lift_rectangular(aircraft, lift=50):
+ L_prime = np.array([
+ lift / (aircraft.wing.semi_span * 2)
+ for _ in range(aircraft.wing.semi_span)
+ ])
+ return L_prime
+
+
+def _get_lift_elliptical(aircraft, L_0=3.2):
+ L_prime = np.array([
+ 0.5 * L_0 / (aircraft.wing.semi_span * 2) *
+ sqrt(1 - (y / aircraft.wing.semi_span)**2)
+ for y in range(aircraft.wing.semi_span)
+ ])
+ return L_prime
+
+
+def get_lift_total(aircraft):
+ """Combination of rectangular and elliptical lift."""
+ # F_z = self._get_lift_rectangular(aircraft) + self._get_lift_elliptical(
+ # aircraft)
+ # F_z = self._get_lift_rectangular(
+ # aircraft) + self._get_lift_elliptical(aircraft) / 2
+ # F_z = [i + j for i, j in self._get_lift_rectangular]
+ # return F_z
+ return 400
Copyright 2019--2024 Marius PETER