chombo-discharge
CD_PhotonImplem.H
Go to the documentation of this file.
1 /* chombo-discharge
2  * Copyright © 2022 SINTEF Energy Research.
3  * Please refer to Copyright.txt and LICENSE in the chombo-discharge root directory.
4  */
5 
12 #ifndef CD_PhotonImplem_H
13 #define CD_PhotonImplem_H
14 
15 // Our includes
16 #include <CD_Photon.H>
17 #include <CD_NamespaceHeader.H>
18 
20 {}
21 
23 {}
24 
25 inline Photon::Photon(const RealVect& a_position, const RealVect& a_velocity, const Real& a_kappa, const Real a_weight)
26 {
27  this->define(a_position, a_velocity, a_kappa, a_weight);
28 }
29 
30 inline void
31 Photon::define(const RealVect& a_position, const RealVect& a_velocity, const Real& a_kappa, const Real a_weight)
32 {
33  this->position() = a_position;
34  this->velocity() = a_velocity;
35  this->kappa() = a_kappa;
36  this->weight() = a_weight;
37 }
38 
39 inline Real&
41 {
42  return this->real<0>();
43 }
44 
45 inline const Real&
47 {
48  return this->real<0>();
49 }
50 
51 inline Real&
53 {
54  return this->real<1>();
55 }
56 
57 inline const Real&
59 {
60  return this->real<1>();
61 }
62 
63 inline RealVect&
65 {
66  return this->vect<0>();
67 }
68 
69 inline const RealVect&
71 {
72  return this->vect<0>();
73 }
74 
75 #include <CD_NamespaceFooter.H>
76 
77 #endif
Declaration of a photon class for particle methods.
RealVect & position()
Get the particle position.
Definition: CD_GenericParticleImplem.H:47
RealVect & velocity()
Get photon velocity.
Definition: CD_PhotonImplem.H:64
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.
Definition: CD_PhotonImplem.H:31
Photon()
Default constructor. Must subsequently set all parameters.
Definition: CD_PhotonImplem.H:19
Real & weight()
Get photon weight.
Definition: CD_PhotonImplem.H:40
virtual ~Photon()
Destructor (does nothing)
Definition: CD_PhotonImplem.H:22
Real & kappa()
Get photon absorption length.
Definition: CD_PhotonImplem.H:52