3#ifndef DUNE_ORTHONORMALBASIS_HH
4#define DUNE_ORTHONORMALBASIS_HH
8#include <dune/geometry/topologyfactory.hh>
18 template< int dim, class SF, class CF = typename ComputeField< SF, 512 >::Type >
19 struct OrthonormalBasisFactory;
20 template<
int dim,
class SF,
class CF >
30 typedef unsigned int Key;
35 template<
int dim,
class SF,
class CF >
37 public TopologyFactory< OrthonormalBasisFactoryTraits<dim,SF,CF> >
47 template <
unsigned int dd,
class FF>
62 template<
class Topology >
65 const typename Traits::MonomialBasisType &monomialBasis = *Traits::MonomialBasisProviderType::template create< SimplexTopology >( order );
68 if( _coeffs.
size() <= monomialBasis.size() )
71 _coeffs.
fill( matrix );
74 return new Basis( monomialBasis, _coeffs, monomialBasis.
size() );
Definition brezzidouglasmarini1cube2d.hh:14
Definition orthonormalbasis.hh:38
SparseCoeffMatrix< StorageField, 1 > CoefficientMatrix
Definition orthonormalbasis.hh:56
StandardEvaluator< MonomialBasisType > Evaluator
Definition orthonormalbasis.hh:57
SF StorageField
Definition orthonormalbasis.hh:40
PolynomialBasis< Evaluator, CoefficientMatrix > Basis
Definition orthonormalbasis.hh:58
GenericGeometry::SimplexTopology< dim >::type SimplexTopology
Definition orthonormalbasis.hh:60
EvaluationBasisFactory< dimension, StorageField >::Type MonomialBasisProviderType
Definition orthonormalbasis.hh:53
CF ComputeField
Definition orthonormalbasis.hh:41
Traits::Object Object
Definition orthonormalbasis.hh:45
static Object * createObject(const unsigned int order)
Definition orthonormalbasis.hh:63
OrthonormalBasisFactoryTraits< dim, SF, CF > Traits
Definition orthonormalbasis.hh:42
Traits::Key Key
Definition orthonormalbasis.hh:44
static const unsigned int dimension
Definition orthonormalbasis.hh:39
MonomialBasisProviderType::Object MonomialBasisType
Definition orthonormalbasis.hh:54
Definition orthonormalbasis.hh:22
SparseCoeffMatrix< SF, 1 > CoefficientMatrix
Definition orthonormalbasis.hh:25
MonomialBasisProviderType::Object MonomialBasisType
Definition orthonormalbasis.hh:24
unsigned int Key
Definition orthonormalbasis.hh:30
Dune::MonomialBasisProvider< dim, SF > MonomialBasisProviderType
Definition orthonormalbasis.hh:23
OrthonormalBasisFactory< dim, SF, CF > Factory
Definition orthonormalbasis.hh:32
const Basis Object
Definition orthonormalbasis.hh:31
PolynomialBasis< Evaluator, CoefficientMatrix > Basis
Definition orthonormalbasis.hh:27
static const unsigned int dimension
Definition orthonormalbasis.hh:29
StandardEvaluator< MonomialBasisType > Evaluator
Definition orthonormalbasis.hh:26
Definition orthonormalbasis.hh:49
MonomialBasisProvider< dd, FF > Type
Definition orthonormalbasis.hh:50
Definition orthonormalcompute.hh:94
Definition basisevaluator.hh:130
Definition coeffmatrix.hh:46
unsigned int size() const
Definition coeffmatrix.hh:67
void fill(const RowMatrix &mat, bool verbose=false)
Definition coeffmatrix.hh:158
Definition monomialbasis.hh:989
Definition polynomialbasis.hh:63