8#ifndef hpAdaptSpace2DH1_hh
9#define hpAdaptSpace2DH1_hh
33 class hpAdaptiveSpaceH1;
59 bool verbose =
false);
116 uint*
offset = 0, uint* idx = 0);
166 virtual std::ostream&
info(std::ostream& os)
const;
189 void recomputeSmatrices_(
const Quad<Real>& elm);
192 std::unique_ptr<concepts::SMatrix1D> S1left_, S1right_;
197 std::unique_ptr<concepts::SMatrixBase<Real> > Smatrices2H_[2];
202 std::unique_ptr<concepts::SMatrixBase<Real> > Smatrices2V_[2];
207 std::unique_ptr<concepts::SMatrixBase<Real> > Smatrices4_[4];
216 struct number<
hp2D::hpAdaptiveSpaceH1> {
217 static inline std::string name() {
return "hp2D::hpAdaptiveSpaceH1"; }
hpAdaptiveSpaceH1(concepts::Mesh2 &msh, const concepts::InOutParameters input)
virtual concepts::TColumn< Real > * applySmatrices_(const concepts::Element< Real > &elm, uint i, const concepts::TColumn< Real > *T0, const concepts::TColumn< Real > *T1)
virtual Element< Real > * newElement_(concepts::Cell2 &cell, ushort *pMax, concepts::TColumn< Real > *T0, concepts::TColumn< Real > *T1) const
void buildEdgeDofs(const BuildTColumnsBase< Real > *b)
void buildVertexDofs(const BuildTColumnsBase< Real > *b)
hpAdaptiveSpaceH1(const hpAdaptiveSpaceH1 &spc)
hpAdaptiveSpaceH1(hpFull &prebuild, concepts::BoundaryConditions *bc=0, concepts::CellConditions *cc=0, uint spcNo=0, uint *offset=0, uint *idx=0)
void buildInnerDofs(const BuildTColumnsBase< Real > *b)
virtual std::ostream & info(std::ostream &os) const
Returns information in an output stream.
hpAdaptiveSpaceH1(concepts::Mesh2 &msh, uint l, uint p, concepts::BoundaryConditions *bc=0, concepts::CellConditions *cc=0)
virtual void recomputeShapefunctions()
void setBuildVertexDofs_(const BuildTColumnsBase< Real > *b)
void setBuildInnerDofs_(const BuildTColumnsBase< Real > *b)
virtual uint offset() const
void setBuildEdgeDofs_(const BuildTColumnsBase< Real > *b)
hpAdaptiveSpaceH1 * hpAdaptiveSpaceH1FromInput(concepts::Mesh2 &msh, const concepts::InOutParameters input, bool verbose=false)