Cross section

Main functions

class SignalCreation.Read.CrossSection.CrossSection(path_file, type_file, fill_value=None)
Parameters:
  • path_file (str | List[str])

  • type_file (str)

  • fill_value (str | None)

_cross_section_from_serdyunchenko_coeff(temperature=None, wavelength=None, unit_temperature=None, unit_wavelength=None, unit_cross_section=None)

Get the cross-section at the given temperatures and/or wavelengths when the data set stores coeff of the Serdyunchenko formula instead of the cross-section itself If the wavelength is outside the model’s range, the method returns None

Parameters:
  • temperature – float The temperature at which the cross-section must be returned

  • wavelength – float The wavelength at which the cross-section must be returned

  • unit_temperature – str The unit of the temperature

  • unit_wavelength – str The unit of the wavelength

  • unit_cross_section – str The unit of the cross-section

Returns:

xr.DataArray The requested information

Return type:

DataArray

_fill_data_set()

Fill dataset according to file type (redirecting function) :return:

_fill_with_bdm()

Fill attribute _data with BDM files given in input

Returns:

_fill_with_bp()

Fill attribute _data with BDM files given in input

Returns:

_fill_with_serdyuchenko_coefficient()

Specific function to fill dataset with Serdyuchenko coefficient file :return:

_fill_with_serdyuchenko_values()

Specific function to fill dataset with Serdyuchenko value file :return:

_get_fill_value(data=None, variable_name=None, **kwargs)

Return the fill value for interpolation :param data: variable in case of min_max or first_last fill value :param variable_name: name of the variable, if necessary (default: None) :return:

Parameters:
  • data (DataArray | ndarray | list | None)

  • variable_name (str | None)

cross_section_from_temperature_profile(temperature_profile, wavelength, unit_cross_section=None)

Get the cross section as a function of the altitude from a temperature profile and a wavelength If the temperature or wavelength are outside of the model’s range, the method returns None

Parameters:
  • temperature_profile (DataArray) – xr.Dataset The temperature profile stored as pint objects in an xarray data array

  • wavelength (Quantity) – float or list The wavelength at which the cross section must be returned

  • unit_wavelength – str The unit of the wavelength

  • unit_cross_section – str The unit of the cross section

Returns:

xr.DataArray The requested information

Return type:

DataArray

get_cross_section(temperature=None, wavelength=None, unit_cross_section=None)
Get the cross-section at the given temperatures and/or wavelengths

If the temperature or wavelength are outside the model’s range, the method returns None

Parameters:
  • temperature (Quantity | None) – pint.Quantity The temperature at which the cross-section must be returned, it can be a single value or an array

  • wavelength (Quantity | None) – pint.Quantity The wavelength at which the cross-section must be returned, it can be a single value or an array

  • unit_cross_section – str The unit of the cross-section

Returns:

xr.DataArray The requested information

Return type:

DataArray

get_diff_cross_section(wavelengths, temperature)

Get the differential cross-section at multiple wavelength

Parameters:
  • wavelengths (list | ndarray)

  • temperature (DataArray | ndarray)

Returns: