#include <keplerian_element_propagator.hpp>
In order to work correctly, the parent node's scale must be set to AU.
Definition at line 57 of file keplerian_element_propagator.hpp.
Public Member Functions | |
BROKER_DECLARE_CREATOR (periapsis::space::keplerian_element_propagator) | |
virtual const gsgl::string & | get_type_name () const |
keplerian_element_propagator (const gsgl::data::config_record &obj_config) | |
virtual void | update (const double jdn, gsgl::math::vector &position, gsgl::math::vector &velocity) |
virtual | ~keplerian_element_propagator () |
Private Member Functions | |
bool | get_array (const gsgl::string &str, double *a, const int num) |
Private Attributes | |
double | aux [4] |
double | elements [6] |
bool | has_aux |
bool | has_data |
double | rates [6] |
keplerian_element_propagator | ( | const gsgl::data::config_record & | obj_config | ) |
Definition at line 54 of file keplerian_element_propagator.cpp.
References keplerian_element_propagator::aux, gsgl::math::DEG2RAD, keplerian_element_propagator::elements, keplerian_element_propagator::get_array(), keplerian_element_propagator::has_aux, keplerian_element_propagator::has_data, and keplerian_element_propagator::rates.
~keplerian_element_propagator | ( | ) | [virtual] |
Definition at line 85 of file keplerian_element_propagator.cpp.
BROKER_DECLARE_CREATOR | ( | periapsis::space::keplerian_element_propagator | ) |
bool get_array | ( | const gsgl::string & | str, | |
double * | a, | |||
const int | num | |||
) | [private] |
Definition at line 194 of file keplerian_element_propagator.cpp.
References iterable::iter(), string::split(), and string::w_string().
Referenced by keplerian_element_propagator::keplerian_element_propagator().
const gsgl::string & get_type_name | ( | ) | const [virtual, inherited] |
Definition at line 54 of file broker.cpp.
References countable::is_empty(), and brokered_object::type_name.
Referenced by node::draw_scene(), and simulation::update_node().
void update | ( | const double | jdn, | |
gsgl::math::vector & | position, | |||
gsgl::math::vector & | velocity | |||
) | [virtual] |
Implements propagator.
Definition at line 113 of file keplerian_element_propagator.cpp.
References keplerian_element_propagator::aux, gsgl::math::DEG2RAD, keplerian_element_propagator::elements, vector::get_w(), vector::get_x(), vector::get_y(), vector::get_z(), keplerian_element_propagator::has_aux, keplerian_element_propagator::has_data, gsgl::math::PI, keplerian_element_propagator::rates, and gsgl::math::units::SECONDS_PER_YEAR.
double aux[4] [private] |
Definition at line 62 of file keplerian_element_propagator.hpp.
Referenced by keplerian_element_propagator::keplerian_element_propagator(), and keplerian_element_propagator::update().
double elements[6] [private] |
Definition at line 60 of file keplerian_element_propagator.hpp.
Referenced by keplerian_element_propagator::keplerian_element_propagator(), and keplerian_element_propagator::update().
bool has_aux [private] |
Definition at line 63 of file keplerian_element_propagator.hpp.
Referenced by keplerian_element_propagator::keplerian_element_propagator(), and keplerian_element_propagator::update().
bool has_data [private] |
Definition at line 63 of file keplerian_element_propagator.hpp.
Referenced by keplerian_element_propagator::keplerian_element_propagator(), and keplerian_element_propagator::update().
double rates[6] [private] |
Definition at line 61 of file keplerian_element_propagator.hpp.
Referenced by keplerian_element_propagator::keplerian_element_propagator(), and keplerian_element_propagator::update().