37 if (sdm->Type() == PWLC and
38 std::addressof(sdm->Grid()) == std::addressof(grid) and
39 sdm->GetCoordinateSystemType() == cs_type)
41 auto fe_ptr = std::dynamic_pointer_cast<FiniteElementBase>(sdm);
45 if (fe_ptr->GetQuadratureOrder() != q_order)
break;
48 std::dynamic_pointer_cast<PieceWiseLinearContinuous>(fe_ptr);
55 auto new_sdm = std::shared_ptr<PieceWiseLinearContinuous>(
#define ChiLogicalErrorIf(condition, message)
static std::vector< chi_math::SpatialDiscretizationPtr > sdm_stack
void CreateCellMappings()
static std::shared_ptr< PieceWiseLinearContinuous > New(const chi_mesh::MeshContinuum &grid, QuadratureOrder q_order=QuadratureOrder::SECOND, CoordinateSystemType cs_type=CoordinateSystemType::CARTESIAN)
PieceWiseLinearContinuous(const chi_mesh::MeshContinuum &grid, QuadratureOrder q_order, CoordinateSystemType cs_type)
SpatialDiscretizationType
@ PIECEWISE_LINEAR_CONTINUOUS