当前位置: 首页>>代码示例>>Python>>正文


Python Data.wt_furnish方法代码示例

本文整理汇总了Python中SUAVE.Structure.Data.wt_furnish方法的典型用法代码示例。如果您正苦于以下问题:Python Data.wt_furnish方法的具体用法?Python Data.wt_furnish怎么用?Python Data.wt_furnish使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在SUAVE.Structure.Data的用法示例。


在下文中一共展示了Data.wt_furnish方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: main

# 需要导入模块: from SUAVE.Structure import Data [as 别名]
# 或者: from SUAVE.Structure.Data import wt_furnish [as 别名]
def main():
    vehicle = SUAVE.Vehicle()# Create the vehicle for testing
    
    # Parameters Required
    vehicle.envelope.ultimate_load                      = 3.5                             # Ultimate load
    vehicle.mass_properties.max_takeoff                 = 79015.8 * Units.kilograms       # Maximum takeoff weight in kilograms
    vehicle.mass_properties.max_zero_fuel               = 79015.8 * 0.9 * Units.kilograms # Maximum zero fuel weight in kilograms
    vehicle.envelope.limit_load                         = 1.5                             # Limit Load
    
    turbofan = SUAVE.Components.Propulsors.TurboFanPASS()
    turbofan.tag = 'Turbo Fan'    
    turbofan.number_of_engines   = 2.                              # Number of engines on the aircraft
    turbofan.thrust.design  = 1000.   * Units.newton    # Define Thrust in Newtons    
    vehicle.append_component(turbofan) 

    vehicle.passengers                                  = 170.                            # Number of passengers
    vehicle.mass_properties.cargo                       = 0.  * Units.kilogram            # Mass of cargo
    vehicle.systems.control                             = "fully powered"                 # Specify fully powered, partially powered or anything else is fully aerodynamic
    vehicle.systems.accessories                         = "medium-range"                  # Specify what type of aircraft you have
    
    vehicle.reference_area                              = 124.862  * Units.meter**2  # Wing gross area in square meters
    wing = SUAVE.Components.Wings.Wing()
    wing.tag = 'Main Wing'
    wing.spans.projected          = 50.      * Units.meter     # Span in meters
    wing.taper                    = 0.2                        # Taper ratio
    wing.thickness_to_chord       = 0.08                       # Thickness-to-chord ratio
    wing.sweep                    = .4363323 * Units.rad       # sweep angle in degrees
    wing.chords.root              = 15.      * Units.meter     # Wing root chord length
    wing.chords.mean_aerodynamic  = 10.      * Units.meters    # Length of the mean aerodynamic chord of the wing
    wing.position                 = [20,0,0] * Units.meters    # Location of main wing from origin of the vehicle
    wing.aerodynamic_center       = [3,0,0]  * Units.meters    # Location of aerodynamic center from origin of the main wing
    vehicle.append_component(wing)
    
    fuselage = SUAVE.Components.Fuselages.Fuselage()
    fuselage.tag = 'Fuselage'    
    fuselage.areas.wetted             = 688.64    * Units.meter**2  # Fuselage wetted area 
    fuselage.differential_pressure    = 55960.5   * Units.pascal    # Maximum differential pressure
    fuselage.width                    = 4.        * Units.meter     # Width of the fuselage
    fuselage.heights.maximum          = 4.        * Units.meter     # Height of the fuselage
    fuselage.lengths.total            = 58.4      * Units.meter     # Length of the fuselage
    fuselage.number_coach_seats       = 200.       
    vehicle.append_component(fuselage)
    
    wing = SUAVE.Components.Wings.Wing()
    wing.tag = 'Horizontal Stabilizer'    
    wing.areas.reference          = 75.     * Units.meters**2 # Area of the horizontal tail
    wing.spans.projected          = 15.     * Units.meters    # Span of the horizontal tail
    wing.sweep                    = 38.     * Units.deg       # Sweep of the horizontal tail
    wing.chords.mean_aerodynamic  = 5.      * Units.meters    # Length of the mean aerodynamic chord of the horizontal tail
    wing.thickness_to_chord       = 0.07                      # Thickness-to-chord ratio of the horizontal tail
    wing.areas.exposed            = 199.7792                  # Exposed area of the horizontal tail
    wing.areas.wetted             = 249.724                   # Wetted area of the horizontal tail
    wing.position                 = [45,0,0]                  # Location of horizontal tail from origin of the vehicle
    wing.aerodynamic_center       = [3,0,0]                   # Location of aerodynamic center from origin of the horizontal tail
    vehicle.append_component(wing)    
    
    wing = SUAVE.Components.Wings.Wing()
    wing.tag = 'Vertical Stabilizer'    
    wing.areas.reference     = 60.     * Units.meters**2 # Area of the vertical tail
    wing.spans.projected     = 15.     * Units.meters    # Span of the vertical tail
    wing.thickness_to_chord  = 0.07                      # Thickness-to-chord ratio of the vertical tail
    wing.sweep               = 40.     * Units.deg       # Sweep of the vertical tail
    wing.t_tail              = "false"                   # Set to "yes" for a T-tail
    vehicle.append_component(wing)   
    
    weight = Tube_Wing.empty(vehicle)
    
    actual = Data()
    actual.payload = 17349.9081525
    actual.pax = 15036.5870655
    actual.bag = 2313.321087
    actual.fuel = -6993.89102491
    actual.empty = 68659.7828724
    actual.wing = 27694.192985
    actual.fuselage = 11504.5186408
    actual.propulsion = 88.3696093424
    actual.landing_gear = 3160.632
    actual.systems = 16655.7076511
    actual.wt_furnish = 7466.1304102
    actual.horizontal_tail = 2191.30720639
    actual.vertical_tail = 5260.75341411
    actual.rudder = 2104.30136565    
    
    error = Data()
    error.payload = (actual.payload - weight.payload)/actual.payload
    error.pax = (actual.pax - weight.pax)/actual.pax
    error.bag = (actual.bag - weight.bag)/actual.bag
    error.fuel = (actual.fuel - weight.fuel)/actual.fuel
    error.empty = (actual.empty - weight.empty)/actual.empty
    error.wing = (actual.wing - weight.wing)/actual.wing
    error.fuselage = (actual.fuselage - weight.fuselage)/actual.fuselage
    error.propulsion = (actual.propulsion - weight.propulsion)/actual.propulsion
    error.landing_gear = (actual.landing_gear - weight.landing_gear)/actual.landing_gear
    error.systems = (actual.systems - weight.systems)/actual.systems
    error.wt_furnish = (actual.wt_furnish - weight.wt_furnish)/actual.wt_furnish
    error.horizontal_tail = (actual.horizontal_tail - weight.horizontal_tail)/actual.horizontal_tail
    error.vertical_tail = (actual.vertical_tail - weight.vertical_tail)/actual.vertical_tail
    error.rudder = (actual.rudder - weight.rudder)/actual.rudder
      
    for k,v in error.items():
#.........这里部分代码省略.........
开发者ID:spendres,项目名称:SUAVE,代码行数:103,代码来源:test_weights.py

示例2: systems

# 需要导入模块: from SUAVE.Structure import Data [as 别名]
# 或者: from SUAVE.Structure.Data import wt_furnish [as 别名]
def systems(num_seats, ctrl_type, S_h, S_v, S_gross_w, ac_type):
    """ output = SUAVE.Methods.Weights.Correlations.Tube_Wing.systems(num_seats, ctrl_type, S_h, S_v, S_gross_w, ac_type)
        Calculate the weight of the different engine systems on the aircraft
    
        Inputs:
            num_seats - total number of seats on the aircraft [dimensionless]
            ctrl_type - specifies if the control system is fully power, partially powered, or not powered [dimensionless]
            S_h - area of the horizontal tail [meters**2]
            S_v - area of the vertical tail [meters**2]
            S_gross_w - area of the wing [meters**2]
            ac_type - determines type of instruments, electronics, and operating items based on type of vehicle [dimensionless]
        
        Outputs:
            output - a data dictionary with fields:
                wt_flt_ctrl - weight of the flight control system [kilograms]
                wt_apu - weight of the apu [kilograms]
                wt_hyd_pnu - weight of the hydraulics and pneumatics [kilograms]
                wt_instruments - weight of the instruments and navigational equipment [kilograms]
                wt_avionics - weight of the avionics [kilograms]
                wt_opitems - weight of the optional items based on the type of aircraft [kilograms]
                wt_elec - weight of the electrical items [kilograms]
                wt_ac - weight of the air conditioning and anti-ice system [kilograms]
                wt_furnish - weight of the furnishings in the fuselage [kilograms]
            
        Assumptions:
                numbers based on FAA regulations and correlations from previous aircraft
    """ 
    # unpack inputs
    sref   = S_gross_w / Units.ft**2 # Convert meters squared to ft squared
    area_h = S_h / Units.ft**2 # Convert meters squared to ft squared
    area_v = S_v / Units.ft**2 # Convert meters squared to ft squared
    
     
    # process
    # Flight Controls Group Wt
    if ctrl_type == "fully powered":       #fully powered controls 
        flt_ctrl_scaler = 3.5
    elif ctrl_type == "partially powered":     #partially powered controls
        flt_ctrl_scaler = 2.5
    else:
        flt_ctrl_scaler = 1.7 # fully aerodynamic controls
    flt_ctrl_wt = (flt_ctrl_scaler*(area_h + area_v)) * Units.lb
     
    # APU Group Wt   
    if num_seats >= 6.:
        apu_wt = 7.0 * num_seats *Units.lb
    else:
        apu_wt = 0.0 * Units.lb #no apu if less than 9 seats
    apu_wt = max(apu_wt,70.)
    # Hydraulics & Pneumatics Group Wt
    hyd_pnu_wt = (0.65 * sref) * Units.lb
     
    # Electrical Group Wt
    elec_wt = (13.0 * num_seats) * Units.lb

    # Furnishings Group Wt
    furnish_wt = ((43.7 - 0.037*min(num_seats,300.))*num_seats + 46.0*num_seats) * Units.lb
    if ac_type == "business":
        furnish_wt = S_fus * 11.
    
    # Environmental Control
    ac_wt = (15.0 * num_seats) * Units.lb

    # Instruments, Electronics, Operating Items based on Type of Vehicle
             
    if ac_type == "short-range": # short-range domestic, austere accomodations
        instruments_wt = 800.0 * Units.lb
        avionics_wt    = 900.0 * Units.lb
        opitems_wt     = 17.0  * num_seats * Units.lb
    elif ac_type == "medium-range": #medium-range domestic
        instruments_wt = 800.0 * Units.lb
        avionics_wt    = 900.0 * Units.lb
        opitems_wt     = 28.0  * num_seats * Units.lb          
    elif ac_type == "long-range": #long-range overwater
        instruments_wt = 1200.0 * Units.lb
        avionics_wt    = 1500.0 * Units.lb
        opitems_wt     = 28.0   * num_seats * Units.lb
        furnish_wt    += 23.0   * num_seats * Units.lb #add aditional seat wt                         
    elif ac_type == "business": #business jet
        instruments_wt = 100.0 * Units.lb
        avionics_wt    = 300.0 * Units.lb
        opitems_wt     = 28.0  * num_seats * Units.lb                     
    elif ac_type == "cargo": #all cargo
        instruments_wt = 800.0  * Units.lb
        avionics_wt    = 900.0  * Units.lb
        elec_wt        = 1950.0 * Units.lb # for cargo a/c  
        opitems_wt     = 56.0   * Units.lb                     
    elif ac_type == "commuter": #commuter
        instruments_wt = 300.0 * Units.lb
        avionics_wt    = 500.0 * Units.lb
        opitems_wt     = 17.0  * num_seats * Units.lb                        
    elif ac_type == "sst": #sst
        instruments_wt = 1200.0 * Units.lb 
        avionics_wt    = 1500.0 * Units.lb
        opitems_wt     = 40.0   * num_seats * Units.lb
        furnish_wt    += 23.0   * num_seats * Units.lb #add aditional seat wt                  
    else:
        instruments_wt = 800.0 * Units.lb 
        avionics_wt    = 900.0 * Units.lb 
        opitems_wt     = 28.0  * num_seats * Units.lb
#.........这里部分代码省略.........
开发者ID:designToolDeveloper,项目名称:SUAVE,代码行数:103,代码来源:systems.py


注:本文中的SUAVE.Structure.Data.wt_furnish方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。