Public Member Functions |
|
| Worldline () |
| | Default constructor.
|
|
| Worldline (const size_t sz) |
| | Default constructor.
|
|
| Worldline (const Worldline &) |
| | Copy constructor.
|
|
| Worldline (Worldline *orig, size_t i0, int dir, double step_max) |
| virtual | ~Worldline () |
| | Refine constructor.
|
|
int | getImin () const |
|
int | getImax () const |
|
int | getI0 () const |
|
virtual double | getMass () const =0 |
| | Get mass of particule.
|
|
void | setMetric (SmartPointer< Metric::Generic >) |
| | Set metric Smartpointer.
|
|
SmartPointer< Metric::Generic > | getMetric () const |
| | Get metric.
|
|
void | setInitCoord (const double coord[8], int dir=0) |
| | Set Initial coordinate.
|
|
void | reset () |
| | Forget integration, keeping initial contition.
|
|
virtual std::string | className () const |
| | "Worldline"
|
|
virtual std::string | className_l () const |
| | "worldline"
|
|
void | operator= (const Worldline &) |
| | Assignment to another Worldline.
|
|
void | setDelta (const double delta) |
| | Set delta.
|
|
double | getTlim () const |
| | Get tlim value.
|
|
void | setTlim (double tlim) |
| | Set tlim to a given value.
|
| double const * | getCst () const |
| | Returns the worldline's cst of motion (if any)
|
| void | setCst (double const *cst, size_t const ncsts) |
| void | setInitialCondition (SmartPointer< Metric::Generic > gg, const double coord[8], const int dir) |
| | Set or re-set the initial condition prior to integration.
|
|
void | getInitialCoord (double dest[8]) const |
| | get initial coordinate
|
|
void | getCoord (size_t index, double dest[8]) const |
| | get coordinates corresponding to index
|
|
void | getCartesianPos (size_t index, double dest[4]) const |
| | get Cartesian expression of 4-position at index.
|
|
void | xFill (double tlim) |
| | Fill x0, x1... by integrating the Worldline from previously set inittial condition to time tlim.
|
|
int | get_nelements () const |
|
void | get_t (double *dest) const |
| void | getCartesian (double const *const dates, size_t const n_dates, double *const x, double *const y, double *const z, double *const xprime=NULL, double *const yprime=NULL, double *const zprime=NULL) |
|
void | get_xyz (double *x, double *y, double *z) const |
| void | getCoord (double const *const dates, size_t const n_dates, double *const x1dest, double *const x2dest, double *const x3dest, double *const x0dot=NULL, double *const x1dot=NULL, double *const x2dot=NULL, double *const x3dot=NULL) |
| void | getCoord (double *x0, double *x1, double *x2, double *x3) const |
|
void | getSkyPos (SmartPointer< Screen > screen, double *dalpha, double *ddellta, double *dD) const |
|
void | get_dot (double *x0dot, double *x1dot, double *x2dot, double *x3dot) const |
|
void | get_prime (double *x1prime, double *x2prime, double *x3prime) const |
|
void | save_txyz (char *fichierxyz) const |
| | Save in a file.
|
|
void | save_txyz (char *const filename, double const t1, double const mass_sun, double const distance_kpc, std::string const unit, SmartPointer< Screen > sc=NULL) |
| | Save, converted.
|
Protected Attributes |
SmartPointer
< Gyoto::Metric::Generic > | metric_ |
| | The Gyoto::Metric in this part of the universe.
|
|
double * | x0_ |
| | t or T
|
|
double * | x1_ |
| | r or x
|
|
double * | x2_ |
| | theta or y
|
|
double * | x3_ |
| | phi or z
|
|
double * | x0dot_ |
| | tdot or Tdot
|
|
double * | x1dot_ |
| | rdot or xdot
|
|
double * | x2dot_ |
| | thetadot or ydot
|
|
double * | x3dot_ |
| | phidot or zdot
|
|
size_t | x_size_ |
| | Size of x0, x1... arrays.
|
|
size_t | imin_ |
| | Minimum index for which x0, x1... have been computed.
|
|
size_t | i0_ |
| | Index of initial condition in array.
|
|
size_t | imax_ |
| | Maximum index for which x0, x1... have been computed.
|
|
double | delta_ |
| | Initial integrating step ; defaults to 0.01.
|
|
double | tlim_ |
| | Minimum time for integration, stop integration if t<tlim ; defaults to 0.
|
|
double * | cst_ |
| | Worldline's csts of motion (if any)
|
|
size_t | cst_n_ |
| | Number of constants of motion.
|
| void Gyoto::Worldline::getCartesian |
( |
double const *const |
dates, |
|
|
size_t const |
n_dates, |
|
|
double *const |
x, |
|
|
double *const |
y, |
|
|
double *const |
z, |
|
|
double *const |
xprime = NULL, |
|
|
double *const |
yprime = NULL, |
|
|
double *const |
zprime = NULL |
|
) |
| |
Get the 6 Cartesian coordinates (x, y, z, dx/dt, dy/dt, dz/dt) for specific dates. The coordinates will be computed using the integrator, so they will be as accurate as possible. Transforming to Cartesian coordinates is not necessarily meaningful.
- Parameters:
-
| dates,: | the list of dates for which the coordinates are to be computed; |
| n_dates,: | the number of dates to compute ; |
| x*,: | arrays in which to store the result. These pointer may be set to NULL to retrieve only part of the information. They must be pre-allocated. |
Reimplemented in Gyoto::Astrobj::Star.