https://mooseframework.inl.gov
IntegralRayKernel.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 "IntegralRayKernelBase.h"
13 
19 {
20 public:
21  IntegralRayKernel(const InputParameters & params);
22 
24 
28  std::string integralRayDataName() const { return _name + "_value"; }
29 
30  void onSegment() override final;
31 
32 protected:
33  virtual Real computeQpIntegral() = 0;
34 
37 
39  const bool _average;
40 };
Base class for a RayKernel that integrates along a Ray segment.
const bool _average
Whether or not to compute the average (divide by the length)
void onSegment() override final
Called on each segment of a Ray.
std::string integralRayDataName() const
Gets the name of the Ray data associated with the integral accumulated by this RayKernel.
unsigned int RayDataIndex
Type for the index into the data and aux data on a Ray.
Definition: Ray.h:51
IntegralRayKernel(const InputParameters &params)
const RayDataIndex _integral_data_index
The index into the data on the Ray that this integral accumulates into.
const std::string _name
Base class for a RayKernel that integrates along a Ray segment and stores the result in a scalar valu...
static InputParameters validParams()
virtual Real computeQpIntegral()=0