35 #ifndef STDREGIONS_HPP
36 #define STDREGIONS_HPP
76 "StdSegExp",
"SegExp",
"StdQuadExp",
"StdTriExp",
"StdNodalTriExp",
77 "QuadExp",
"TriExp",
"NodalTriExp",
"StdHexExp",
"StdPrismExp",
78 "StdPyrExp",
"StdTetExp",
"StdNodalTetExp",
"HexExp",
"PrismExp",
79 "PyrExp",
"TetExp",
"NodalTetExp",
141 "Mass wiht Diagonal GJP",
153 "InvLaplacianWithUnityMean",
157 "WeakDirectionalDeriv",
158 "MassLevelCurvature",
159 "LinearAdvectionReaction",
160 "LinearAdvectionDiffusionReaction",
166 "IProductWRTDerivBase0",
167 "IProductWRTDerivBase1",
168 "IProductWRTDerivBase2",
173 "Helmholtz with Diagonal GJP",
175 "InvHybridDGHelmholtz",
176 "HybridDGHelmBndLam",
185 "PreconLinearSpaceMass",
188 "PhysInterpToEquiSpaced",
189 "EquiSpacedToCoeffs",
229 "VarCoeffMass",
"VarCoeffLaplacian",
"VarCoeffWeakDeriv",
230 "VarCoeffD00",
"VarCoeffD11",
"VarCoeffD22",
231 "VarCoeffD01",
"VarCoeffD02",
"VarCoeffD12",
232 "VarCoeffVelX",
"VarCoeffVelY",
"VarCoeffVelZ",
233 "VarCoeffMF1x",
"VarCoeffMF1y",
"VarCoeffMF1z",
234 "VarCoeffMF1Div",
"VarCoeffMF1Mag",
"VarCoeffMF2x",
235 "VarCoeffMF2y",
"VarCoeffMF2z",
"VarCoeffMF2Div",
236 "VarCoeffMF2Mag",
"VarCoeffMF3x",
"VarCoeffMF3y",
237 "VarCoeffMF3z",
"VarCoeffMF3Div",
"VarCoeffMF3Mag",
238 "VarCoeffMF",
"VarCoeffMFDiv",
"VarCoeffGmat",
239 "VarCoeffGJPNormVel"};
240 typedef std::map<StdRegions::VarCoeffType, Array<OneD, NekDouble>>
VarCoeffMap;
274 "FactorSVVCutoffRatio",
275 "FactorSVVDiffCoeff",
276 "FactorSVVPowerKerDiffCoeff",
277 "FactorSVVDGKerDiffCoeff",
312 "Dir1FwdDir1_Dir2FwdDir2",
313 "Dir1FwdDir1_Dir2BwdDir2",
314 "Dir1BwdDir1_Dir2FwdDir2",
315 "Dir1BwdDir1_Dir2BwdDir2",
316 "Dir1FwdDir2_Dir2FwdDir1",
317 "Dir1FwdDir2_Dir2BwdDir1",
318 "Dir1BwdDir2_Dir2FwdDir1",
319 "Dir1BwdDir2_Dir2BwdDir1"};
326 template <
class InputIterator,
class EqualityComparable>
327 InputIterator
find(InputIterator first, InputIterator last,
328 InputIterator startingpoint,
const EqualityComparable &value)
332 if (startingpoint == first)
334 val =
find(first, last, value);
338 val =
find(startingpoint, last, value);
341 val =
find(first, startingpoint, value);
342 if (val == startingpoint)
356 {0, 0.36212, 1, 0, 0, 0, 0, 0, 0, 0, 0},
357 {0, 0.70546, 0.078836, 1, 0, 0, 0, 0, 0, 0, 0},
358 {0, 0, 0.49411, 0.072394, 1, 0, 0, 0, 0, 0, 0},
359 {0, 0, 0.000073566, 0.40506, 0.094122, 1, 0, 0, 0, 0, 0},
360 {0, 0, 0, 0.0001422, 0.36863, 0.11815, 1, 0, 0, 0, 0},
361 {0, 0, 0, 0, 0.00019497, 0.41397, 0.16927, 1, 0, 0, 0},
362 {0, 0, 0, 0, 0, 0.0009762, 0.12747, 0.13763, 1, 0, 0},
363 {0, 0, 0, 0, 0, 0, 0.0023592, 0.23683, 0.17196, 1, 0},
364 {0, 0, 0, 0, 0, 0, 0, 0.0026055, 0.28682, 0.22473, 1}};
@ eFactorSVVDGKerDiffCoeff
@ eFactorSVVPowerKerDiffCoeff
InputIterator find(InputIterator first, InputIterator last, InputIterator startingpoint, const EqualityComparable &value)
const int kSVVDGFiltermodesmin
static FactorMap NullFactorMap
std::map< StdRegions::VarCoeffType, Array< OneD, NekDouble > > VarCoeffMap
const char *const VarCoeffTypeMap[]
const int kSVVDGFiltermodesmax
const NekDouble kSVVDGFilter[9][11]
const char *const ConstFactorTypeMap[]
const char *const ElementTypeMap[]
@ eLinearAdvectionReaction
@ eLinearAdvectionDiffusionReaction
@ ePhysInterpToEquiSpaced
@ eInvLaplacianWithUnityMean
const char *const MatrixTypeMap[]
std::map< ConstFactorType, NekDouble > ConstFactorMap
static ConstFactorMap NullConstFactorMap
const char *const OrientationMap[]
@ eDir1BwdDir2_Dir2BwdDir1
@ eDir1FwdDir1_Dir2FwdDir2
@ eDir1BwdDir1_Dir2BwdDir2
@ eDir1BwdDir2_Dir2FwdDir1
@ eDir1FwdDir1_Dir2BwdDir2
@ eDir1BwdDir1_Dir2FwdDir2
@ eDir1FwdDir2_Dir2FwdDir1
@ eDir1FwdDir2_Dir2BwdDir1
static VarCoeffMap NullVarCoeffMap
The above copyright notice and this permission notice shall be included.