示例#1
0
def test():
    """Check that the model parametrizations are identical now."""
    amplitude = 1E-12 * u.Unit("cm-2 s-1 TeV-1")
    reference = 2 * u.TeV
    alpha = 2.3
    beta = 0.1
    model_gammapy = Log10Parabola(amplitude, reference, alpha, beta)
    print(model_gammapy)

    from sherpa.models import LogParabola

    model_sherpa = LogParabola()
    model_sherpa.ampl = amplitude.value
    model_sherpa.c1 = alpha
    model_sherpa.c2 = beta
    model_sherpa.ref = reference.value
    print(model_sherpa)

    # compare
    energy = 4.2 * u.TeV
    dnde_gammapy = model_gammapy(energy)
    print(dnde_gammapy)
    dnde_sherpa = model_sherpa(energy.value)
    print(dnde_sherpa)

    from numpy.testing import assert_allclose

    assert_allclose(dnde_gammapy.value, dnde_sherpa)