30 return m_basis.size();
34 inline const std::vector<LieAlgValue> &
basis()
const
59 Eigen::MatrixXd _compute_mass_matrix();
61 std::vector<Eigen::MatrixXd> _compute_structure_constants();
63 std::vector<LieAlgValue> m_basis;
65 Eigen::MatrixXd m_mass_matrix;
66 std::vector<Eigen::MatrixXd> m_strucConst;
Lie algebra class: mass matrix, structure constants and Lie bracket.
Definition liealgebra.hpp:17
@ Matrix
Definition basis.hpp:67
std::function< double(LieAlgValue &, LieAlgValue &)> LieAlgProduct
Definition liealgebra.hpp:21
LieAlgebra()
Constructors.
Definition liealgebra.cpp:10
Eigen::MatrixXcd LieAlgValue
Definition liealgebra.hpp:20
const std::vector< Eigen::MatrixXd > & structureConst() const
Computes the structure constants of the Lie algebra.
Definition liealgebra.hpp:51
const std::vector< LieAlgValue > & basis() const
Returns the basis of the Lie algebra.
Definition liealgebra.hpp:34
const Eigen::MatrixXd & massMatrix() const
Returns the Gram matrix of the Lie algebra.
Definition liealgebra.hpp:40
const size_t dimension() const
Assuming orthonormal basis.
Definition liealgebra.hpp:28
const LieAlgValue lieBracket(const LieAlgValue &A, const LieAlgValue &B) const
Computes the Lie bracket of two Lie algebra elements.
Definition liealgebra.hpp:46
Definition ddr-magnetostatics.hpp:41