Requirements#
- class esis.optics.Requirements(resolution_spatial, resolution_spectral, fov, snr, cadence, length_observation)[source]#
Bases:
Printable,ReplaceableThe requirements of the ESIS optical system.
Attributes
The angular resolution of the instrument.
The required spatial resolution of the instrument.
The required spectral resolution of the instrument.
The required field of view of the instrument.
The required signal-to-noise ratio of the instrument.
The required cadence of the instrument.
The required amount of observing time.
Methods
__init__(resolution_spatial, ...)replace(**changes)A copy of this object with the given fields replaced.
to_string([prefix])Public-facing version of the
__repr__method that allows for defining a prefix string, which can be used to calculate how much whitespace to add to the beginning of each line of the result.Inheritance Diagram

- Parameters:
- replace(**changes)#
A copy of this object with the given fields replaced.
A method version of
dataclasses.replace(), matchingnamed_arrays.AbstractArray.replace(), so that a nested change reads the same at every level:system.replace( surface=system.surface.replace( sag=system.surface.sag.replace(radius=r), ), )
The copy is shallow, as
dataclasses.replace()is: every field which is not named is shared with the original, and mutating one through the copy is mutating it in both. Takecopy.deepcopy()of the result where that matters.- Parameters:
changes – The fields to overwrite in the copy.
- Return type:
- to_string(prefix=None)#
Public-facing version of the
__repr__method that allows for defining a prefix string, which can be used to calculate how much whitespace to add to the beginning of each line of the result.