Exemple #1
0
def test_stat_surface_reoptimize():
    dataset = MyDataset()
    fit = Fit()
    fit.run([dataset])

    dataset.models.parameters["z"].value = 0
    x_values = [1, 2, 3]
    y_values = [2e2, 3e2, 4e2]
    result = fit.stat_surface(datasets=[dataset],
                              x="x",
                              y="y",
                              x_values=x_values,
                              y_values=y_values,
                              reoptimize=True)

    assert_allclose(result["x_scan"], x_values, atol=1e-7)
    assert_allclose(result["y_scan"], y_values, atol=1e-7)
    expected_stat = [
        [1.0001e04, 1.0000e00, 1.0001e04],
        [1.0000e04, 0.0000e00, 1.0000e04],
        [1.0001e04, 1.0000e00, 1.0001e04],
    ]

    assert_allclose(list(result["stat_scan"]), expected_stat, atol=1e-7)
    assert_allclose(result["fit_results"][0][0].total_stat,
                    result["stat_scan"][0][0],
                    atol=1e-7)
Exemple #2
0
def test_stat_surface():
    dataset = MyDataset()
    fit = Fit()
    fit.run([dataset])
    x_values = [1, 2, 3]
    y_values = [2e2, 3e2, 4e2]
    result = fit.stat_surface(datasets=[dataset],
                              x="x",
                              y="y",
                              x_values=x_values,
                              y_values=y_values)

    assert_allclose(result["x_scan"], x_values, atol=1e-7)
    assert_allclose(result["y_scan"], y_values, atol=1e-7)
    expected_stat = [
        [1.0001e04, 1.0000e00, 1.0001e04],
        [1.0000e04, 0.0000e00, 1.0000e04],
        [1.0001e04, 1.0000e00, 1.0001e04],
    ]
    assert_allclose(list(result["stat_scan"]), expected_stat, atol=1e-7)
    assert len(result["fit_results"]) == 0

    # Check that original value state wasn't changed
    assert_allclose(dataset.models.parameters["x"].value, 2)
    assert_allclose(dataset.models.parameters["y"].value, 3e2)