solar Module

PDS Ring-Moon Systems Node, SETI Institute

Models for solar flux density at a given distance from the Sun.

This module provides access to various models of solar flux density. Models currently supported are:

  • Colina (0.1195 to 2.5 micron)

  • Kurucz (0.15 to 300 micron)

  • Rieke (0.2 to 30 micron)

  • STIS (0.1195 to 2.7 micron)

  • STIS_Rieke (0.1195 to 30 micron)

The solar flux density can be returned directly in the form of a Tabulation object (see the package rms-tabulation or the mean flux density can be returned over a particular filter bandwith. In each case you can specify the model to use, the units for wavelength and flux density, the distance from the Sun, and whether or not to return just F instead of flux density.

solar.flux_density(model='STIS_Rieke', *, units='W/m^2/um', xunits='um', sun_range=1.0, solar_f=False)[source]

Compute the flux density of a solar model in the specified units.

Parameters:
  • model (str, optional) – Name of the model.

  • units (str, optional) – Units for the flux. Options are: “W/m^2/um”, “W/m^2/nm”, “W/m^2/A”, “erg/s/cm^2/um”, “erg/s/cm^2/nm”, “erg/s/cm^2/A”, “W/m^2/Hz”, “erg/s/cm^2/Hz”, “Jy”, or “uJy”. “u” represents “mu” meaning micro.

  • xunits (str, optional) – Units for the x-axis. Options are: “um”, “nm”, “A”, or “Hz”. “u” represents “mu” meaning micro.

  • sun_range (float, optional) – Distance from Sun to target in AU.

  • solar_f (bool, optional) – True to divide by pi, providing solar F instead of solar flux density.

Returns:

The model solar flux density in the specified units.

Return type:

Tabulation

solar.bandpass_flux_density(bandpass, model='STIS_Rieke', *, units='W/m^2/um', xunits='um', sun_range=1.0, solar_f=False)[source]

Compute the average solar flux density over a filter bandpass.

Parameters:
  • bandpass (Tabulation or tuple) – The Tabulation of the filter bandpass, with wavelength in units specified by xunits (if model is a string) or in the same units as model (if model is a Tabulation). Alternatively, a tuple of two arrays (wavelength, fraction), each of the same size.

  • model (str or Tabulation, optional) – Name of the model. Alternatively, a Tabulation of the solar flux density, already in the desired units.

  • units (str, optional) – Units for the flux. Options are: “W/m^2/um”, “W/m^2/nm”, “W/m^2/A”, “erg/s/cm^2/um”, “erg/s/cm^2/nm”, “erg/s/cm^2/A”, “W/m^2/Hz”, “erg/s/cm^2/Hz”, “Jy”, or “uJy”. “u” represents “mu” meaning micro. Ignored if model is a Tabulation.

  • xunits (str, optional) – Units for the x-axis. Options are: “um”, “nm”, “A”, or “Hz”. “u” represents “mu” meaning micro. Ignored if model is a Tabulation.

  • sun_range (float, optional) – Distance from Sun to target in AU.

  • solar_f (bool, optional) – True to divide by pi, providing solar F instead of solar flux density.

Returns:

The mean solar flux density or solar F within the filter bandpass.

Return type:

float

Note

If the bandpass of the filter is wider than the wavelength coverage of the selected solar model, the computation will be restricted to the wavelength range that is in common between the filter and the model.

solar.mean_flux_density(center, width, model='STIS_Rieke', *, units='W/m^2/um', xunits='um', sun_range=1.0, solar_f=False)[source]

Compute average solar flux density over the bandpass of a “boxcar” filter.

Parameters:
  • center (float) – The center of the bandpass (microns).

  • width (float) – The full width of the bandpass (microns).

  • model (str or Tabulation, optional) – Name of the model. Alternatively, a Tabulation of the solar flux density, already in the desired units.

  • units (str, optional) – Units for the flux. Options are: “W/m^2/um”, “W/m^2/nm”, “W/m^2/A”, “erg/s/cm^2/um”, “erg/s/cm^2/nm”, “erg/s/cm^2/A”, “W/m^2/Hz”, “erg/s/cm^2/Hz”, “Jy”, or “uJy”. “u” represents “mu” meaning micro. Ignored if model is a Tabulation.

  • xunits (str, optional) – Units for the x-axis. Options are: “um”, “nm”, “A”, or “Hz”. “u” represents “mu” meaning micro. Ignored if model is a Tabulation.

  • sun_range (float, optional) – Distance from Sun to target in AU.

  • solar_f (bool, optional) – True to divide by pi, providing solar F instead of solar flux density.

Returns:

The mean solar flux density or solar F within the filter bandpass.

Return type:

float

Note

If the bandpass of the filter is wider than the wavelength coverage of the selected solar model, the computation will be restricted to the wavelength range that is in common between the filter and the model.

solar.bandpass_f(bandpass, model='STIS_Rieke', *, units='W/m^2/um', xunits='um', sun_range=1.0)[source]

Compute the solar F averaged over a filter bandpass.

Parameters:
  • bandpass (Tabulation or tuple) – The Tabulation of the filter bandpass, with wavelength in units specified by xunits (if model is a string) or in the same units as model (if model is a Tabulation). Alternatively, a tuple of two arrays (wavelength, fraction), each of the same size.

  • model (str or Tabulation, optional) – Name of the model. Alternatively, a Tabulation of the solar flux density, already in the desired units.

  • units (str, optional) – Units for the flux. Options are: “W/m^2/um”, “W/m^2/nm”, “W/m^2/A”, “erg/s/cm^2/um”, “erg/s/cm^2/nm”, “erg/s/cm^2/A”, “W/m^2/Hz”, “erg/s/cm^2/Hz”, “Jy”, or “uJy”. “u” represents “mu” meaning micro. Ignored if model is a Tabulation.

  • xunits (str, optional) – Units for the x-axis. Options are: “um”, “nm”, “A”, or “Hz”. “u” represents “mu” meaning micro. Ignored if model is a Tabulation.

  • sun_range (float, optional) – Distance from Sun to target in AU.

Returns:

The mean solar F within the filter bandpass.

Return type:

float

Note

If the bandpass of the filter is wider than the wavelength coverage of the selected solar model, the computation will be restricted to the wavelength range that is in common between the filter and the model.

solar.mean_f(center, width, model='STIS_Rieke', *, units='W/m^2/um', xunits='um', sun_range=1.0)[source]

Compute average solar F over the bandpass of a “boxcar” filter.

Parameters:
  • center (float) – The center of the bandpass (microns).

  • width (float) – The full width of the bandpass (microns).

  • model (str or Tabulation, optional) – Name of the model. Alternatively, a Tabulation of the solar flux density, already in the desired units.

  • units (str, optional) – Units for the flux. Options are: “W/m^2/um”, “W/m^2/nm”, “W/m^2/A”, “erg/s/cm^2/um”, “erg/s/cm^2/nm”, “erg/s/cm^2/A”, “W/m^2/Hz”, “erg/s/cm^2/Hz”, “Jy”, or “uJy”. “u” represents “mu” meaning micro. Ignored if model is a Tabulation.

  • xunits (str, optional) – Units for the x-axis. Options are: “um”, “nm”, “A”, or “Hz”. “u” represents “mu” meaning micro. Ignored if model is a Tabulation.

  • sun_range (float, optional) – Distance from Sun to target in AU.

Returns:

The mean solar flux density or solar F within the filter bandpass.

Return type:

float

Note

If the bandpass of the filter is wider than the wavelength coverage of the selected solar model, the computation will be restricted to the wavelength range that is in common between the filter and the model.