total_fuel = ac.weights.mfw tow = ac.weights.owe + total_fuel ac.zero_payload_mission.tow = tow ac.zero_payload_mission.total_fuel = total_fuel range, payload, block_fuel, block_time = sub_proc.mission_fuel_limited( ac, tow, total_fuel, altp, mach, disa) ac.zero_payload_mission.range = range ac.zero_payload_mission.block_fuel = block_fuel ac.zero_payload_mission.block_time = block_time print("-------------------------------------------") print("Payload-Range analysis : done") print("-------------------------------------------") print("Propeller =", ac.turboprop_engine.propeller_diameter) # airplane 3D view #------------------------------------------------------------------------------------------------------ print("-------------------------------------------") print("3 view drawing : launched") show.draw_3d_view(ac, "sequence deployed", "This plane") file_name = "Aircraft.pkl" output = open(file_name, "wb") pickle.dump(ac, output) output.close()
mtow_req = aircraft.weights.owe + aircraft.nominal_mission.payload + aircraft.nominal_mission.total_fuel # Print relevant data #------------------------------------------------------------------------------------------------------ delta_mtow = mtow_i - mtow_req # Should be positive or zero print("") print("MTOW required = ", "%.0f" % mtow_req, " kg") print("Delta MTOW = ", "%.2f" % delta_mtow, " kg (Should be positive or zero)") disa = 0 altp = aircraft.design_driver.ref_cruise_altp mach = aircraft.design_driver.cruise_mach vtas = earth.vtas_from_mach(altp, disa, mach) print("") print("Wing mass = ", "%.2f" % aircraft.wing.mass, " kg") print("Wing span = ", "%.2f" % aircraft.wing.span, " m") print("Wing aspect ratio = ", "%.2f" % aircraft.wing.aspect_ratio, " no_dim") print("") print("True air speed = ", "%.2f" % unit.kt_mps(vtas), " kt") print("Fuel mission = ", "%.2f" % aircraft.nominal_mission.block_fuel, " kg") print("LoD cruise (LoD max) = ", "%.2f" % aircraft.high_speed.cruise_lod, " no_dim") print("SFC cruise = ", "%.3f" % (aircraft.high_speed.cruise_sfc * 36000), " kg/daN/h") # airplane 3D view #------------------------------------------------------------------------------------------------------ show.draw_3d_view(aircraft, "study_n1", "This plane")
print("Vertical speed required with MCR rating = ","%.1f"%unit.ftpmin_mps(aircraft.high_speed.req_vz_cruise)," ft/min") print("Vertical speed effective with MCR rating = ","%.1f"%unit.ftpmin_mps(aircraft.high_speed.eff_vz_cruise)," ft/min") print("") print("Time to climb required = ","%.1f"%unit.min_s(aircraft.high_speed.req_ttc)," min") print("Time to climb effective = ","%.1f"%unit.min_s(aircraft.high_speed.eff_ttc)," min") # """ print("") print("--------------------------------------------------------------") print("MTOW = ","%.0f"%aircraft.weights.mtow," kg") print("Cost mission fuel = ","%.1f"%aircraft.cost_mission.block_fuel," kg") print("Cash Operating Cost = ","%.1f"%aircraft.economics.cash_operating_cost," $/trip") print("Carbon dioxid emission = ","%.1f"%(aircraft.cost_mission.block_CO2)," kg/trip") print("Fuel efficiency metric = ","%.4f"%(aircraft.environmental_impact.CO2_metric*1e7)," 10-7kg/km/m0.48") """ # airplane 3D view #------------------------------------------------------------------------------------------------------ show.draw_3d_view(aircraft,"study_n5",study_name) #aircraft.export_to_ini_file("output_mda3") # """ e_power = 1.0e6 for i in range(0, 4, 1): # 100k/200k #for i in range(160, 200, 1): # e_power = 100000+i aircraft.power_elec_chain.overall_efficiency = 0.60+i/10
perform.handling_qualities_analysis(aircraft) print("-------------------------------------------") print("Handling qualities analysis : done") print("") print("Rayon d'action demandé = ","%.0f"%unit.NM_m(aircraft.design_driver.design_range)," NM") print(" . . . . . . . effectif = ","%.0f"%unit.NM_m(aircraft.nominal_mission.range)," NM") print("") print("Longueur de piste au décollage demandée = "+"%.0f"%aircraft.low_speed.req_tofl+" m") print(" . . . . . . . . . . . . . . . effective = "+"%.0f"%aircraft.low_speed.eff_tofl+" m") print("") print("Vitesse d'approche demandée = "+"%.1f"%unit.kt_mps(aircraft.low_speed.req_app_speed)+" kt") print(" . . . . . . . . . effective = "+"%.1f"%unit.kt_mps(aircraft.low_speed.eff_app_speed)+" kt") print("") print("Vitesse de monté demandé = "+"%.1f"%unit.ftpmin_mps(aircraft.high_speed.req_vz_climb)+" ft/min") print(" . . . . . . . . effective = "+"%.1f"%unit.ftpmin_mps(aircraft.high_speed.eff_vz_climb)+" ft/min") print("") print("Temps de monté demandé = "+"%.1f"%unit.min_s(aircraft.high_speed.req_ttc)+" min") print(" . . . . . . . effectif = "+"%.1f"%unit.min_s(aircraft.high_speed.eff_ttc)+" min") print("") print("Coût d'un voyage = "+"%.0f"%aircraft.economics.direct_operating_cost+" $") # airplane 3D view #------------------------------------------------------------------------------------------------------ print("-------------------------------------------") print("3 view drawing : launched") show.draw_3d_view(aircraft,"sequence packaged","This plane")
print("Rayon d'action demandé = ", "%.0f" % unit.NM_m(aircraft.design_driver.design_range), " NM") print(" . . . . . . effectif = ", "%.0f" % unit.NM_m(aircraft.nominal_mission.range), " NM") print("") print("Longueur de piste au décollage demandée = " + "%.0f" % aircraft.low_speed.req_tofl + " m") print(" . . . . . . . . . . . . . . effective = " + "%.0f" % aircraft.low_speed.eff_tofl + " m") print("") print("Vitesse d'approche demandée = " + "%.1f" % unit.kt_mps(aircraft.low_speed.req_app_speed) + " kt") print(" . . . . . . . . effective = " + "%.1f" % unit.kt_mps(aircraft.low_speed.eff_app_speed) + " kt") print("") print("Vitesse de monté demandé = " + "%.1f" % unit.ftpmin_mps(aircraft.high_speed.req_vz_climb) + " ft/min") print(" . . . . . . . effective = " + "%.1f" % unit.ftpmin_mps(aircraft.high_speed.eff_vz_climb) + " ft/min") print("") print("Temps de monté demandé = " + "%.1f" % unit.min_s(aircraft.high_speed.req_ttc) + " min") print(" . . . . . . effectif = " + "%.1f" % unit.min_s(aircraft.high_speed.eff_ttc) + " min") print("") print("Coût d'un voyage = " + "%.0f" % aircraft.economics.direct_operating_cost + " $") print("COC = " + "%.0f" % aircraft.economics.cash_operating_cost + " $") show.draw_3d_view(aircraft, "Test", "My plane")