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.