43 namespace Collections {
45 CoalescedGeomData::CoalescedGeomData(
void)
49 CoalescedGeomData::~CoalescedGeomData(
void)
54 vector<StdRegions::StdExpansionSharedPtr> &pCollExp)
57 if(m_oneDGeomData.count(
eJac) == 0)
61 int nElmts = pCollExp.size();
65 for (
int i = 0; i < ptsKeys.size(); ++i)
67 npts *= ptsKeys[i].GetNumPoints();
75 for(
int i = 0; i < nElmts; ++i)
94 m_oneDGeomData[
eJac] = newjac;
97 return m_oneDGeomData[
eJac];
103 vector<StdRegions::StdExpansionSharedPtr> &pCollExp)
108 int nElmts = pCollExp.size();
112 for (
int i = 0; i < ptsKeys.size(); ++i)
114 npts *= ptsKeys[i].GetNumPoints();
122 for(
int i = 0; i < nElmts; ++i)
138 pCollExp[0]->MultiplyByStdQuadratureMetric(newjac + cnt,
151 vector<StdRegions::StdExpansionSharedPtr> &pCollExp)
157 int nElmts = pCollExp.size();
158 const int coordim = pCollExp[0]->GetCoordim();
159 int dim = ptsKeys.size();
163 for (
int i = 0; i < dim; ++i)
165 npts *= ptsKeys[i].GetNumPoints();
173 for(
int i = 0; i < nElmts; ++i)
182 for (
int j = 0; j < dim*coordim; ++j)
184 Vmath::Vcopy(npts, &Dfac[j][0], 1, &newDFac[j][cnt], 1);
189 for (
int j = 0; j < dim*coordim; ++j)
191 Vmath::Fill(npts, Dfac[j][0], &newDFac[j][cnt], 1);
std::vector< PointsKey > PointsKeyVector
void Fill(int n, const T alpha, T *x, const int incx)
Fill a vector with a constant value.
The base class for all shapes.
const SpatialDomains::GeomFactorsSharedPtr & GetMetricInfo() const
void Vcopy(int n, const T *x, const int incx, T *y, const int incy)
Geometry is curved or has non-constant factors.