def models_gauss(): model1 = SkyModel.create("pl", "gauss", name="source-1") model1.spatial_model.sigma.value = 0.1 model1.spatial_model.lon_0.value = 0 model1.spatial_model.lat_0.value = 0 model2 = SkyModel.create("pl", "gauss", name="source-2") model2.spatial_model.sigma.value = 0.1 model2.spatial_model.lon_0.value = 1.1 model2.spatial_model.lat_0.value = 0 model3 = SkyModel.create("pl", "gauss", name="source-3") model3.spatial_model.sigma.value = 0.1 model3.spatial_model.lon_0.value = -1.8 model3.spatial_model.lat_0.value = 0 return Models([model1, model2, model3])
def test_npred_spatial_model(spectrum_dataset): model = SkyModel.create("pl", "point", name="test") spectrum_dataset.models = [model] npred = spectrum_dataset.npred() assert_allclose(npred.data.sum(), 3000) assert spectrum_dataset.evaluators["test"].psf is None
def test_npred_spatial_model(spectrum_dataset): model = SkyModel.create("pl", "gauss", name="test") spectrum_dataset.models = [model] npred = spectrum_dataset.npred() model.spatial_model.sigma.value = 1.0 npred_large_sigma = spectrum_dataset.npred() assert_allclose(npred.data.sum(), 3000) assert_allclose(npred_large_sigma.data.sum(), 3000) assert spectrum_dataset.evaluators["test"].psf is None
def test_flux_estimator_norm_range(): model = SkyModel.create("pl", "gauss", name="test") model.spectral_model.amplitude.min = 1e-15 model.spectral_model.amplitude.max = 1e-10 estimator = FluxEstimator(source="test", selection_optional=[], reoptimize=True) scale_model = estimator.get_scale_model(Models([model])) assert_allclose(scale_model.norm.min, 1e-3) assert_allclose(scale_model.norm.max, 1e2) assert scale_model.norm.interp == "log"
def test_sky_model_create(): m = SkyModel.create("pl", "point", name="my-source") assert isinstance(m.spatial_model, PointSpatialModel) assert isinstance(m.spectral_model, PowerLawSpectralModel) assert m.name == "my-source"
def reference_model_default(cls): """Default reference model: a point source with index = 2 (`SkyModel`)""" return SkyModel.create("pl", "point")