#ifndef _TRANSFORMATIONS_H
#define _TRANSFORMATIONS_H
REB_API void reb_transformations_inertial_to_jacobi_posvel(const struct reb_particle* const particles, struct reb_particle* const p_j, const struct reb_particle* const p_mass, const size_t N, const size_t N_active); REB_API void reb_transformations_inertial_to_jacobi_posvelacc(const struct reb_particle* const particles, struct reb_particle* const p_j, const struct reb_particle* const p_mass, const size_t N, const size_t N_active);
REB_API void reb_transformations_inertial_to_jacobi_acc(const struct reb_particle* const particles, struct reb_particle* const p_j,const struct reb_particle* const p_mass, const size_t N, const size_t N_active);
REB_API void reb_transformations_jacobi_to_inertial_posvel(struct reb_particle* const particles, const struct reb_particle* const p_j, const struct reb_particle* const p_mass, const size_t N, const size_t N_active);
REB_API void reb_transformations_jacobi_to_inertial_pos(struct reb_particle* const particles, const struct reb_particle* const p_j, const struct reb_particle* const p_mass, const size_t N, const size_t N_active);
REB_API void reb_transformations_jacobi_to_inertial_acc(struct reb_particle* const particles, const struct reb_particle* const p_j, const struct reb_particle* const p_mass, const size_t N, const size_t N_active);
REB_API void reb_transformations_inertial_to_democraticheliocentric_posvel(const struct reb_particle* const particles, struct reb_particle* const p_h, const size_t N, const size_t N_active);
REB_API void reb_transformations_democraticheliocentric_to_inertial_pos(struct reb_particle* const particles, const struct reb_particle* const p_h, const size_t N, const size_t N_active);
REB_API void reb_transformations_democraticheliocentric_to_inertial_posvel(struct reb_particle* const particles, const struct reb_particle* const p_h, const size_t N, const size_t N_active);
REB_API void reb_transformations_inertial_to_whds_posvel(const struct reb_particle* const particles, struct reb_particle* const p_h, const size_t N, const size_t N_active);
REB_API void reb_transformations_whds_to_inertial_pos(struct reb_particle* const particles, const struct reb_particle* const p_h, const size_t N, const size_t N_active);
REB_API void reb_transformations_whds_to_inertial_posvel(struct reb_particle* const particles, const struct reb_particle* const p_h, const size_t N, const size_t N_active);
REB_API void reb_transformations_inertial_to_barycentric_posvel(const struct reb_particle* const particles, struct reb_particle* const p_b, const size_t N, const size_t N_active);
REB_API void reb_transformations_barycentric_to_inertial_pos(struct reb_particle* const particles, const struct reb_particle* const p_b, const size_t N, const size_t N_active);
REB_API void reb_transformations_barycentric_to_inertial_posvel(struct reb_particle* const particles, const struct reb_particle* const p_b, const size_t N, const size_t N_active);
REB_API void reb_transformations_inertial_to_barycentric_acc(const struct reb_particle* const particles, struct reb_particle* const p_b, const size_t N, const size_t N_active);
REB_API void reb_transformations_barycentric_to_inertial_acc(struct reb_particle* const particles, const struct reb_particle* const p_b, const size_t N, const size_t N_active);
#endif