46 exp->FwdTrans(in, out);
55 exp->BwdTrans(in, out);
64 exp->BwdTrans(in, out);
73 return exp->PhysEvaluate(coords, physvals);
88 return exp->L2(in, err);
93 int nPhys = exp->GetTotPoints();
94 int coordim = exp->GetCoordim();
96 std::vector<Array<OneD, NekDouble> > coords(coordim);
97 for (
int i = 0; i < coordim; ++i)
105 exp->GetCoords(coords[0]);
106 return py::make_tuple(coords[0]);
109 exp->GetCoords(coords[0], coords[1]);
110 return py::make_tuple(coords[0], coords[1]);
113 exp->GetCoords(coords[0], coords[1], coords[2]);
114 return py::make_tuple(coords[0], coords[1], coords[2]);
124 int nPhys = exp->GetTotPoints();
125 int coordim = exp->GetCoordim();
127 std::vector<Array<OneD, NekDouble> > derivs(coordim);
128 for (
int i = 0; i < coordim; ++i)
136 exp->PhysDeriv(inarray, derivs[0]);
137 return py::make_tuple(derivs[0]);
140 exp->PhysDeriv(inarray, derivs[0], derivs[1]);
141 return py::make_tuple(derivs[0], derivs[1]);
144 exp->PhysDeriv(inarray, derivs[0], derivs[1], derivs[2]);
145 return py::make_tuple(derivs[0], derivs[1], derivs[2]);
155 std::shared_ptr<StdExpansion>,
157 "StdExpansion", py::no_init)
171 py::return_value_policy<py::copy_const_reference>())
DNekMatSharedPtr GenMatrix(const StdMatrixKey &mkey)
LibUtilities::ShapeType DetShapeType() const
This function returns the shape of the expansion domain.
Array< OneD, NekDouble > StdExpansion_FwdTrans(StdExpansionSharedPtr exp, const Array< OneD, const NekDouble > &in)
NekDouble Integral(const Array< OneD, const NekDouble > &inarray)
This function integrates the specified function over the domain.
int GetNverts() const
This function returns the number of vertices of the expansion domain.
DNekMatSharedPtr GetStdMatrix(const StdMatrixKey &mkey)
std::shared_ptr< StdExpansion > StdExpansionSharedPtr
The base class for all shapes.
NekDouble StdExpansion_L2_Error(StdExpansionSharedPtr exp, const Array< OneD, const NekDouble > &in, const Array< OneD, const NekDouble > &err)
const LibUtilities::BasisSharedPtr & GetBasis(int dir) const
This function gets the shared point to basis in the dir direction.
py::tuple StdExpansion_GetCoords(StdExpansionSharedPtr exp)
py::tuple StdExpansion_PhysDeriv(StdExpansionSharedPtr exp, const Array< OneD, const NekDouble > &inarray)
int GetNedges() const
This function returns the number of edges of the expansion domain.
int GetShapeDimension() const
int GetNcoeffs(void) const
This function returns the total number of coefficients used in the expansion.
Array< OneD, NekDouble > StdExpansion_BwdTrans(StdExpansionSharedPtr exp, const Array< OneD, const NekDouble > &in)
LibUtilities::PointsType GetPointsType(const int dir) const
This function returns the type of quadrature points used in the dir direction.
NekDouble StdExpansion_L2(StdExpansionSharedPtr exp, const Array< OneD, const NekDouble > &in)
The namespace associated with the the StdRegions library (StdRegions introduction) ...
LibUtilities::BasisType GetBasisType(const int dir) const
This function returns the type of basis used in the dir direction.
void export_StdExpansion()
int GetTotPoints() const
This function returns the total number of quadrature points used in the element.
int GetNfaces() const
This function returns the number of faces of the expansion domain.
NekDouble StdExpansion_PhysEvaluate(StdExpansionSharedPtr exp, const Array< OneD, const NekDouble > &coords, const Array< OneD, const NekDouble > &physvals)
Array< OneD, NekDouble > StdExpansion_IProductWRTBase(StdExpansionSharedPtr exp, const Array< OneD, const NekDouble > &in)