20 params.addParam<
bool>(
"create_non_unique_id_rays",
21 "Create Rays on each processor with a non-unique ID");
24 "Create an additional Ray on the given processor");
26 "create_non_replicated_id_ray_pid",
27 "Create a Ray with a non-replicated ID on the given processor");
29 "Create a non-replicated Ray on the given processor");
31 params.addParam<
bool>(
"define_no_rays",
false,
"Test defining no rays");
32 params.addParam<
bool>(
"define_nullptr_ray",
false,
"Test defining a nullptr ray");
33 params.addParam<
bool>(
34 "define_ray_with_starting_elem",
false,
"Test defining a ray with a starting element");
36 params.suppressParameter<std::vector<Real>>(
"max_distances");
37 params.suppressParameter<std::vector<Point>>(
"end_points");
46 params.set<
bool>(
"_claim_after_define_rays") =
false;
64 if (getParam<bool>(
"define_no_rays"))
69 if (getParam<bool>(
"define_nullptr_ray") &&
_rays.size())
73 getParam<bool>(
"create_non_unique_id_rays"))
78 const auto pid = getParam<processor_id_type>(
"create_additional_ray_pid");
85 ray->setStart(
_rays[0]->currentPoint());
86 ray->setStartingDirection(
_rays[0]->direction());
93 const auto pid = getParam<processor_id_type>(
"create_non_replicated_id_ray_pid");
100 ray->setStart(
_rays[0]->currentPoint());
101 ray->setStartingDirection(
_rays[0]->direction());
108 const auto pid = getParam<processor_id_type>(
"create_non_replicated_ray_pid");
113 _rays[0]->setStartingMaxDistance(1);
116 if (getParam<bool>(
"define_ray_with_starting_elem"))
120 ray->setStartingDirection(Point(1, 0, 0));
121 _rays.push_back(ray);
MooseMesh & _mesh
The Mesh.
registerMooseObject("RayTracingTestApp", RepeatableRayStudyBaseTest)
std::shared_ptr< Ray > acquireRegisteredRay(const std::string &name)
Acquires a Ray with a given name within generateRays().
virtual Elem * queryElemPtr(const dof_id_type i)
static InputParameters validParams()
uint8_t processor_id_type
processor_id_type n_processors() const
static InputParameters validParams()
static InputParameters validParams()
bool isParamSetByUser(const std::string &nm) const
virtual void defineRays() override
Entry point for the user to create Rays.
void defineRays() override
Entry point for the user to create Rays.
std::vector< std::shared_ptr< Ray > > & _rays
Vector of Rays that the user will fill into in defineRays() (restartable)
const processor_id_type _pid
The rank of this processor (this actually takes time to lookup - so just do it once) ...
const InputParameters & parameters() const
RepeatableRayStudyDefineNoClaimTest(const InputParameters ¶ms)
A RayTracingStudy in which the user defines a set of Rays that can be traced repeatedly.
RepeatableRayStudyBaseTest(const InputParameters ¶meters)
std::shared_ptr< Ray > acquireCopiedRay(const Ray &ray)
Acquires a Ray that that is copied from another Ray within generateRays().