https://mooseframework.inl.gov
Loading...
Searching...
No Matches
MultiControlDrumFunction.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 "Function.h"
14#include "ElementIDInterface.h"
15
22{
23public:
25
27
28 using Function::value;
29 virtual Real value(Real t, const Point & p) const override;
30
31protected:
33 const MeshGeneratorName _mesh_generator;
35 const std::vector<Real> _angular_speeds;
37 const std::vector<Real> _start_angles;
39 const std::vector<Real> _angle_ranges;
47 const dof_id_type & _control_drum_id;
49 const std::vector<Point> & _control_drum_positions;
51 const std::vector<std::vector<Real>> & _control_drums_azimuthal_meta;
52};
const Real p
virtual Real value(Real t, const Point &p) const
const InputParameters & parameters() const
A function that returns an absorber fraction for multiple control drums application.
const std::vector< Real > _angular_speeds
Vector of angular speeds of control drums.
const std::vector< Point > & _control_drum_positions
MeshMetaData: positions of control drums.
const dof_id_type & _control_drum_id
ExtraElementID: control drum ExtraElementID.
virtual Real value(Real t, const Point &p) const override
const MeshGeneratorName _mesh_generator
Name of the mesh generator to get MeshMetaData from.
const std::vector< Real > _start_angles
Vector of initial starting angles of control drums.
const Real _rotation_end_time
End time of control drums rotation.
const std::vector< std::vector< Real > > & _control_drums_azimuthal_meta
MeshMetaData: vector of azimuthal angles of all nodes of each control drum.
static InputParameters validParams()
const std::vector< Real > _angle_ranges
Vector of angular ranges of control drums.
const Real _rotation_start_time
Start time of control drums rotation.
const bool _use_control_drum_id
Whether extra element id user_control_drum_id is used.