SingleEpochObservation

The full implementation of the class can be found on GitHub.

class lifesimmc.presets.single_epoch_observation.versions.single_epoch_observation_v1.SingleEpochObservationV1(version: str = 'latest', **kwargs)

Single-epoch observation preset (version 1).

Parameters:
  • scene (Scene) – The astrophysical scene containing the target system (e.g., star, planets, and background sources).

  • total_integration_time (str or float or Quantity) – Total observation time.

  • num_reps (int, optional) – Number of repetitions of the observation.

  • detector_integration_time (str or float or Quantity, optional) – Integration time per detector frame. If None, defaults to total_integration_time / 200.

  • modulation_period (str or float or Quantity, optional) – Period of the interferometric modulation (e.g., array rotation). If None, defaults to total_integration_time.

  • solar_ecliptic_latitude (str, optional) – Solar ecliptic latitude used to estimate local zodiacal light contribution.

  • nulling_baseline (str or float or Quantity, optional) – Nulling baseline of the interferometer. Can be specified directly or derived from an optimal baseline prescription.

  • aperture_diameter (Quantity, optional) – Diameter of each telescope aperture.

  • nulling_baseline_min (Quantity, optional) – Minimum allowed nulling baseline.

  • nulling_baseline_max (Quantity, optional) – Maximum allowed nulling baseline.

  • spectral_resolving_power (int, optional) – Spectral resolving power of the instrument.

  • wavelength_min (Quantity, optional) – Minimum wavelength of the observation band.

  • wavelength_max (Quantity, optional) – Maximum wavelength of the observation band.

  • throughput (float, optional) – Total optical throughput of the instrument.

  • quantum_efficiency (float, optional) – Detector quantum efficiency.

  • instrumental_noise (InstrumentalNoise, optional) – Level of instrumental perturbations (e.g., NONE, OPTIMISTIC, PESSIMISTIC).

  • template_fov_rad (float, optional) – Field of view radius used for template generation.

  • seed (int, optional) – Random seed for reproducibility.

  • grid_size (int, optional) – Number of pixels per spatial dimension for image-based calculations.

  • device (torch.device, optional) – Compute device used for the simulation (CPU or GPU).

  • host_star_radius (float or str or Quantity, optional) – Host star radius. Only required if no star is specified in the scene.

  • host_star_temperature (float or str or Quantity, optional) – Host star temperature. Only required if no star is specified in the scene.

  • host_star_mass (float or str or Quantity, optional) – Host star mass. Only required if no star is specified in the scene.

  • host_star_distance (float or str or Quantity, optional) – Host star distance. Only required if no star is specified in the scene.

  • host_star_right_ascension (float or str or Quantity, optional) – Host star right ascension. Only required if no star is specified in the scene.

  • host_star_declination (float or str or Quantity, optional) – Host star declination. Only required if no star is specified in the scene.

SingleEpochObservationV1.extract_sed(units: str | Quantity = 'ph/s/m3') tuple[numpy.ndarray, numpy.ndarray, numpy.ndarray]

Get the extracted SED and associated uncertainties of the observation.

Parameters:
  • Union[str – The units to return the input SED in. Defaults to ‘ph/s/m3’.

  • Quantity] – The units to return the input SED in. Defaults to ‘ph/s/m3’.

Returns:

A tuple containing the SED, standard deviations, and covariance matrix.

Return type:

tuple[np.ndarray, np.ndarray, np.ndarray]

SingleEpochObservationV1.get_detection_significance() ndarray

Get the detection significance of the observation based on the Neyman-Pearson test.

Returns:

The detection significance of the observation in units of sigma.

Return type:

float

SingleEpochObservationV1.get_input_sed(units: str | Quantity = 'ph/s/m3') ndarray

Get the input SED of the observation.

Parameters:
  • Union[str – The units to return the input SED in. Defaults to ‘ph/s/m3’.

  • Quantity] – The units to return the input SED in. Defaults to ‘ph/s/m3’.

Returns:

The input SED of the planet.

Return type:

np.ndarray

SingleEpochObservationV1.get_matched_filter() ndarray

Get the matched filter map for the observation. This returns a map containing the matched filter values at each point in the FOV based on data and normalized templates.

Returns np.ndarray

The matched filter map.

SingleEpochObservationV1.get_wavelength_bin_centers(units: str | Quantity = 'm') ndarray

Get the wavelength bin centers of the observation.

Parameters:
  • Union[str – The units to return the wavelength bin centers in. Defaults to ‘m’.

  • Quantity] – The units to return the wavelength bin centers in. Defaults to ‘m’.

Returns:

The wavelength bin centers.

Return type:

np.ndarray

SingleEpochObservationV1.run()

Execute the preset pipeline.