def test_Vstall(self): t0 = time.clock() print("time start= ", t0) atmosphere = Atmosphere() earth = Earth() print( '==================== Stall Speed according to airport field elevation ==================== ' + time.strftime("%c")) acBd = BadaAircraftDatabase() aircraftICAOcode = 'B743' if acBd.read(): if (acBd.aircraftExists(aircraftICAOcode) and acBd.aircraftPerformanceFileExists( acBd.getAircraftPerformanceFile(aircraftICAOcode))): print( '==================== aircraft found ==================== ' + time.strftime("%c")) aircraft = BadaAircraft( ICAOcode=aircraftICAOcode, aircraftFullName=acBd.getAircraftFullName( aircraftICAOcode), badaPerformanceFilePath=acBd.getAircraftPerformanceFile( aircraftICAOcode), atmosphere=atmosphere, earth=earth) aircraft.dump() print('==================== Airport database ==================== ' + time.strftime("%c")) airportsDB = AirportsDatabase() assert airportsDB.read() for airport in airportsDB.getAirports(): print('============' + airport.getName() + ' ============') #print airport aircraft = BadaAircraft( ICAOcode=aircraftICAOcode, aircraftFullName=acBd.getAircraftFullName(aircraftICAOcode), badaPerformanceFilePath=acBd.getAircraftPerformanceFile( aircraftICAOcode), atmosphere=atmosphere, earth=earth) print('airport field elevation= {0:.2f} meters'.format( airport.getFieldElevationAboveSeaLevelMeters())) CAS = aircraft.computeStallSpeedCasKnots() print('V stall Calibrated AirSpeed= {0:.2f} knots'.format(CAS)) TAS = cas2tas( cas=CAS, altitude=airport.getFieldElevationAboveSeaLevelMeters(), temp='std', speed_units='kt', alt_units='m', temp_units=default_temp_units, ) print('V stall True AirSpeed= {0:.2f} knots'.format(TAS))
def test_Vstall(self): t0 = time.clock() print "time start= ", t0 atmosphere = Atmosphere() earth = Earth() print '==================== Stall Speed according to airport field elevation ==================== '+ time.strftime("%c") acBd = BadaAircraftDatabase() aircraftICAOcode = 'B743' if acBd.read(): if ( acBd.aircraftExists(aircraftICAOcode) and acBd.aircraftPerformanceFileExists(acBd.getAircraftPerformanceFile(aircraftICAOcode))): print '==================== aircraft found ==================== '+ time.strftime("%c") aircraft = BadaAircraft(ICAOcode = aircraftICAOcode, aircraftFullName = acBd.getAircraftFullName(aircraftICAOcode), badaPerformanceFilePath = acBd.getAircraftPerformanceFile(aircraftICAOcode), atmosphere = atmosphere, earth = earth) aircraft.dump() print '==================== Airport database ==================== '+ time.strftime("%c") airportsDB = AirportsDatabase() assert airportsDB.read() for airport in airportsDB.getAirports(): print '============' + airport.getName() + ' ============' #print airport aircraft = BadaAircraft(ICAOcode = aircraftICAOcode, aircraftFullName = acBd.getAircraftFullName(aircraftICAOcode), badaPerformanceFilePath = acBd.getAircraftPerformanceFile(aircraftICAOcode), atmosphere = atmosphere, earth = earth) print 'airport field elevation= {0:.2f} meters'.format( airport.getFieldElevationAboveSeaLevelMeters()) CAS = aircraft.computeStallSpeedCasKnots() print 'V stall Calibrated AirSpeed= {0:.2f} knots'.format(CAS) TAS = cas2tas(cas = CAS , altitude = airport.getFieldElevationAboveSeaLevelMeters(), temp = 'std', speed_units = 'kt', alt_units = 'm', temp_units=default_temp_units, ) print 'V stall True AirSpeed= {0:.2f} knots'.format(TAS)
print(' ================== great circle =============== ') greatCircle = GreatCircleRoute(departureAirport, arrivalAirport) greatCircle.computeGreatCircle() print('great circle length= ' + str(greatCircle.computeLengthMeters()) + ' meters') initialEdge = greatCircle.getEdge(0) initialLeg = initialEdge.getWeight() print('initial leg bearing= ' + str(initialLeg.getBearingTailHeadDegrees()) + ' degrees') print(' ================== Take-Off V Stall Speed =============== ') takeOffVStallSpeedMetersSecond = aircraft.computeStallSpeedCasKnots( aircraftConfiguration='Take-Off', airport=departureAirport) * Knots2MetersPerSecond print('take-off Vstall Kcas= ' + str(takeOffVStallSpeedMetersSecond) + ' meters per second') print(' ================== Departure Turn Leg =============== ') departureTurnLeg = TurnLeg( initialWayPoint=endOfClimbRampWayPoint, finalWayPoint=finalArrivalDescentSlopeWayPoint, initialHeadingDegrees=lastClimbSlopeLeg.getBearingTailHeadDegrees(), finalHeadingDegrees=initialLeg.getBearingTailHeadDegrees(), trueAirSpeedMetersSecond=takeOffVStallSpeedMetersSecond, altitudeAboveSeaLevelMeters=endOfClimbRampWayPoint. getAltitudeMeanSeaLevelMeters(), reverse=False)