Radiative Transfer Photon Sources

Class providing photon sources for Monte Carlo radiative transfer calculations—objects that emit photon packets into the computational domain. Each implementation describes a specific type of radiation source (e.g.a point source, a stellar population, an AGN, or a uniform field) and provides the luminosity spectrum (in \(L_\odot\) AA\(^{-1}\)), the integrated luminosity over a wavelength range, and a method to initialize photon packet properties (wavelength, position, direction, and luminosity weight) drawn from the source’s spatial and spectral distribution.

Default implementation: radiativeTransferSourcePoint

Methods

initializePhotonPacketvoid

Initialize a photon packet from the source.

  • class(radiativeTransferPhotonPacketClass), intent(inout) :: photonPacket

spectrumdouble precision

Return the spectrum (in units of \(L_\odot\) AA\(^{-1}\)) of the source at the given wavelength.

  • double precision, intent(in ) :: wavelength

  • integer , intent(in ), optional :: sourceType

luminositydouble precision

Return the luminosity (in units of \(L_\odot\)) of the source at the given wavelength range.

  • double precision, intent(in ) :: wavelengthMinimum, wavelengthMaximum

  • integer , intent(in ), optional :: sourceType

sourceTypeCountinteger

Return the number of source types.

sourceTypeNametype(varying_string)

Return the name of the requested of source type.

  • integer, intent(in ) :: sourceType

radiativeTransferSourceDistributed

A photon source class for spatially extended radiative transfer sources whose emission is distributed according to a specified mass distribution. Photon packets are launched from positions sampled from the mass distribution, with spectra and a descriptive label provided via the [radiativeTransferSpectrum] object and [label] parameter.

Parameters

  • [position] (default [0.0d0,0.0d0,0.0d0]) — The position of the distributed source.

  • [label] (default var_str('unknown')) — A descriptive label for the source.

radiativeTransferSourcePoint

A photon source class for unresolved point-like radiative transfer sources that emit isotropically from a fixed location in three-dimensional space. The source position and a descriptive label are given by the [position] and [label] parameters, and the spectral shape is provided via the [radiativeTransferSpectrum] object.

(Default implementation)

Parameters

  • [position] (default [0.0d0,0.0d0,0.0d0]) — The position of the point source.

  • [label] (default var_str('unknown')) — A descriptive label for the source.

radiativeTransferSourceSummation

A photon source class for summation sources.

Methods

  • list — Return a list of all sub-components.