https://mooseframework.inl.gov
ReflectRayBC.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 "GeneralRayBC.h"
13 
17 class ReflectRayBC : public GeneralRayBC
18 {
19 public:
20  ReflectRayBC(const InputParameters & params);
21 
23 
24  virtual void onBoundary(const unsigned int num_applying) override;
25 
30  static Point reflectedDirection(const Point & direction, const Point & normal);
31 
32 protected:
34  const bool _warn_non_planar;
35 };
ReflectRayBC(const InputParameters &params)
Definition: ReflectRayBC.C:32
RayBC that reflects a Ray.
Definition: ReflectRayBC.h:17
static Point reflectedDirection(const Point &direction, const Point &normal)
Computes the reflected direction given a direction and an outward normal for the surface it reflects ...
Definition: ReflectRayBC.C:68
static InputParameters validParams()
Definition: ReflectRayBC.C:18
const bool _warn_non_planar
Whether or not to emit a warning if a Ray is being reflected on a non-planar side.
Definition: ReflectRayBC.h:34
virtual void onBoundary(const unsigned int num_applying) override
Called on a Ray on the boundary to apply the Ray boundary condition.
Definition: ReflectRayBC.C:38