43 #include <boost/shared_ptr.hpp>
44 #include <boost/weak_ptr.hpp>
50 namespace LocalRegions
72 typedef std::map<MetricType, Array<OneD, NekDouble> >
MetricMap;
102 const std::vector<unsigned int > &nummodes,
103 const int nmodes_offset,
105 std::vector<LibUtilities::BasisType> &fromType);
108 const boost::shared_ptr<Expansion> &EdgeExp,
114 const boost::shared_ptr<Expansion> &EdgeExp,
119 const boost::shared_ptr<Expansion> &FaceExp,
157 const std::vector<unsigned int > &nummodes,
158 const int nmodes_offset,
160 std::vector<LibUtilities::BasisType> &fromType);
163 const boost::shared_ptr<Expansion> &EdgeExp,
169 const boost::shared_ptr<Expansion> &EdgeExp,
174 const boost::shared_ptr<Expansion> &FaceExp,
void ComputeLaplacianMetric()
boost::weak_ptr< Expansion > ExpansionWeakPtr
DNekMatSharedPtr BuildTransformationMatrix(const DNekScalMatSharedPtr &r_bnd, const StdRegions::MatrixType matrixType)
void ExtractDataToCoeffs(const NekDouble *data, const std::vector< unsigned int > &nummodes, const int nmodes_offset, NekDouble *coeffs, std::vector< LibUtilities::BasisType > &fromType)
virtual void v_MultiplyByQuadratureMetric(const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &outarray)
SpatialDomains::GeomFactorsSharedPtr m_metricinfo
DNekMatSharedPtr BuildVertexMatrix(const DNekScalMatSharedPtr &r_bnd)
std::map< ConstFactorType, NekDouble > ConstFactorMap
SpatialDomains::GeometrySharedPtr m_geom
boost::shared_ptr< DNekMat > DNekMatSharedPtr
std::vector< ExpansionSharedPtr >::iterator ExpansionVectorIter
std::vector< ExpansionSharedPtr > ExpansionVector
boost::shared_ptr< DNekScalMat > DNekScalMatSharedPtr
virtual DNekMatSharedPtr v_BuildTransformationMatrix(const DNekScalMatSharedPtr &r_bnd, const StdRegions::MatrixType matrixType)
virtual DNekMatSharedPtr v_BuildVertexMatrix(const DNekScalMatSharedPtr &r_bnd)
virtual void v_ExtractDataToCoeffs(const NekDouble *data, const std::vector< unsigned int > &nummodes, const int nmodes_offset, NekDouble *coeffs, std::vector< LibUtilities::BasisType > &fromType)
void AddFaceNormBoundaryInt(const int face, const boost::shared_ptr< Expansion > &FaceExp, const Array< OneD, const NekDouble > &Fn, Array< OneD, NekDouble > &outarray)
The base class for all shapes.
Expansion(SpatialDomains::GeometrySharedPtr pGeom)
virtual void v_ComputeLaplacianMetric()
std::map< StdRegions::VarCoeffType, Array< OneD, NekDouble > > VarCoeffMap
virtual void v_GetCoords(Array< OneD, NekDouble > &coords_1, Array< OneD, NekDouble > &coords_2, Array< OneD, NekDouble > &coords_3)
std::map< MetricType, Array< OneD, NekDouble > > MetricMap
virtual DNekScalMatSharedPtr v_GetLocMatrix(const LocalRegions::MatrixKey &mkey)
void DGDeriv(const int dir, const Array< OneD, const NekDouble > &inarray, Array< OneD, ExpansionSharedPtr > &EdgeExp, Array< OneD, Array< OneD, NekDouble > > &coeffs, Array< OneD, NekDouble > &outarray)
virtual const SpatialDomains::GeomFactorsSharedPtr & v_GetMetricInfo() const
boost::shared_ptr< Expansion > ExpansionSharedPtr
virtual void v_AddFaceNormBoundaryInt(const int face, const boost::shared_ptr< Expansion > &FaceExp, const Array< OneD, const NekDouble > &Fn, Array< OneD, NekDouble > &outarray)
StandardMatrixTag boost::call_traits< LhsDataType >::const_reference rhs typedef NekMatrix< LhsDataType, StandardMatrixTag >::iterator iterator
DNekScalMatSharedPtr GetLocMatrix(const LocalRegions::MatrixKey &mkey)
SpatialDomains::GeometrySharedPtr GetGeom() const
boost::shared_ptr< GeomFactors > GeomFactorsSharedPtr
Pointer to a GeomFactors object.
virtual void v_DGDeriv(const int dir, const Array< OneD, const NekDouble > &inarray, Array< OneD, ExpansionSharedPtr > &EdgeExp, Array< OneD, Array< OneD, NekDouble > > &coeffs, Array< OneD, NekDouble > &outarray)
void ComputeQuadratureMetric()
#define LOCAL_REGIONS_EXPORT
void AddEdgeNormBoundaryInt(const int edge, const boost::shared_ptr< Expansion > &EdgeExp, const Array< OneD, const NekDouble > &Fx, const Array< OneD, const NekDouble > &Fy, Array< OneD, NekDouble > &outarray)
boost::shared_ptr< Geometry > GeometrySharedPtr
virtual void v_AddEdgeNormBoundaryInt(const int edge, const boost::shared_ptr< Expansion > &EdgeExp, const Array< OneD, const NekDouble > &Fx, const Array< OneD, const NekDouble > &Fy, Array< OneD, NekDouble > &outarray)
static VarCoeffMap NullVarCoeffMap
static ConstFactorMap NullConstFactorMap