コード例 #1
0
def test_value_size():
    model = BmiGridmet()
    model.initialize()
    grid_id = model.get_var_grid("daily_maximum_temperature")
    size = model.get_grid_size(grid_id)
    vals1 = np.empty(size)
    z = model.get_value("daily_maximum_temperature", vals1)
    assert model.get_grid_size(0) == z.size
コード例 #2
0
ファイル: test_irf.py プロジェクト: nhm-usgs/gridmet_bmi
def test_initialize_defaults():
    model = BmiGridmet()
    model.initialize()
    grid_id = model.get_var_grid("daily_maximum_temperature")
    size = model.get_grid_size(grid_id)
    vals = np.empty(size)
    model.get_value("daily_maximum_temperature", vals)
    min = np.nanmin(vals)
    max = np.nanmax(vals)

    npt.assert_almost_equal(min, 266.399, decimal=2)
    npt.assert_almost_equal(max, 305.0, decimal=1)
コード例 #3
0
def test_get_value_copy():
    model = BmiGridmet()
    model.initialize()
    grid_id = model.get_var_grid("daily_maximum_temperature")
    size = model.get_grid_size(grid_id)
    vals1 = np.empty(size)
    vals2 = np.empty(size)
    z0 = model.get_value("daily_maximum_temperature", vals1)
    z1 = model.get_value("daily_maximum_temperature", vals2)

    assert z0 is not z1
    npt.assert_array_almost_equal(z0, z1)
コード例 #4
0
def test_grid_var_size_fail():
    model = BmiGridmet()
    model.initialize()
    with pytest.raises(KeyError):
        model.get_grid_size(invalid_grid_id)
コード例 #5
0
def test_grid_var_size():
    model = BmiGridmet()
    model.initialize()
    assert model.get_grid_size(grid_id) == 810810
コード例 #6
0
ファイル: debug.py プロジェクト: nhm-usgs/gridmet_bmi
def print_times(x):
    print(x.get_start_time())
    print(x.get_time_step())
    print(x.get_time_units())
    print(x.get_current_time())
    print(x.get_end_time())


x = BmiGridmet()
# x.initialize('gridmet_bmi.yaml')
x.initialize()
print(x.get_input_var_names())
print(x.get_output_var_names())
grid_id = x.get_var_grid('daily_maximum_temperature')
size = x.get_grid_size(grid_id)
shape = np.empty(2, dtype=np.int)
origin = np.empty(2, dtype=np.float)
delta = np.empty(2, dtype=np.float)
x.get_grid_origin(grid_id, origin)
x.get_grid_spacing(grid_id, spacing=delta)
tmp = x.get_grid_shape(grid_id, shape)
print(type(shape), shape[0], shape[1], shape)
tmp2 = np.array([585, 1386])
npt.assert_almost_equal(shape, np.array([585, 1386]))
vals = np.zeros(size)
x.get_value('daily_maximum_temperature', vals)
print(np.nanmin(vals))
print(np.nanmax(vals))
print_times(x)
x.update()