本文整理汇总了Python中SUAVE.Core.Data.landing_gear方法的典型用法代码示例。如果您正苦于以下问题:Python Data.landing_gear方法的具体用法?Python Data.landing_gear怎么用?Python Data.landing_gear使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SUAVE.Core.Data
的用法示例。
在下文中一共展示了Data.landing_gear方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: empty
# 需要导入模块: from SUAVE.Core import Data [as 别名]
# 或者: from SUAVE.Core.Data import landing_gear [as 别名]
def empty(config,
speed_of_sound = 340.294,
max_tip_mach = 0.65,
disk_area_factor = 1.15,
max_thrust_to_weight_ratio = 1.1,
motor_efficiency = 0.85 * 0.98):
"""weight = SUAVE.Methods.Weights.Buildups.Electric_Stopped_Rotor.empty(
config,
speed_of_sound = 340.294,
max_tip_mach = 0.65,
disk_area_factor = 1.15,
max_thrust_to_weight_ratio = 1.1,
motor_efficiency = 0.85 * 0.98)
Calculates the empty fuselage mass for an electric stopped rotor including
seats, avionics, servomotors, ballistic recovery system, rotor and hub
assembly, transmission, and landing gear. Additionally incorporates
results of the following common buildup scripts:
fuselage,py
prop.py
wing.py
wiring.py
Originally written as part of an AA 290 project inteded for trade study
of the Electric Stopped Rotor along with the following defined SUAVE config types:
Electric Helicopter
Electric Tiltrotor
Sources:
Project Vahana Conceptual Trade Study
Inputs:
config SUAVE Config Data Structure
speed_of_sound Local Speed of Sound [m/s]
maximumTipMach Allowable Tip Mach Number [Unitless]
disk_area_factor Inverse of Disk Area Efficiency [Unitless]
max_thrust_to_weight_ratio Allowable Thrust to Weight Ratio [Unitless]
motor_efficiency Motor Efficiency [Unitless]
Outputs:
output: Data Dictionary of Component Masses [kg]
"""
output = Data()
#-------------------------------------------------------------------------------
# Unpack Inputs
#-------------------------------------------------------------------------------
rProp = config.propulsors.network.propeller.prop_attributes.tip_radius
mBattery = config.propulsors.network.battery.mass_properties.mass
mPayload = config.propulsors.network.payload.mass_properties.mass
MTOW = config.mass_properties.max_takeoff
nLiftProps = config.propulsors.network.number_of_engines/2
nThrustProps = config.propulsors.network.number_of_engines/2
nLiftBlades = config.propulsors.network.propeller.prop_attributes.number_blades
nThrustBlades = config.propulsors.network.propeller.prop_attributes.number_blades
fLength = config.fuselages.fuselage.lengths.total
fWidth = config.fuselages.fuselage.width
fHeight = config.fuselages.fuselage.heights.maximum
maxSpan = config.wings['main_wing'].spans.projected
sound = speed_of_sound
tipMach = max_tip_mach
k = disk_area_factor
ToverW = max_thrust_to_weight_ratio
etaMotor = motor_efficiency
output.payload = mPayload * Units.kg
output.seats = 30. *Units.kg
output.avionics = 15. *Units.kg
output.motors = config.propulsors.network.number_of_engines * 10. *Units.kg
output.battery = mBattery *Units.kg
output.servos = config.propulsors.network.number_of_engines * 0.65 *Units.kg
output.brs = 16. *Units.kg
output.hubs = config.propulsors.network.number_of_engines * 2. *Units.kg
output.landing_gear = MTOW * 0.02 *Units.kg
#-------------------------------------------------------------------------------
# Calculated Weights
#-------------------------------------------------------------------------------
# Preparatory Calculations
Vtip = sound * tipMach # Prop Tip Velocity
omega = Vtip/0.8 # Prop Ang. Velocity
maxLift = config.mass_properties.max_takeoff * ToverW # Maximum Thrust
Ct = maxLift/(1.225*np.pi*0.8**2*Vtip**2) # Thrust Coefficient
bladeSol = 0.1 # Blade Solidity
AvgCL = 6 * Ct / bladeSol # Average Blade CL
AvgCD = 0.012 # Average Blade CD
maxLiftPower = 1.15*maxLift*(
k*np.sqrt(maxLift/(2*1.225*np.pi*0.8**2)) +
bladeSol*AvgCD/8*Vtip**3/(maxLift/(1.225*np.pi*0.8**2))
#.........这里部分代码省略.........
示例2: main
# 需要导入模块: from SUAVE.Core import Data [as 别名]
# 或者: from SUAVE.Core.Data import landing_gear [as 别名]
def main():
vehicle = vehicle_setup()
weight = Tube_Wing.empty(vehicle)
# regression values
actual = Data()
actual.payload = 27349.9081525 #includes cargo #17349.9081525 #without cargo
actual.pax = 15036.587065500002
actual.bag = 2313.3210870000003
actual.fuel = 12977.803363592691 #includes cargo #22177.6377131 #without cargo
actual.empty = 38688.08848390731
actual.wing = 6649.709658738429
actual.fuselage = 6642.061164271899
actual.propulsion = 6838.185174956626
actual.landing_gear = 3160.632
actual.systems = 13479.10479056802
actual.wt_furnish = 6431.80372889
actual.horizontal_tail = 1037.7414196819743
actual.vertical_tail = 629.0387683502595
actual.rudder = 251.61550734010382
# error calculations
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.systems_breakdown.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
print('Results (kg)')
print(weight)
print('Relative Errors')
print(error)
for k,v in list(error.items()):
assert(np.abs(v)<1E-6)
#General Aviation weights; note that values are taken from Raymer,
#but there is a huge spread among the GA designs, so individual components
#differ a good deal from the actual design
vehicle = vehicle_setup_general_aviation()
GTOW = vehicle.mass_properties.max_takeoff
weight = General_Aviation.empty(vehicle)
weight.fuel = vehicle.fuel.mass_properties.mass
actual = Data()
actual.bag = 0.
actual.empty = 618.485310343
actual.fuel = 144.69596603
actual.wing = 124.673093906
actual.fuselage = 119.522072873
actual.propulsion = 194.477769922 #includes power plant and propeller, does not include fuel system
actual.landing_gear = 44.8033840543+5.27975390045
actual.furnishing = 37.8341395817
actual.electrical = 36.7532226254
actual.control_systems = 14.8331955546
actual.fuel_systems = 15.6859717453
actual.systems = 108.096549345
error = Data()
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_main+weight.landing_gear_nose))/actual.landing_gear
error.furnishing = (actual.furnishing-weight.systems_breakdown.furnish)/actual.furnishing
error.electrical = (actual.electrical-weight.systems_breakdown.electrical)/actual.electrical
error.control_systems = (actual.control_systems-weight.systems_breakdown.control_systems)/actual.control_systems
error.fuel_systems = (actual.fuel_systems-weight.systems_breakdown.fuel_system)/actual.fuel_systems
error.systems = (actual.systems - weight.systems)/actual.systems
print('actual.systems=', actual.systems)
print('General Aviation Results (kg)')
print(weight)
print('Relative Errors')
print(error)
for k,v in list(error.items()):
assert(np.abs(v)<1e-6)
# BWB WEIGHTS
vehicle = bwb_setup()
weight = BWB.empty(vehicle)
# regression values
actual = Data()
#.........这里部分代码省略.........
示例3: main
# 需要导入模块: from SUAVE.Core import Data [as 别名]
# 或者: from SUAVE.Core.Data import landing_gear [as 别名]
def main():
vehicle = vehicle_setup()
weight = Tube_Wing.empty(vehicle)
# regression values
actual = Data()
actual.payload = 27349.9081525 #includes cargo #17349.9081525 #without cargo
actual.pax = 15036.587065500002
actual.bag = 2313.3210870000003
actual.fuel = 12990.957450008464 #includes cargo #22177.6377131 #without cargo
actual.empty = 38674.934397491539
actual.wing = 6649.7096587384294
actual.fuselage = 6642.0611642718986
actual.propulsion = 6838.1851749566231
actual.landing_gear = 3160.632
actual.systems = 13479.10479056802
actual.wt_furnish = 6431.80372889
actual.horizontal_tail = 1024.5873332662029
actual.vertical_tail = 629.03876835025949
actual.rudder = 251.61550734010382
# error calculations
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.systems_breakdown.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
print 'Results (kg)'
print weight
print 'Relative Errors'
print error
for k,v in error.items():
assert(np.abs(v)<1E-6)
#General Aviation weights; note that values are taken from Raymer,
#but there is a huge spread among the GA designs, so individual components
#differ a good deal from the actual design
vehicle = vehicle_setup_general_aviation()
GTOW = vehicle.mass_properties.max_takeoff
weight = General_Aviation.empty(vehicle)
weight.fuel = vehicle.fuel.mass_properties.mass
actual = Data()
actual.bag = 0.
actual.empty = 618.485310343
actual.fuel = 144.69596603
actual.wing = 124.673093906
actual.fuselage = 119.522072873
actual.propulsion = 194.477769922 #includes power plant and propeller, does not include fuel system
actual.landing_gear = 44.8033840543+5.27975390045
actual.furnishing = 37.8341395817
actual.electrical = 36.7532226254
actual.control_systems = 14.8331955546
actual.fuel_systems = 15.6859717453
actual.systems = 108.096549345
error = Data()
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_main+weight.landing_gear_nose))/actual.landing_gear
error.furnishing = (actual.furnishing-weight.systems_breakdown.furnish)/actual.furnishing
error.electrical = (actual.electrical-weight.systems_breakdown.electrical)/actual.electrical
error.control_systems = (actual.control_systems-weight.systems_breakdown.control_systems)/actual.control_systems
error.fuel_systems = (actual.fuel_systems-weight.systems_breakdown.fuel_system)/actual.fuel_systems
error.systems = (actual.systems - weight.systems)/actual.systems
print 'actual.systems=', actual.systems
print 'General Aviation Results (kg)'
print weight
print 'Relative Errors'
print error
for k,v in error.items():
assert(np.abs(v)<1e-6)
return
示例4: main
# 需要导入模块: from SUAVE.Core import Data [as 别名]
# 或者: from SUAVE.Core.Data import landing_gear [as 别名]
#.........这里部分代码省略.........
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.origin = [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.origin = [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 = -13680.6265874
actual.empty = 75346.5184349
actual.wing = 27694.192985
actual.fuselage = 11423.9380852
actual.propulsion = 6855.68572746
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.systems_breakdown.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
print 'Results (kg)'
print weight
print 'Relative Errors'
print error
for k,v in error.items():
assert(np.abs(v)<0.001)
return
示例5: main
# 需要导入模块: from SUAVE.Core import Data [as 别名]
# 或者: from SUAVE.Core.Data import landing_gear [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.design_thrust = 200. * 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.origin = [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.origin = [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():
#.........这里部分代码省略.........