def test_FMin(): fm = Namespace( fval=1.23456e-10, edm=1.23456e-10, errordef=0.5, is_valid=True, has_valid_parameters=True, has_accurate_covar=True, has_posdef_covar=True, has_made_posdef_covar=False, hesse_failed=False, has_covariance=True, is_above_max_edm=False, has_reached_call_limit=False, has_parameters_at_limit=False, state=[], ) fmin = util.FMin(fm, 1, 2, 1, 0.1) assert {x for x in dir(fmin) if not x.startswith("_")} == { "edm", "edm_goal", "errordef", "fval", "reduced_chi2", "nfcn", "ngrad", "is_valid", "has_accurate_covar", "has_valid_parameters", "has_posdef_covar", "has_made_posdef_covar", "hesse_failed", "has_covariance", "is_above_max_edm", "has_reached_call_limit", "has_parameters_at_limit", } assert fmin.edm == 1.23456e-10 assert fmin.edm_goal == 0.1 assert fmin.has_parameters_at_limit == False assert fmin == util.FMin(fm, 1, 2, 1, 0.1) assert fmin != util.FMin(fm, 1, 2, 1, 0.3) assert repr(fmin) == ( "<FMin edm=1.23456e-10 edm_goal=0.1 errordef=0.5 fval=1.23456e-10" " has_accurate_covar=True has_covariance=True has_made_posdef_covar=False" " has_parameters_at_limit=False has_posdef_covar=True" " has_reached_call_limit=False has_valid_parameters=True" " hesse_failed=False is_above_max_edm=False is_valid=True" " nfcn=1 ngrad=2 reduced_chi2=2.46912e-10>" )
def test_FMin(): keys = "fval edm tolerance nfcn ncalls up is_valid has_valid_parameters has_accurate_covar has_posdef_covar has_made_posdef_covar hesse_failed has_covariance is_above_max_edm has_reached_call_limit has_parameters_at_limit".split( ) # noqa: E501 values = ( 0.2, 1e-3, 0.1, 10, 10, 1.2, False, False, False, False, False, False, False, False, False, False, ) f = util.FMin(*values) assert f.keys() == tuple(keys) assert f.values() == values assert f.fval == 0.2 assert f["fval"] == 0.2
def test_FMin(): fm = Namespace( fval=1.23456e-10, edm=1.23456e-10, up=0.5, is_valid=True, has_valid_parameters=True, has_accurate_covar=True, has_posdef_covar=True, has_made_posdef_covar=False, hesse_failed=False, has_covariance=True, is_above_max_edm=False, has_reached_call_limit=False, has_parameters_at_limit=False, errordef=1, state=[], ) fmin = util.FMin(fm, 1, 2, 1, 0.1) with PrintAssert("<FMin ...>") as pr: fmin._repr_pretty_(pr, True) with PrintAssert(tx.fmin(fmin)) as pr: fmin._repr_pretty_(pr, False)
def test_MigradResult(): fmin = util.FMin(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15) params = util.Params([], None) mr = util.MigradResult(fmin, params) assert mr.fmin is fmin assert mr[0] is fmin assert mr.params is params assert mr[1] is params a, b = mr assert a is fmin assert b is params