def build_data_r(v): tv = type(v) # Get value type # Transform to SUAVE data structure with appropriate types if tv == OrderedDict: keys = v.keys() # Recursively assign values ret = DataOrdered() for k in keys: k = str(k) ret[k] = build_data_r(v[k]) elif tv == list: ret = np.array(v) elif (tv == unicode): ret = str(v) elif (tv == bool): ret = v elif tv == type(None): ret = None elif (tv == float) or (tv == int): ret = v else: raise TypeError('Data type not expected in SUAVE JSON structure') return ret
def __defaults__(self): """This sets the default values. Assumptions: None Source: N/A Inputs: None Outputs: None Properties Used: None """ self.tag = 'vehicle' self.fuselages = Components.Fuselages.Fuselage.Container() self.wings = Components.Wings.Wing.Container() self.networks = Components.Energy.Networks.Network.Container() self.nacelles = Components.Nacelles.Nacelle.Container() self.systems = Components.Systems.System.Container() self.mass_properties = Vehicle_Mass_Container() self.payload = Components.Payloads.Payload.Container() self.costs = Costs() self.envelope = Components.Envelope() self.landing_gear = Components.Landing_Gear.Landing_Gear.Container() self.reference_area = 0.0 self.passengers = 0.0 self.performance = DataOrdered()
def __defaults__(self): """ This sets the default values. Assumptions: Puts the segments in the right order Source: N/A Inputs: None Outputs: None Properties Used: None """ self.segments = DataOrdered()
class Container(State): def __defaults__(self): """ This sets the default values. Assumptions: Puts the segments in the right order Source: N/A Inputs: None Outputs: None Properties Used: None """ self.segments = DataOrdered() def merged(self): """ Combines the states of multiple segments Assumptions: None Source: N/A Inputs: None Outputs: state_out [State()] Properties Used: None """ state_out = State() for i, (tag, sub_state) in enumerate(self.segments.items()): for key in ['unknowns', 'conditions', 'residuals']: if i == 0: state_out[key].update(sub_state[key]) else: state_out[key] = state_out[key].do_recursive( append_array, sub_state[key]) return state_out
class Container(State): def __defaults__(self): """ This sets the default values. Assumptions: Puts the segments in the right order Source: N/A Inputs: None Outputs: None Properties Used: None """ self.segments = DataOrdered() def merged(self): """ Combines the states of multiple segments Assumptions: None Source: N/A Inputs: None Outputs: state_out [State()] Properties Used: None """ state_out = State() for i,(tag,sub_state) in enumerate(self.segments.items()): for key in ['unknowns','conditions','residuals']: if i == 0: state_out[key].update(sub_state[key]) else: state_out[key] = state_out[key].do_recursive(append_array,sub_state[key]) return state_out
class Container(State): def __defaults__(self): self.segments = DataOrdered() def merged(self): state_out = State() for i, (tag, sub_state) in enumerate(self.segments.items()): for key in ['unknowns', 'conditions', 'residuals']: if i == 0: state_out[key].update(sub_state[key]) else: state_out[key] = state_out[key].do_recursive( append_array, sub_state[key]) return state_out
def build_data_r(v): """Builds a SUAVE data structure based on a dictionary from a JSON file. This is recursive step. Assumptions: Dictionary was created based on a previously saved SUAVE data structure. Source: N/A Inputs: v generic value Outputs: ret value converted to needed format Properties Used: N/A """ tv = type(v) # Get value type # Transform to SUAVE data structure with appropriate types if tv == OrderedDict: keys = v.keys() # Recursively assign values ret = DataOrdered() for k in keys: k = str(k) ret[k] = build_data_r(v[k]) elif tv == list: ret = np.array(v) elif (tv == unicode): ret = str(v) elif (tv == bool): ret = v elif tv == type(None): ret = None elif (tv == float) or (tv == int): ret = v else: raise TypeError('Data type not expected in SUAVE JSON structure') return ret
def __defaults__(self): """This sets the default values. Assumptions: None Source: N/A Inputs: None Outputs: None Properties Used: None """ self.tag = 'Lofted_Body' self.Segments = DataOrdered() # think edges
def __defaults__(self): self.tag = 'Lofted_Body' self.Segments = DataOrdered() # think edges self.Sections = SectionContainer() # think nodes
def __defaults__(self): self.segments = DataOrdered()