def test_param_limits(): lower, upper = -4., 3. param1 = Parameter('param1', 1., lower_limit=lower, upper_limit=upper) param2 = Parameter('param2', 2.) assert param1.has_limits assert not param2.has_limits param1.set_value(upper + 0.5) assert upper == param1.value().numpy() assert param1.at_limit param1.set_value(lower - 1.1) assert lower == param1.value().numpy() assert param1.at_limit param1.set_value(upper - 0.1) assert not param1.at_limit param2.lower = lower param2.set_value(lower - 1.1) assert lower == param2.value().numpy()
def test_param_limits(): lower, upper = -4.0, 3.0 param1 = Parameter("param1", 1.0, lower=lower, upper=upper) param2 = Parameter("param2", 2.0) assert param1.has_limits assert not param2.has_limits with pytest.raises(ValueError): param1.set_value(upper + 0.5) param1.assign(upper + 0.5) assert upper == param1.value().numpy() assert param1.at_limit with pytest.raises(ValueError): param1.set_value(lower - 1.1) param1.assign(lower - 1.1) assert lower == param1.value().numpy() assert param1.at_limit param1.set_value(upper - 0.1) assert not param1.at_limit param2.lower = lower param2.assign(lower - 1.1) assert lower == param2.value().numpy()