def make_example_2(): spatial = GaussianSpatialModel(lon_0="0 deg", lat_0="0 deg", sigma="1 deg") model = SkyModel(PowerLawSpectralModel(), spatial, name="example_2") models = Models([model]) models.write(DATA_PATH / "example2.yaml", overwrite=True, write_covariance=False)
def write(self, filename, filename_model=None, overwrite=False, sed_type="likelihood"): """Write flux map to file. Parameters ---------- filename : str Filename to write to. filename_model : str Filename of the model (yaml format). If None, keep string before '.' and add '_model.yaml' suffix overwrite : bool Overwrite file if it exists. sed_type : str sed type to convert to. Default is `likelihood` """ filename = make_path(filename) if filename_model is None: name_string = filename.as_posix() for suffix in filename.suffixes: name_string.replace(suffix, '') filename_model = name_string + '_model.yaml' filename_model = make_path(filename_model) hdulist = self.to_hdulist(sed_type) models = Models(self.reference_model) models.write(filename_model, overwrite=overwrite) hdulist[0].header['MODEL'] = filename_model.as_posix() hdulist.writeto(str(make_path(filename)), overwrite=overwrite)
def test_sky_model_spatial_none_io(tmpdir): pwl = PowerLawSpectralModel() model = SkyModel(spectral_model=pwl, name="test") models = Models([model]) filename = tmpdir / "test-models-none.yaml" models.write(filename) models = Models.read(filename) assert models["test"].spatial_model is None
def make_example_2(): spatial = GaussianSpatialModel(lon_0="0 deg", lat_0="0 deg", sigma="1 deg") model = SkyModel(PowerLawSpectralModel(), spatial) models = Models([model]) models.write(DATA_PATH / "example2.yaml")