chombo-discharge
Loading...
Searching...
No Matches
Public Member Functions | List of all members
Photon Class Reference

Particle class for usage with Monte Carlo radiative transfer. More...

#include <CD_Photon.H>

Inheritance diagram for Photon:
Inheritance graph
[legend]
Collaboration diagram for Photon:
Collaboration graph
[legend]

Public Member Functions

 Photon ()
 Default constructor. Must subsequently set all parameters.
 
 Photon (const RealVect &a_position, const RealVect &a_velocity, const Real &a_kappa, const Real a_weight=1.0)
 Full constructor.
 
virtual ~Photon ()
 Destructor (does nothing)
 
void define (const RealVect &a_position, const RealVect &a_velocity, const Real &a_kappa, const Real a_weight=1.0)
 Define function. Sets all parameters.
 
Realweight ()
 Get photon weight.
 
const Realweight () const
 Get particle weight.
 
Realkappa ()
 Get photon absorption length.
 
const Realkappa () const
 Get mean absorption length.
 
RealVectvelocity ()
 Get photon velocity.
 
const RealVectvelocity () const
 Get photon velocity.
 
- Public Member Functions inherited from GenericParticle< 2, 1 >
 GenericParticle ()
 Default constructor – initializes everything to zero.
 
 GenericParticle (const GenericParticle< M, N > &a_other)
 Copy constructor. Copies all fields.
 
virtual ~GenericParticle ()
 Destructor (deallocates runtime memory storage)
 
const int32_tparticleID () const noexcept
 Get the particle ID.
 
int32_tparticleID () noexcept
 Get the particle ID.
 
const int32_trankID () const noexcept
 Get the MPI rank ID.
 
int32_trankID () noexcept
 Get the MPI rank ID.
 
RealVectposition ()
 Get the particle position.
 
const RealVectposition () const
 Get the particle position.
 
const std::array< Real, M > & getReals () const noexcept
 Get the M scalars.
 
std::array< Real, M > & getReals () noexcept
 Get the M scalars.
 
const std::array< RealVect, N > & getVects () const noexcept
 Get the N vectors.
 
std::array< RealVect, N > & getVects () noexcept
 Get the N vectors.
 
Realreal ()
 Get one of the scalars.
 
const Realreal () const
 Get one of the scalars.
 
RealVectvect ()
 Get one of the RealVects.
 
const RealVectvect () const
 Get one of the RealVects.
 
bool operator== (const GenericParticle< M, N > &a_other) const
 Comparison operator with other particle.
 
bool operator!= (const GenericParticle< M, N > &a_other) const
 Comparison operator with other particle.
 
bool operator< (const GenericParticle< M, N > &a_other) const noexcept
 Particle comparison operator. Returns lexicographical ordering.
 
virtual int size () const
 Returns the size, in number of bytes, of a flat representation of the data in this object.
 
virtual void linearOut (void *const a_buffer) const
 Write a linear binary representation of the internal data. Assumes that sufficient memory for the buffer has already been allocated by the caller.
 
virtual void linearIn (const void *const a_buffer)
 Read a linear binary representation of the internal data. Assumes that the buffer has the correct data.
 
virtual int H5size () const
 Function that is used when writing particles to HDF5.
 
virtual void H5linearOut (void *const a_buffer) const
 Linearize the Real components onto a buffer workable by HDF5.
 
virtual void H5linearIn (const void *const a_buffer)
 Delinearize the buffer onto the real components in the particle class.
 

Additional Inherited Members

- Protected Attributes inherited from GenericParticle< 2, 1 >
int32_t m_particleID
 Particle ID.
 
int32_t m_rankID
 MPI rank owning this particle.
 
RealVect m_position
 Particle position.
 
std::array< Real, Mm_scalars
 Scalar storage array.
 
std::array< RealVect, Nm_vectors
 vector storage array
 

Detailed Description

Particle class for usage with Monte Carlo radiative transfer.

Constructor & Destructor Documentation

◆ Photon()

Photon::Photon ( const RealVect a_position,
const RealVect a_velocity,
const Real a_kappa,
const Real  a_weight = 1.0 
)
inline

Full constructor.

Parameters
[in]a_positionPhoton position
[in]a_velocityPhoton velocity
[in]a_kappaMean absorption length
[in]a_weightParticle weight. a_weight=1 implies a physical photon.

Member Function Documentation

◆ define()

void Photon::define ( const RealVect a_position,
const RealVect a_velocity,
const Real a_kappa,
const Real  a_weight = 1.0 
)
inline

Define function. Sets all parameters.

Parameters
[in]a_positionPhoton position
[in]a_velocityPhoton velocity
[in]a_kappaMean absorption length
[in]a_weightParticle weight. a_weight=1 implies a physical photon.

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