The SKIRT project
advanced radiative transfer for astrophysics
PhotonPacket::ScatteringInfo Class Reference

#include <PhotonPacket.hpp>

Public Member Functions

 ScatteringInfo (int h)

Public Attributes

bool dipole
double lambda
int species
bool valid
Vec velocity

Private Attributes

int _h

Friends

class PhotonPacket

Detailed Description

This class defines the scattering information record maintained by a photon packet for each medium component that needs it. In case some aspects of the scattering event are governed by a probability distribution, this information record can be used to ensure that the outgoing random walk photon packet and all corresponding peel-off photon packets use the same randomly sampled values.

The following data members have public scope so that they can be directly accessed by client code:

  • valid: boolean flag, initially false; should be set to true once this record holds valid values.
  • dipole: boolean flag, initially false, indicating the selected scattering phase function: true means dipole, false means isotropic.
  • species: integer identifier of the scattering particle species, initially zero.
  • velocity: velocity vector of the scattering particle in the local frame, initially the null vector.
  • lambda: outgoing wavelength of the scattered photon packet, initially zero.

Apart from initialization by the getScatteringInfo() function as indicated above, the client code is fully responsible for writing and reading these fields.


The documentation for this class was generated from the following file: