22 params.addClassDescription(
"Sets up the periodic boundaries for a PeriodicRayBC if applicable.");
28 Moose::PeriodicBCHelper(getAddRayBCAction()),
29 _is_periodic_ray_bc(
PeriodicRayBC::isPeriodicRayBC(getAddRayBCAction().getObjectParams()))
44 _mesh->allowRemoteElementRemoval(
false);
57 std::vector<BoundaryName> boundary;
58 for (
const auto & it : periodic_boundaries)
59 boundary.push_back(std::to_string(it.first));
60 params.
set<std::vector<BoundaryName>>(
"boundary") = boundary;
void setupPeriodicBoundaries(FEProblemBase &problem)
const T & getAction(const std::string &name) const
void act() override final
static const std::string periodic_boundaries_param
Name of the parameter that stores the PeriodicBoundaries pointer.
RayBC that enforces periodic boundaries.
Action that sets up the periodic boundary conditions for a PeriodicRayBC.
const AddRayBCAction & getAddRayBCAction() const
Helper for getting the AddRayBCAction that is responsible for building the RayBC this action is assoc...
const libMesh::PeriodicBoundaries & getPeriodicBoundaries() const
const std::string & name() const
static InputParameters validParams()
void checkPeriodicParams() const
const std::string & _current_task
ActionWarehouse & actionWarehouse()
static InputParameters validParams()
const bool _is_periodic_ray_bc
Whether or not we are acting on a PeriodicRayBC.
Action for creating a RayBC and associating it with the necessary RayTracingStudy objects...
std::shared_ptr< MooseMesh > & _mesh
SetupPeriodicRayBCAction(const InputParameters ¶ms)
registerMooseAction("RayTracingApp", SetupPeriodicRayBCAction, "add_geometric_rm")
void setupPeriodicRayBC(InputParameters ¶ms) const
Method to be called from the AddRayBCAction that is associated with the same RayBC this Action is ass...
std::shared_ptr< FEProblemBase > & _problem