8#ifndef IGL_CR_VECTOR_MASS
9#define IGL_CR_VECTOR_MASS
14#include <Eigen/Sparse>
28 template <
typename DerivedV,
typename DerivedF,
typename DerivedE,
32 const Eigen::MatrixBase<DerivedV>& V,
33 const Eigen::MatrixBase<DerivedF>& F,
34 const Eigen::MatrixBase<DerivedE>& E,
35 Eigen::SparseMatrix<ScalarM>& M);
39 template <
typename DerivedV,
typename DerivedF,
typename DerivedE,
43 const Eigen::MatrixBase<DerivedV>& V,
44 const Eigen::MatrixBase<DerivedF>& F,
45 Eigen::PlainObjectBase<DerivedE>& E,
46 Eigen::SparseMatrix<ScalarM>& M);
53 template <
typename DerivedF,
typename DeriveddA,
54 typename DerivedE,
typename ScalarM>
57 const Eigen::MatrixBase<DerivedF>& F,
58 const Eigen::MatrixBase<DeriveddA>& dA,
59 const Eigen::MatrixBase<DerivedE>& E,
60 Eigen::SparseMatrix<ScalarM>& M);
65#ifndef IGL_STATIC_LIBRARY
66# include "cr_vector_mass.cpp"
#define IGL_INLINE
Definition igl_inline.h:15
void cr_vector_mass_intrinsic(const Eigen::MatrixBase< DerivedF > &F, const Eigen::MatrixBase< DeriveddA > &dA, const Eigen::MatrixBase< DerivedE > &E, Eigen::SparseMatrix< ScalarM > &M)
This is an overloaded member function, provided for convenience. It differs from the above function o...
void cr_vector_mass(const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedF > &F, const Eigen::MatrixBase< DerivedE > &E, Eigen::SparseMatrix< ScalarM > &M)
Computes the CR vector mass matrix, using an arrangement of all parallel degrees of freedom first,...