SUAVE  2.5.2
An Aerospace Vehicle Environment for Designing Future Aircraft
Performance

This is a set of basic aircraft performance estimation functions. More...

Functions

def SUAVE.Methods.Performance.electric_payload_range.electric_payload_range (vehicle, mission, cruise_segment_tag, display_plot=True)
 
def SUAVE.Methods.Performance.electric_V_h_diagram.electric_V_h_diagram (vehicle, analyses, CL_max, delta_isa=0., grid_points=20., altitude_ceiling=2e4 *Units.ft, max_speed=130 *Units['m/s'], test_omega=800. *Units.rpm, display_plot=True)
 
def SUAVE.Methods.Performance.estimate_landing_field_length.estimate_landing_field_length (vehicle, analyses, airport)
 
def SUAVE.Methods.Performance.estimate_stall_speed.estimate_stall_speed (vehicle_mass, reference_area, altitude, maximum_lift_coefficient)
 
def SUAVE.Methods.Performance.estimate_take_off_field_length.estimate_take_off_field_length (vehicle, analyses, airport, compute_2nd_seg_climb=0)
 
def SUAVE.Methods.Performance.find_take_off_weight_given_tofl.find_take_off_weight_given_tofl (vehicle, analyses, airport, target_tofl)
 
def SUAVE.Methods.Performance.payload_range.payload_range (vehicle, mission, cruise_segment_tag, reserves=0.)
 
def SUAVE.Methods.Performance.propeller_single_point.propeller_single_point (energy_network, analyses, pitch, omega, altitude, delta_isa, speed, i_prop=0, plots=False, print_results=False)
 
def SUAVE.Methods.Performance.V_n_diagram.V_n_diagram (vehicle, analyses, weight, altitude, delta_ISA)
 

Detailed Description

This is a set of basic aircraft performance estimation functions.

It includes field length and range calculations.

Function Documentation

◆ electric_payload_range()

def SUAVE.Methods.Performance.electric_payload_range.electric_payload_range (   vehicle,
  mission,
  cruise_segment_tag,
  display_plot = True 
)
electric_payload_range(vehicle,
                       mission,
                       cruise_segment_tag,
                       display_plot=True):

    Calculates and optionally displays a payload range diagram for a
    Variable Cruise Distance - State of Charge SUAVE Mission and Vehicle.

    Sources:
    N/A

    Assumptions:

    Assumes use of Battery Propeller Energy Network

    Inputs:

        vehicle                         SUAVE Vehicle Structure
            .mass_properties            SUAVE Mass Properties Structure
                .operating_empty        Vehicle Operating Empty Mass    [kg]
                .max_payload            Vehicle Maximum Payload Mass    [kg]
                .max_takeoff            Vehicle Maximum Takeoff Mass    [kg]

        mission                         SUAVE Mission Structure
            .Variable_Range_Cruise      Mission Type
                .Given_State_of_Charge  Convergence Criteria
            .cruise_tag                 Mission Segment Tag             [String]
            .target_state_of_charge     End Mission State of Charge     [Unitless]

        cruise_segment_tag              mission.cruise_tag              [String]

    Outputs:

        payload_range = Data()
            .range                      [0, Max PLD Range, Ferry Range] [m]
            .payload                    [Max PLD, Max PLD , 0]          [kg]
            .takeoff_weight             [MTOW, MTOW, OEW]               [kg]

◆ electric_V_h_diagram()

def SUAVE.Methods.Performance.electric_V_h_diagram.electric_V_h_diagram (   vehicle,
  analyses,
  CL_max,
  delta_isa = 0.,
  grid_points = 20.,
  altitude_ceiling = 2e4 * Units.ft,
  max_speed = 130 * Units['m/s'],
  test_omega = 800. * Units.rpm,
  display_plot = True 
)
electric_V_h_diagram(vehicle,
                        analyses,
                        delta_isa = 0.,
                        grid_points = 20.,
                        altitude_ceiling = 2e4 * Units.ft,
                        max_speed = 130 * Units['m/s'],
                        test_omega = 800. * Units.rpm,
                        display_plot = True,
                        climb_rate_contours = [0.]
                        ):

    Calculates and optionally displays climb rate and contours thereof over
    a specified airspeed and altitude range. Climb rate determination ref.
    Raymer, "Aircraft Design: A Conceptual Approach"

    Sources:
    D. Raymer, "Aircraft Design: A Conceptual Approach"

    Assumptions:

    Assumes use of Battery Propeller Energy Network

    Inputs:

        vehicle                         SUAVE Vehicle Structure
            .mass_properties
                .takeoff                                            [kg]
        analyses                        SUAVE Analyses Structure
            .atmosphere
                .planet
                    .sea_level_gravity                              [m/s^2]
        delta_isa                       ISA Temperature Offset      [deg. K/C]
        grid_points                     Num. Test Points per Dim.   [Int]
        altitude_ceiling                Maximum Test Altitude       [User Set]
        max_speed                       Maximum Test Speed          [User Set]
        test_omega                      Maximum Power Prop Speed    [User Set]
        display_plot                    Flag for Plot Generation    [Boolean] 

    Outputs:

        climb_rate                      Climb Rates at Test Points  [ft/min]

◆ estimate_landing_field_length()

def SUAVE.Methods.Performance.estimate_landing_field_length.estimate_landing_field_length (   vehicle,
  analyses,
  airport 
)
Computes the landing field length for a given vehicle configuration in a given airport.

Assumptions:
See source
Two wheel trucks (code needed for four wheel trucks also included)

Source:
Torenbeek, E., "Advanced Aircraft Design", 2013 (equation 9.25)

Inputs:
airport.
  atmosphere                           [SUAVE data type]
  altitude                             [m]
  delta_isa                            [K]
vehicle.
  mass_properties.landing              [kg]
  reference_area                       [m^2]
  maximum_lift_coefficient (optional)  [Unitless]

Outputs:
landing_field_length                   [m]

Properties Used:
N/A

◆ estimate_stall_speed()

def SUAVE.Methods.Performance.estimate_stall_speed.estimate_stall_speed (   vehicle_mass,
  reference_area,
  altitude,
  maximum_lift_coefficient 
)
Calculates the stall speed of an aircraft at a given altitude and a maximum lift coefficient.

    Sources:
    N/A

    Assumptions:
    None 

    Inputs:
        vehicle_mass                    vehicle mass             [kg]
        reference_area                  vehicle reference area   [m^2] 
        altitude                        cruise altitude          [m]
        maximum_lift_coefficient        maximum lift coefficient [unitless] 
        
    Outputs: 
        V_stall                         stall speed              [m/s]

◆ estimate_take_off_field_length()

def SUAVE.Methods.Performance.estimate_take_off_field_length.estimate_take_off_field_length (   vehicle,
  analyses,
  airport,
  compute_2nd_seg_climb = 0 
)
Computes the takeoff field length for a given vehicle configuration in a given airport.
Also optionally computes the second segment climb gradient.

Assumptions:
For second segment climb gradient:
One engine inoperative
Only validated for two engine aircraft

Source:
http://adg.stanford.edu/aa241/AircraftDesign.html

Inputs:
analyses.base.atmosphere               [SUAVE data type]
airport.
  altitude                             [m]
  delta_isa                            [K]
vehicle.
  mass_properties.takeoff              [kg]
  reference_area                       [m^2]
  V2_VS_ratio (optional)               [Unitless]
  maximum_lift_coefficient (optional)  [Unitless]
  networks.*.number_of_engines       [Unitless]

Outputs:
takeoff_field_length                   [m]

Properties Used:
N/A

◆ find_take_off_weight_given_tofl()

def SUAVE.Methods.Performance.find_take_off_weight_given_tofl.find_take_off_weight_given_tofl (   vehicle,
  analyses,
  airport,
  target_tofl 
)
Estimates the takeoff weight given a certain takeoff field length.

Assumptions:
assumptions per estimate_take_off_field_length()

Source:
N/A

Inputs:
vehicle.mass_properties.
  operating_empty         [kg]
  max_takeoff             [kg]
  analyses                [SUAVE data structure]
  airport                 [SUAVE data structure]
  target_tofl             [m]
  
Outputs:
max_tow                   [kg]

Properties Used:
N/A

◆ payload_range()

def SUAVE.Methods.Performance.payload_range.payload_range (   vehicle,
  mission,
  cruise_segment_tag,
  reserves = 0. 
)
Calculates a vehicle's payload range diagram. Includes plotting.

Assumptions:
Constant altitude cruise

Source:
N/A

Inputs:
vehicle.mass_properties.
  operating_empty                     [kg]
  max_zero_fuel                       [kg]
  max_takeoff                         [kg]
  max_payload                         [kg]
  max_fuel                            [kg]
  takeoff                             [kg]
mission.segments[0].analyses.weights.
  vehicle.mass_properties.takeoff     [kg]
cruise_segment_tag                    <string>

Outputs:
payload_range.
  range                             [m]
  payload                           [kg]
  fuel                              [kg]
  takeoff_weight                    [kg]
PayloadRangeDiagram.dat (text file)

Properties Used:
N/A

◆ propeller_single_point()

def SUAVE.Methods.Performance.propeller_single_point.propeller_single_point (   energy_network,
  analyses,
  pitch,
  omega,
  altitude,
  delta_isa,
  speed,
  i_prop = 0,
  plots = False,
  print_results = False 
)
propeller_single_point(energy_network,
                          analyses,
                          pitch,
                          omega,
                          altitude,
                          delta_isa,
                          speed,
                          plots=False,
                          print_results=False):

    Uses SUAVE's BEVW propeller model to evaluate propeller performance at a
    single altitude, pitch command, and angular velocity. Can be used indep-
    endently, or as part of creation of a propller maps or flight envelopes.

    Sources:
    N/A

    Assumptions:

    Assumes use of Battery Propeller Energy Network, All Assumptions of
    the BEVW model.

    Inputs:

        energy_network       SUAVE Energy Network
            .propeller       SUAVE Propeller Data Structure

        analyses             SUAVE Analyses Structure
            .atmosphere      SUAVE Atmosphere Analysis Object

        pitch                Propeller Pitch/Collective                    [User Set]
        omega                Test Angular Velocity                         [User Set]
        altitude             Test Altitude                                 [User Set]
        delta_isa            Atmosphere Temp Offset                        [K]
        speed                Propeller Intake Speed                        [User Set]
        HFW                  Flag for use of helical fixed wake for rotor  [Boolean]
        plots                Flag for Plot Generation                      [Boolean]
        print_results        Flag for Terminal Output                      [Boolean]

    Outputs:

        results                             SUAVE Data Object
            .thrust                         BEVW Thrust Prediction      [N]
            .torque                         BEVW Torque Prediction      [N-m]
            .power                          BEVW Power Prediction       [W]
            .power_coefficient              BEVW Cp Prediction          [Unitless]
            .efficiency                     BEVW Efficiency Prediction  [Unitless]
            .induced_axial_velocity         BEVW Ind. V_a Prediction    [m/s]
            .induced_tangential_velocity    BEVW Ind. V_tPrediction     [m/s]
            .radial_distribution            BEVW Radial Stations        [m]
            .thrust_distribution            BEVW T Dist. Prediction     [N/m]
            .torque_distribution            BEVW Q Dist. Prediction     [(N-m)/m]
            .tangential_velocity            BEVW V_t Prediction         [m/s]
            .axial_velocity                 BEVW V_a Prediction         [m/s]

◆ V_n_diagram()

def SUAVE.Methods.Performance.V_n_diagram.V_n_diagram (   vehicle,
  analyses,
  weight,
  altitude,
  delta_ISA 
)
Computes a V-n diagram for a given aircraft and given regulations for ISA conditions

Source:
S. Gudmundsson "General Aviation Aircraft Design: Applied Methods and Procedures", Butterworth-Heinemann; 1 edition
CFR FAR Part 23: https://www.ecfr.gov/cgi-bin/text-idx?SID=0e6a13c7c1de7f501d0eb0a4d71418bd&mc=true&tpl=/ecfrbrowse/Title14/14cfr23_main_02.tpl
CFR FAR Part 25: https://www.ecfr.gov/cgi-bin/text-idx?tpl=/ecfrbrowse/Title14/14cfr25_main_02.tpl

Inputs:
analyses.base.atmosphere               [SUAVE data type]
vehicle.
  reference_area                       [m^2]
  maximum_lift_coefficient             [Unitless]
  minimum_lift_coefficient             [Unitless]
  chords.mean_aerodynamic              [m]
  envelope.FARpart_number              [Unitless]
    limit_loads.positive               [Unitless]
    limit_loads.negative               [Unitless]
    cruise_mach                        [Unitless]
weight                                 [kg]
altitude                               [m]
delta_ISA                              [deg C]

Outputs:
V_n_data

Properties Used:
N/A

Description:
The script creates an aircraft V-n diagram based on the input parameters specified by the user.
Depending on the certification flag, an appropriate diagram, output and log files are created.