26 #ifndef __GyotoKerrBL_H_
27 #define __GyotoKerrBL_H_
30 namespace Metric {
class KerrBL; }
36 #ifdef GYOTO_USE_XERCES
37 #include <GyotoRegister.h>
57 KerrBL(double spin, double mass) ;
70 void
setSpin(const double spin);
86 double
gmunu(const double * const x,
87 int alpha, int beta) const ;
96 const int, const int, const int) const;
98 double ScalarProd(const double* pos,
99 const double* u1, const double* u2) const ;
101 void
nullifyCoord(double coord[8], double & tdot2) const;
108 double dir=1.) const ;
111 void
MakeCoord(const double coordin[8], const double cst[5], double coordout[8]) const ;
115 void
MakeMomentum(const double coordin[8], const double cst[5], double coordout[8]) const;
119 #ifdef GYOTO_USE_XERCES
130 int myrk4(Worldline * line, const double coordin[8], double h, double res[8]) const;
131 int myrk4(const double coor[8], const double cst[5], double h, double res[8]) const;
132 int myrk4_adaptive(Gyoto::Worldline* line, const double coor[8], double lastnorm, double normref, double coor1[8], double h0, double& h1) const;
133 int CheckCons(const double coor_init[8], const double cst[5], double coor_fin[8]) const;
134 void Normalize4v(double coord[8], const double part_mass) const;
139 int diff(const double y[8], const double cst[5], double res[8]) const ;
142 void
computeCst(const double coord[8], double cst[5]) const;