8#ifndef IGL_CROUZEIX_RAVIART_COTMATRIX
9#define IGL_CROUZEIX_RAVIART_COTMATRIX
12#include <Eigen/Sparse>
27 template <
typename DerivedV,
typename DerivedF,
typename LT,
typename DerivedE,
typename DerivedEMAP>
29 const Eigen::MatrixBase<DerivedV> & V,
30 const Eigen::MatrixBase<DerivedF> & F,
31 Eigen::SparseMatrix<LT> & L,
32 Eigen::PlainObjectBase<DerivedE> & E,
33 Eigen::PlainObjectBase<DerivedEMAP> & EMAP);
46 template <
typename DerivedV,
typename DerivedF,
typename DerivedE,
typename DerivedEMAP,
typename LT>
48 const Eigen::MatrixBase<DerivedV> & V,
49 const Eigen::MatrixBase<DerivedF> & F,
50 const Eigen::MatrixBase<DerivedE> & E,
51 const Eigen::MatrixBase<DerivedEMAP> & EMAP,
52 Eigen::SparseMatrix<LT> & L);
54#ifndef IGL_STATIC_LIBRARY
55# include "crouzeix_raviart_cotmatrix.cpp"
void crouzeix_raviart_cotmatrix(const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedF > &F, Eigen::SparseMatrix< LT > &L, Eigen::PlainObjectBase< DerivedE > &E, Eigen::PlainObjectBase< DerivedEMAP > &EMAP)
Compute the Crouzeix-Raviart cotangent stiffness matrix.