Object
Base Object
-
template<typename T>
class Object Subclassed by sbody::Disk< T >, sbody::Particle< T >
Public Functions
-
virtual bool hit(const bounded_vector<T, 8> ¤t, const bounded_vector<T, 8> &last) const = 0
- Parameters:
current –
last –
- Returns:
bool
-
virtual T dopplerFactor(const boost::numeric::ublas::bounded_vector<T, 8> &photon, TimeSystem photon_time) const = 0
- \[z=\frac{E_\mathrm{obj}}{E_\mathrm{obs}}-1\]where\[E_\mathrm{obj}=-g_{\mu\nu}u_\mathrm{ph}^\mu u_\mathrm{obj}^\nu\]For the distant observer, the equation is the same. With the tetrad velocity \(u_\mathrm{obs}=(1,0,0,0)\) and metric\[\begin{split} g_\mathrm{obs}= \begin{pmatrix} -1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \end{pmatrix}, \end{split}\]the energy of the photon can be simplified to\[ E_\mathrm{obs}=u_\mathrm{ph}^0. \]
- Parameters:
photon – 8 dimensional information of photon
photon_time –
- Returns:
T
-
virtual bool hit(const bounded_vector<T, 8> ¤t, const bounded_vector<T, 8> &last) const = 0
Particle
-
template<typename T>
class Particle : public sbody::Object<T> Subclassed by sbody::Hotspot< T >, sbody::Star< T >
Public Functions
-
inline Particle(const Metric<T> &metric, TimeSystem time, DynamicalSystem coordinate, T absolute_accuracy, T relative_accuracy, bool fixed = false)
Construct a new star object.
- Parameters:
metric –
radius – radius
fixed – whether the position of the star is fixed
-
inline Particle(const Metric<T> &metric, TimeSystem time, DynamicalSystem coordinate, T absolute_accuracy, T relative_accuracy, bool fixed = false)
Star
Disk
-
template<typename T>
class Disk : public sbody::Object<T> Subclassed by sbody::NovikovThorneDisk< T >