https://mooseframework.inl.gov
LotsOfRaysRayStudy.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://mooseframework.inl.gov
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #pragma once
11 
12 #include "RepeatableRayStudyBase.h"
13 
14 // Local includes
16 
21 {
22 public:
24 
26 
35 
36 protected:
37  virtual void defineRays() override;
38 
39  void defineRay(const Elem * starting_elem,
40  const unsigned short incoming_side,
41  const Point & p1,
42  const Point & p2,
43  const bool ends_within_mesh);
44 
49  virtual void modifyRays();
50 
51  const bool _vertex_to_vertex;
52  const bool _centroid_to_vertex;
54  const bool _edge_to_edge;
55  const bool _side_aq;
56  const bool _centroid_aq;
57 
60 
62  const unsigned int _polar_quad_order;
64  const unsigned int _azimuthal_quad_order;
65 
66  const bool _use_unsized_rays;
67  const bool _set_incoming_side;
68 
69 private:
72 
74  std::unique_ptr<BoundingBoxIntersectionHelper> _bbox_intersection_helper;
75 };
const bool _centroid_to_centroid
const bool _vertex_to_vertex
const unsigned int _polar_quad_order
Polar angular quadrature order for aq tests.
bool hasExpectedDistance() const
Whether or not the expected distance is being computed.
const bool _centroid_to_vertex
const unsigned int _azimuthal_quad_order
Azimuthal angular quadrature order for aq tests.
virtual void defineRays() override
Entry point for the user to create Rays.
static InputParameters validParams()
Real & _expected_distance
The expected total distance Rays should travel.
std::unique_ptr< BoundingBoxIntersectionHelper > _bbox_intersection_helper
Helper for computing the end point for Rays that don&#39;t end within mesh.
void defineRay(const Elem *starting_elem, const unsigned short incoming_side, const Point &p1, const Point &p2, const bool ends_within_mesh)
const bool _compute_expected_distance
Whether or not to compute the expected distance for generated rays.
const bool _use_unsized_rays
virtual void modifyRays()
Insertion point for after _rays is defined for other derived test studies to modify the Rays...
Real expectedDistance() const
Get the expected total distance Rays should travel.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
const InputParameters & parameters() const
const bool _set_incoming_side
LotsOfRaysRayStudy(const InputParameters &parameters)
A RayTracingStudy used for generating a lot of rays for testing purposes.
A RayTracingStudy that generates and traces Rays repeatedly that a user defines only once...