MultiExposureModel

class stdatamodels.jwst.datamodels.MultiExposureModel(init=None, **kwargs)

Bases: JwstDataModel

A data model for multi-slit images derived from numerous exposures.

The intent is that all slits in this model are of the same source, with each slit representing a separate exposure of that source.

This model has a special member exposures that can be used to deal with an entire slit at a time. It behaves like a list:

>>> from .image import ImageModel
>>> multiexposure_model = MultiExposureModel()
>>> multiexposure_model.exposures.append(ImageModel())
>>> multiexposure_model.exposures[0]
<ImageModel>

Also, there is an extra attribute, meta. This will contain the meta attribute from the exposure from which each slit has been taken.

See the module exp_to_source for the initial creation of these models. This is part of the Level 3 processing of multi-objection observations.

Attributes:
exposures.items.datanumpy float32 array
exposures.items.dqnumpy uint32 array
exposures.items.errnumpy float32 array
exposures.items.areanumpy float32 array

Initialize a data model.

Parameters:
initstr, tuple, astropy.io.fits.HDUList, ndarray, dict, None
  • None : Create a default data model with no shape.

  • tuple : Shape of the data array. Initialize with default data array with shape specified by the tuple.

  • file path: Initialize from the given file (FITS or ASDF)

  • readable file object: Initialize from the given file object

  • astropy.io.fits.HDUList : Initialize from the given astropy.io.fits.HDUList.

  • A numpy array: Used to initialize the data array

  • dict: The object model tree for the data model

  • DataModel: Initialize from an existing DataModel instance. This will perform a shallow copy, and will convert between model subtypes as long as their schemas are compatible.

schemadict, str (optional)

Tree of objects representing a JSON schema, or string naming a schema. The schema to use to understand the elements on the model. If not provided, the schema associated with this class will be used.

pass_invalid_valuesbool or None

If True, values that do not validate the schema will be added to the metadata. If False, they will be set to None. If None, value will be taken from the environmental PASS_INVALID_VALUES. Otherwise the default value is False.

strict_validationbool or None

If True, schema validation errors will generate an exception. If False, they will generate a warning. If None, value will be taken from the environmental STRICT_VALIDATION. Otherwise, the default value is False.

validate_on_assignmentbool or None

Defaults to ‘None’. If None, value will be taken from the environmental VALIDATE_ON_ASSIGNMENT, defaulting to ‘True’ if no environment variable is set. If ‘True’, attribute assignments are validated at the time of assignment. Validation errors generate warnings and values will be set to None. If ‘False’, schema validation occurs only once at the time of write. Validation errors generate warnings.

validate_arraysbool

If True, arrays will be validated against ndim, max_ndim, and datatype validators in the schemas.

ignore_missing_extensionsbool

When False, raise warnings when a file is read that contains metadata about extensions that are not available. Defaults to True.

ignore_unrecognized_tagbool

When False, raise warnings when an unrecognized tag is encountered. When True, ignore unrecognized tags.

**kwargs

Additional keyword arguments are expected to be array-like attributes of the data model. These will be initialized with the given values only if they are defined in the schema and the schema expects an array-like value. Kwargs are only allowed when init is None, a tuple, or a numpy array. Example usage:

model = ImageModel(data=np.ones((10, 10)), dq=np.zeros((10, 10)))

Attributes Summary

core_schema_url

schema_url

The schema URI to validate the model against.

Attributes Documentation

core_schema_url = 'http://stsci.edu/schemas/jwst_datamodel/core.schema'
schema_url = 'http://stsci.edu/schemas/jwst_datamodel/multiexposure.schema'

The schema URI to validate the model against. If None, only basic validation of required metadata properties (filename, model_type) will occur.