diff options
Diffstat (limited to 'creator/base.py')
-rw-r--r-- | creator/base.py | 30 |
1 files changed, 22 insertions, 8 deletions
diff --git a/creator/base.py b/creator/base.py index ad4c443..130add3 100644 --- a/creator/base.py +++ b/creator/base.py @@ -1,10 +1,12 @@ """The base.py module contains parent classes for components.""" import numpy as np -import sys import os.path +import random import logging +import creator + logging.basicConfig(filename='log_base.txt', level=logging.DEBUG, format='%(asctime)s - %(levelname)s - %(message)s') @@ -12,18 +14,29 @@ logging.basicConfig(filename='log_base.txt', class Aircraft: """This class tracks all sub-components and is fed to the evaluator.""" - def __init__(self, evaluator, name): - evaluator.aircrafts.append(self) - self.evaluator = evaluator - self.name = name - self.fuselage = None - self.propulsion = None - self.wing = None + name = None + fuselage = None + propulsion = None + wing = None + properties = {} + + def __init__(self): self.results = {} def __str__(self): return self.name + @classmethod + def from_default(cls): + aircraft = creator.base.Aircraft() + aircraft.name = 'default_aircraft_' + str(random.randrange(1000, 9999)) + airfoil = creator.wing.Airfoil(aircraft, 'default_airfoil') + airfoil.add_naca(2412) + soar1 = creator.wing.Spar(airfoil, 'default_spar_1', 0.30) + soar2 = creator.wing.Spar(airfoil, 'default_spar_2', 0.60) + stringer = creator.wing.Stringer(airfoil, 'default_stringer') + return aircraft + class Component: """Basic component providing coordinates, tools and a component tree.""" @@ -35,6 +48,7 @@ class Component: self.y = np.array([]) self.material = None self.mass = float() + self.properties = {} def __str__(self): return self.name |