def test_snowpack_dimension(): m = Model("dmrt_qcacp_shortrange", DORT) temperatures = [200, 250, 270] sensor = amsre() snowpacks = [ make_snowpack([2000], StickyHardSpheres, density=[250], temperature=t, radius=0.3e-3, stickiness=0.2) for t in temperatures ] res = m.run(sensor, snowpacks, snowpack_dimension=('temperature', temperatures)) assert np.allclose(res.temperature, temperatures) with pytest.raises(SMRTError): m.run(sensor, snowpacks, snowpack_dimension=(temperatures, 'temperature'))
def test_shallow_snowpack(): warnings.filterwarnings('error', message=".*optically shallow.*", module=".*dort") with pytest.raises(UserWarning) as e_info: sp = make_snowpack([0.5, 0.5], "homogeneous", density=[300, 250], temperature=2 * [250], interface=2 * [Transparent]) sensor = active(13e9, 45) m = Model(NonScattering, DORT) m.run(sensor, sp).sigmaVV()
def test_multifrequency(): m = Model("dmrt_qcacp_shortrange", DORT) sensor = amsre() testpack = setup_snowpack() m.run(sensor, testpack)
def test_multifrequency(): m = Model(DMRT_QCACP_ShortRange, DORT) sensor = amsre() testpack = setup_snowpack() m.run(sensor, testpack)
def test_noabsoprtion(): sp = setup_snowpack() sensor = passive(37e9, theta=[30, 40]) m = Model(NonScattering, DORT) res = m.run(sensor, sp) np.testing.assert_allclose(res.data, sp.layers[0].temperature)
def test_selectby_theta(): sp = setup_snowpack() theta = [30, 40] sensor = passive(37e9, theta) m = Model(NonScattering, DORT) res = m.run(sensor, sp) print(res.data.coords) res.TbV(theta=30)
def test_returned_theta(): sp = setup_snowpack() theta = [30, 40] sensor = passive(37e9, theta) m = Model(NonScattering, DORT) res = m.run(sensor, sp) res_theta = res.coords['theta'] print(res_theta) np.testing.assert_allclose(res_theta, theta)
def test_noabsoprtion(): temp = 250 sp = make_snowpack([100], None, density=[300], temperature=[temp], interface=[Transparent]) sensor = passive(37e9, theta=[30, 40]) m = Model(NoneScattering, DORT) res = m.run(sensor, sp) np.testing.assert_allclose(res.data, temp)
def test_joblib_parallel_run(): m = Model("dmrt_qcacp_shortrange", DORT) sensor = amsre() snowpacks = [ make_snowpack([2000], StickyHardSpheres, density=[250], temperature=t, radius=0.3e-3, stickiness=0.2) for t in [200, 250, 270] ] m.run(sensor, snowpacks, parallel_computation=True)
def test_2layer_pack(): # Will throw error if doesn't run sp = setup_2layer_snowpack() sensor = active(13e9, 45) m = Model(NonScattering, DORT) m.run(sensor, sp).sigmaVV()
def test_depth_hoar_stream_numbers(): # Will throw error if doesn't run sp = setup_snowpack_with_DH() sensor = active(13e9, 45) m = Model(NonScattering, DORT) m.run(sensor, sp).sigmaVV()