Synthetic observations

aeolus.synthobs.read_spectral_bands(spectral_file)[source]

Read spectral bands from a SOCRATES spectral file.

Parameters

spectral_file (pathlib.PosixPath) – Path to the location of a SOCRATES spectral file.

Returns

An array with a list of tuples describing spectral bands. Tuple structure: (spectral_band_index, lower_wavelength_limit, upper_wavelength_limit). Units [m] as stated in a spectral file but not checked directly.

Return type

numpy.ndarray

aeolus.synthobs.read_normalized_stellar_flux(spectral_file)[source]

Read the normalized stellar flux per spectral band.

Read from a SOCRATES spectral file.

Parameters

spectral_file (pathlib.PosixPath) – Path to the location of a SOCRATES spectral file.

Returns

Normalized stellar flux per spectral band [1].

Return type

iris.cube.Cube

aeolus.synthobs.calc_stellar_flux(spectral_file, stellar_constant_at_1_au)[source]

Calculate the stellar flux per spectral band.

Parameters
Returns

Stellar flux per spectral band [W m-2].

Return type

iris.cube.Cube

aeolus.synthobs.calc_transmission_spectrum_day_night_average(spectral_file, stellar_constant_at_1_au, stellar_radius, planet_top_of_atmosphere, planet_transmission_day, planet_transmission_night, model=<class 'aeolus.model.base.Model'>(80 fields))[source]

Calculate the synthetic transmission spectrum averaged over the dayside and the nightside.

Parameters
  • spectral_file (pathlib.PosixPath) – Path to the location of a SOCRATES spectral file.

  • stellar_constant_at_1_au (float or iris.cube.Cube) – Stellar constant at 1 AU [W m-2].

  • stellar_radius (float or iris.cube.Cube) – Stellar radius [m].

  • planet_top_of_atmosphere (float or iris.cube.Cube) – The extent of the planetary atmosphere [m].

  • planet_transmission_day (iris.cube.Cube) – Met Office Unified Model output of STASH item m01s01i755 (in the case of hot Jupiters) from the dayside calculation.

  • planet_transmission_night (iris.cube.Cube) – Met Office Unified Model output of STASH item m01s01i755 (in the case of hot Jupiters) from the nightside calculation.

  • model (aeolus.model.Model, optional) – Model class with relevant variable names.

Returns

  • iris.cube.Cube – The ratio of the effective planetary radius to the stellar radius per spectral band [1].

  • numpy.ndarray – Spectral band centers [m].

Notes

The transmission spectrum is the ratio of the effective planetary radius to the stellar radius calculated per spectral band:

\[\frac{R_p (\nu)}{R_s} = \sqrt{(\frac{R_{p,TOA}}{R_s})^2 - \frac{\sum_{lat,lon}^{}F_{transmitted} (\nu)}{F_{stellar} (\nu)}}\]

where \(R_p(\nu)\) is the effective planetary radius, \(R_s\) is the stellar radius, \(R_{p,TOA}\) is the extent of the planetary atmosphere (which usually is the sum of the planetary radius and the height of the model domain), \(\sum_{lat,lon}^{}F_{transmitted}(\nu)\) is the total transmitted flux, \(F_{stellar}(\nu)\) is the stellar flux.