Object
- 
template<typename Type>
class Object Subclassed by SBody::Disk< Type >, SBody::Particle< Type >
Public Functions
- 
inline Object(std::shared_ptr<Metric<Type>> metric)
 Construct a new Object object.
- Parameters:
 metric –
- 
virtual int Hit(const boost::numeric::ublas::bounded_vector<Type, 8> ¤t, const boost::numeric::ublas::bounded_vector<Type, 8> &last) = 0
 - Parameters:
 current –
last –
- Returns:
 int
- 
virtual Type Redshift(const boost::numeric::ublas::bounded_vector<Type, 8> &photon, TimeSystem photon_time) = 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:
 Type
 
- 
inline Object(std::shared_ptr<Metric<Type>> metric)
 
Star
- 
template<typename Type>
class Star : public SBody::Particle<Type>