Merge remote-tracking branch 'origin/no-tet-reorder-dev' into nd-prism-dev

This commit is contained in:
Stowell, Mark L
2021-02-09 15:59:41 -08:00
558 changed files with 27436 additions and 7216 deletions
+13 -16
View File
@@ -1,4 +1,4 @@
// Copyright (c) 2010-2020, Lawrence Livermore National Security, LLC. Produced
// Copyright (c) 2010-2021, Lawrence Livermore National Security, LLC. Produced
// at the Lawrence Livermore National Laboratory. All Rights reserved. See files
// LICENSE and NOTICE for details. LLNL-CODE-806117.
//
@@ -1854,19 +1854,16 @@ const int *H1_FECollection::GetDofMap(Geometry::Type GeomType) const
{
const int *dof_map = NULL;
const FiniteElement *fe = H1_Elements[GeomType];
switch (GeomType)
const NodalFiniteElement *nodal_fe =
dynamic_cast<const NodalFiniteElement*>(fe);
if (nodal_fe)
{
case Geometry::SEGMENT:
case Geometry::SQUARE:
case Geometry::CUBE:
dof_map = dynamic_cast<const TensorBasisElement *>(fe)
->GetDofMap().GetData();
break;
default:
MFEM_ABORT("Geometry type " << Geometry::Name[GeomType] << " is not "
"implemented");
// The "Cartesian" ordering for other geometries is defined by the
// class GeometryRefiner.
dof_map = nodal_fe->GetLexicographicOrdering().GetData();
}
else
{
MFEM_ABORT("Geometry type " << Geometry::Name[GeomType] << " is not "
"implemented");
}
return dof_map;
}
@@ -1991,7 +1988,7 @@ L2_FECollection::L2_FECollection(const int p, const int dim, const int btype,
// Trace element use the default Gauss-Legendre nodal points for positive basis
if (b_type == BasisType::Positive)
{
Tr_Elements[Geometry::SEGMENT] = new L2_SegmentElement(p);
Tr_Elements[Geometry::SEGMENT] = new L2Pos_SegmentElement(p);
}
else
{
@@ -2047,8 +2044,8 @@ L2_FECollection::L2_FECollection(const int p, const int dim, const int btype,
// Trace element use the default Gauss-Legendre nodal points for positive basis
if (b_type == BasisType::Positive)
{
Tr_Elements[Geometry::TRIANGLE] = new L2_TriangleElement(p);
Tr_Elements[Geometry::SQUARE] = new L2_QuadrilateralElement(p);
Tr_Elements[Geometry::TRIANGLE] = new L2Pos_TriangleElement(p);
Tr_Elements[Geometry::SQUARE] = new L2Pos_QuadrilateralElement(p);
}
else
{