39 if (sdm->Type() == LagrangeD and
40 std::addressof(sdm->Grid()) == std::addressof(grid) and
41 sdm->GetCoordinateSystemType() == cs_type)
43 auto fe_ptr = std::dynamic_pointer_cast<FiniteElementBase>(sdm);
47 if (fe_ptr->GetQuadratureOrder() != q_order)
break;
50 std::dynamic_pointer_cast<LagrangeDiscontinuous>(fe_ptr);
57 auto new_sdm = std::shared_ptr<LagrangeDiscontinuous>(
#define ChiLogicalErrorIf(condition, message)
static std::vector< chi_math::SpatialDiscretizationPtr > sdm_stack
void CreateCellMappings()
LagrangeDiscontinuous(const chi_mesh::MeshContinuum &grid, QuadratureOrder q_order, CoordinateSystemType cs_type)
static std::shared_ptr< LagrangeDiscontinuous > New(const chi_mesh::MeshContinuum &grid, QuadratureOrder q_order=QuadratureOrder::SECOND, CoordinateSystemType cs_type=CoordinateSystemType::CARTESIAN)
SpatialDiscretizationType