def test_fake_numba(self): # Arrange sut = DimensionalAnalysis() # Act & Assert assert hasattr(formulae.pvs, "py_func") with sut: assert not hasattr(formulae.pvs, "py_func") assert hasattr(formulae.pvs, "py_func")
def test_fake_numba(): # Arrange sut = DimensionalAnalysis() # Act & Assert assert hasattr(Formulae().saturation_vapour_pressure.pvs_Celsius, "py_func") with sut: assert not hasattr(Formulae().saturation_vapour_pressure.pvs_Celsius, "py_func") assert hasattr(Formulae().saturation_vapour_pressure.pvs_Celsius, "py_func")
def test_fake_units(self): # Arrange sut = DimensionalAnalysis() # Act & Assert assert type(constants.D0) == float with sut: assert type(constants.D0) != float assert type(constants.D0.magnitude) == float assert type(constants.D0) == float
def test_fake_units(): # Arrange sut = DimensionalAnalysis() # Act & Assert assert isinstance(constants_defaults.D0, float) with sut: assert not isinstance(constants_defaults.D0, float) assert isinstance(constants_defaults.D0.magnitude, float) assert isinstance(constants_defaults.D0, float)
def test_lv(): with DimensionalAnalysis(): # Arrange si = constants.si T = 300 * si.kelvins # Act latent_heat = formulae.lv(T) # Assert assert latent_heat.check('[energy]/[mass]')
def test_pvs(): with DimensionalAnalysis(): # Arrange si = constants.si sut = formulae.pvs T = 300 * si.kelvins # Act pvs = sut(T) # Assert assert pvs.units == si.hectopascals
def test_pvs(): with DimensionalAnalysis(): # Arrange formulae = Formulae() si = constants.si sut = formulae.saturation_vapour_pressure.pvs_Celsius T = 300 * si.kelvins # Act pvs = sut(T) # Assert assert pvs.units == si.hectopascals
def test_pvs_ice(opt): with DimensionalAnalysis(): # Arrange formulae = Formulae(saturation_vapour_pressure=opt) si = constants_defaults.si sut = formulae.saturation_vapour_pressure.ice_Celsius T = 250 * si.kelvins # Act pvs = sut(T) # Assert assert pvs.check('[pressure]')
def test_lv(opt): with DimensionalAnalysis(): # Arrange si = constants_defaults.si T = 300 * si.kelvins formulae = Formulae(latent_heat=opt) sut = formulae.latent_heat.lv # Act lv = sut(T) # Assert assert lv.check('[energy]/[mass]')
def test_thermal_conductivity_radius_dependence(opt): with DimensionalAnalysis(): # Arrange si = constants_defaults.si r = 1 * si.um lmbd = .1 * si.um formulae = Formulae(diffusion_kinetics=opt) sut = formulae.diffusion_kinetics.K # Act thermal_conductivity = sut(constants_defaults.K0, r, lmbd) # Assert assert thermal_conductivity.check('[power]/[length]/[temperature]')
def test_thermal_conductivity_temperature_dependence(opt): with DimensionalAnalysis(): # Arrange si = constants_defaults.si T = 300 * si.kelvins p = 1000 * si.hPa formulae = Formulae(diffusion_thermics=opt) sut = formulae.diffusion_thermics.K # Act thermal_conductivity = sut(T, p) # Assert assert thermal_conductivity.check('[power]/[length]/[temperature]')
def test_vapour_diffusivity_radius_dependence(opt): with DimensionalAnalysis(): # Arrange si = constants_defaults.si r = 1 * si.um lmbd = .1 * si.um formulae = Formulae(diffusion_kinetics=opt) sut = formulae.diffusion_kinetics.D # Act vpour_diffusivity = sut(constants_defaults.D0, r, lmbd) # Assert assert vpour_diffusivity.check('[area]/[time]')
def test_vapour_diffusivity_temperature_dependence(opt): with DimensionalAnalysis(): # Arrange si = constants_defaults.si T = 300 * si.kelvins p = 1000 * si.hPa formulae = Formulae(diffusion_thermics=opt) sut = formulae.diffusion_thermics.D # Act vpour_diffusivity = sut(T, p) # Assert assert vpour_diffusivity.check('[area]/[time]')
def test_r_cr(): with DimensionalAnalysis(): # Arrange si = constants.si sut = formulae.r_cr kp = .5 rd = .1 * si.micrometre T = 300 * si.kelvins # Act r_cr = sut(kp, rd, T) # Assert assert r_cr.to_base_units().units == si.metres
def test_r_cr(): with DimensionalAnalysis(): # Arrange si = constants.si formulae = Formulae() sut = formulae.hygroscopicity.r_cr kp = .5 rd = .1 * si.micrometre T = 300 * si.kelvins sgm = constants.sgm # Act r_cr = sut(kp, rd**3, T, sgm) # Assert assert r_cr.to_base_units().units == si.metres