@@ 410-418 (lines=9) @@ | ||
407 | p = 1013.25 * units.mbar |
|
408 | dry_bulb_temperature = 20. * units.degC |
|
409 | wet_bulb_temperature = 18. * units.degC |
|
410 | coeff = 6.1e-4 / units.kelvin |
|
411 | psychrometric_rh = relative_humidity_wet_psychrometric(dry_bulb_temperature, |
|
412 | wet_bulb_temperature, p, |
|
413 | psychrometer_coefficient=coeff) |
|
414 | assert_almost_equal(psychrometric_rh, 82.9701 * units.percent, 3) |
|
415 | ||
416 | ||
417 | def test_rh_mixing_ratio(): |
|
418 | """Tests relative humidity from mixing ratio.""" |
|
419 | p = 1013.25 * units.mbar |
|
420 | temperature = 20. * units.degC |
|
421 | w = 0.012 |
|
@@ 386-394 (lines=9) @@ | ||
383 | ||
384 | ||
385 | def test_wet_psychrometric_vapor_pressure(): |
|
386 | """Test calculation of vapor pressure from wet and dry bulb temperatures.""" |
|
387 | p = 1013.25 * units.mbar |
|
388 | dry_bulb_temperature = 20. * units.degC |
|
389 | wet_bulb_temperature = 18. * units.degC |
|
390 | psychrometric_vapor_pressure = psychrometric_vapor_pressure_wet(dry_bulb_temperature, |
|
391 | wet_bulb_temperature, p) |
|
392 | assert_almost_equal(psychrometric_vapor_pressure, 19.3673 * units.mbar, 3) |
|
393 | ||
394 | ||
395 | def test_wet_psychrometric_rh(): |
|
396 | """Test calculation of relative humidity from wet and dry bulb temperatures.""" |
|
397 | p = 1013.25 * units.mbar |
|
@@ 179-186 (lines=8) @@ | ||
176 | def test_vapor_pressure(): |
|
177 | """Test vapor pressure calculation.""" |
|
178 | assert_almost_equal(vapor_pressure(998. * units.mbar, 0.04963), |
|
179 | 73.74925 * units.mbar, 5) |
|
180 | ||
181 | ||
182 | def test_lcl(): |
|
183 | """Test LCL calculation.""" |
|
184 | lcl_pressure, lcl_temperature = lcl(1000. * units.mbar, 30. * units.degC, 20. * units.degC) |
|
185 | assert_almost_equal(lcl_pressure, 864.761 * units.mbar, 2) |
|
186 | assert_almost_equal(lcl_temperature, 17.676 * units.degC, 2) |
|
187 | ||
188 | ||
189 | def test_lcl_convergence(): |
|
@@ 364-372 (lines=9) @@ | ||
361 | el_pressure, el_temperature = el(levels, temperatures, dewpoints) |
|
362 | assert assert_nan(el_pressure, levels.units) |
|
363 | assert assert_nan(el_temperature, temperatures.units) |
|
364 | ||
365 | ||
366 | def test_no_el_parcel_colder(): |
|
367 | """Tests no EL when parcel stays colder than environment. INL 20170925-12Z.""" |
|
368 | levels = np.array([974., 946., 925., 877.2, 866., 850., 814.6, 785., |
|
369 | 756.6, 739., 729.1, 700., 686., 671., 641., 613., |
|
370 | 603., 586., 571., 559.3, 539., 533., 500., 491., |
|
371 | 477.9, 413., 390., 378., 345., 336.]) * units.mbar |
|
372 | temperatures = np.array([10., 8.4, 7.6, 5.9, 7.2, 7.6, 6.8, 7.1, 7.7, |
|
373 | 7.8, 7.7, 5.6, 4.6, 3.4, 0.6, -0.9, -1.1, -3.1, |
|
374 | -4.7, -4.7, -6.9, -7.5, -11.1, -10.9, -12.1, -20.5, -23.5, |
|
375 | -24.7, -30.5, -31.7]) * units.celsius |