def __init__(self, fdmexec, update_rate=250.0): self.mu = 100.0 self.sigma = 10.0 self._atmosphere = Atmosphere(fdmexec) super(PressureSensor, self).__init__(fdmexec, update_rate)
def test_get_atmospheric_data(self): huginn_data_path = configuration.get_data_path() fdm_builder = FDMBuilder(huginn_data_path) fdmexec = fdm_builder.create_fdm() atmosphere = Atmosphere(fdmexec) self.assertAlmostEqual( atmosphere.pressure, convert_jsbsim_pressure(fdmexec.GetAtmosphere().GetPressure()), 3) self.assertAlmostEqual( atmosphere.sea_level_pressure, convert_jsbsim_pressure(fdmexec.GetAtmosphere().GetPressureSL()), 3) self.assertAlmostEqual( atmosphere.temperature, convert_jsbsim_temperature( fdmexec.GetAtmosphere().GetTemperature()), 3) self.assertAlmostEqual( atmosphere.sea_level_temperature, convert_jsbsim_temperature( fdmexec.GetAtmosphere().GetTemperatureSL()), 3) self.assertAlmostEqual( atmosphere.density, convert_jsbsim_density(fdmexec.GetAtmosphere().GetDensity()), 3) self.assertAlmostEqual( atmosphere.sea_level_density, convert_jsbsim_density(fdmexec.GetAtmosphere().GetDensitySL()), 3)
def __init__(self, fdmexec, update_rate=50.0): self.mu = 0.1 self.sigma = 0.5 self._atmosphere = Atmosphere(fdmexec) super(Thermometer, self).__init__(fdmexec, update_rate)
def __init__(self, fdmexec): """Create a new AirspeedIndicator object Arguments: fdmexec: a JSBSim FGFDMExec object """ self.fdmexec = fdmexec self._atmosphere = Atmosphere(fdmexec)
def __init__(self, fdmexec): """Create a new Altimeter object Arguments: fdmexec: A JSBSim FGFDMExec object """ self.fdmexec = fdmexec self._atmosphere = Atmosphere(fdmexec) self._pressure = 29.92130302799185 * ur.in_Hg
def __init__(self, fdmexec): """Create a new AtmosphereResource object Arguments: fdmexec: a jsbsim FGFDMExec object """ self.fdmexec = fdmexec self.atmosphere = Atmosphere(fdmexec) self.atmosphere_schema = AtmosphereShema() super(AtmosphereResource, self).__init__(self.atmosphere, self.atmosphere_schema)
def test_get_atmospheric_data(self): huginn_data_path = configuration.get_data_path() fdm_builder = FDMBuilder(huginn_data_path) fdmexec = fdm_builder.create_fdm() atmosphere_resource = AtmosphereResource(fdmexec) response = atmosphere_resource.get() atmosphere = Atmosphere(fdmexec) self.assertAlmostEqual(response["pressure"], atmosphere.pressure, 3) self.assertAlmostEqual(response["sea_level_pressure"], atmosphere.sea_level_pressure, 3) self.assertAlmostEqual(response["temperature"], atmosphere.temperature, 3) self.assertAlmostEqual(response["sea_level_temperature"], atmosphere.sea_level_temperature, 3) self.assertAlmostEqual(response["density"], atmosphere.density, 3) self.assertAlmostEqual(response["sea_level_density"], atmosphere.sea_level_density, 3)
def test_airspeed(self): huginn_data_path = configuration.get_data_path() fdm_builder = FDMBuilder(huginn_data_path) fdmexec = fdm_builder.create_fdm() airspeed_indicator = AirspeedIndicator(fdmexec) total_pressure = fdmexec.GetAuxiliary().GetTotalPressure() total_pressure = convert_jsbsim_pressure(total_pressure) atmosphere = Atmosphere(fdmexec) expected_airspeed = true_airspeed(total_pressure, atmosphere.pressure, atmosphere.temperature) self.assertAlmostEqual(airspeed_indicator.airspeed, expected_airspeed, 3)
def test_altitude(self): huginn_data_path = configuration.get_data_path() fdm_builder = FDMBuilder(huginn_data_path) fdmexec = fdm_builder.create_fdm() altimeter = Altimeter(fdmexec) atmosphere = Atmosphere(fdmexec) expected_altitude = pressure_altitude(atmosphere.sea_level_pressure, atmosphere.pressure, atmosphere.temperature) calculated_altitude = altimeter.altitude * ur.foot calculated_altitude.ito(ur.meter) self.assertAlmostEqual(calculated_altitude.magnitude, expected_altitude, 3)