// // Created by dominik on 8/16/24. // #ifndef RWSIM_MOTIONTETRAHEDRAL_H #define RWSIM_MOTIONTETRAHEDRAL_H #include "base.h" #include #include #include class TetrahedralJump final : public Motion { public: TetrahedralJump(double, double, std::mt19937_64&); explicit TetrahedralJump(std::mt19937_64&); void initialize() override; double jump() override; private: const double m_beta{std::acos(-1/3.)}; std::array m_corners{}; }; #endif //RWSIM_MOTIONTETRAHEDRAL_H