/** @file Particle.hpp * * @author Cory Alexander Balaton (coryab) * @author Janita Ovidie Sandtrøen Willumsen (janitaws) * * @version 0.1 * * @brief A class that holds the properties of a particle. * * @bug No known bugs * */ #ifndef __PARTICLE__ #define __PARTICLE__ #include /** @brief A class that holds attributes of a particle * */ class Particle { private: double q; ///< Charge double m; ///< Mass arma::vec::fixed<3> r_vec; ///< position arma::vec::fixed<3> v_vec; ///< velocity public: /** @brief Initialize the particle. * * @details Initialize the particle with a charge, mass, position and * velocity. * */ Particle(double q, double m, arma::vec::fixed<3> r_vec, arma::vec::fixed<3> v_vec); /** @brief Make private attributes available for PenningTrap. * */ friend class PenningTrap; }; #endif