www.mooseframework.org
GrainAdvectionAux.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
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 "AuxKernel.h"
13 #include "GrainTrackerInterface.h"
15 
16 // Forward Declarations
17 class GrainAdvectionAux;
18 
19 template <>
20 InputParameters validParams<GrainAdvectionAux>();
21 
26 class GrainAdvectionAux : public AuxKernel
27 {
28 public:
29  GrainAdvectionAux(const InputParameters & parameters);
30 
31 protected:
33  virtual void precalculateValue();
35  virtual Real computeValue();
36 
39 
41  const VectorPostprocessorValue & _grain_volumes;
42 
45  const std::vector<RealGradient> & _grain_forces;
46  const std::vector<RealGradient> & _grain_torques;
47 
48 private:
50  const Real _mt;
51 
53  const Real _mr;
54 
56  MooseEnum _component;
57 };
58 
GrainAdvectionAux::_grain_forces
const std::vector< RealGradient > & _grain_forces
Definition: GrainAdvectionAux.h:45
GrainTrackerInterface
This class defines the interface for the GrainTracking objects.
Definition: GrainTrackerInterface.h:24
validParams< GrainAdvectionAux >
InputParameters validParams< GrainAdvectionAux >()
Definition: GrainAdvectionAux.C:16
libMesh::RealGradient
VectorValue< Real > RealGradient
Definition: GrainForceAndTorqueInterface.h:17
GrainForceAndTorqueInterface.h
GrainAdvectionAux::_component
MooseEnum _component
Definition: GrainAdvectionAux.h:56
GrainAdvectionAux::_mt
const Real _mt
constant value corresponding to grain translation
Definition: GrainAdvectionAux.h:50
GrainAdvectionAux::_grain_volumes
const VectorPostprocessorValue & _grain_volumes
The grain volumes.
Definition: GrainAdvectionAux.h:41
GrainAdvectionAux::_grain_force_torque
const GrainForceAndTorqueInterface & _grain_force_torque
getting userobject for calculating grain forces and torques
Definition: GrainAdvectionAux.h:44
GrainAdvectionAux::precalculateValue
virtual void precalculateValue()
calculate the advection velocity
Definition: GrainAdvectionAux.C:51
GrainAdvectionAux
Calculates the advection velocity of grain due to rigid body motion Reports the components of the vel...
Definition: GrainAdvectionAux.h:26
GrainAdvectionAux::_grain_tracker
const GrainTrackerInterface & _grain_tracker
getting userobject for calculating grain centers and volumes
Definition: GrainAdvectionAux.h:38
GrainTrackerInterface.h
GrainAdvectionAux::_velocity_advection
RealGradient _velocity_advection
Definition: GrainAdvectionAux.h:55
GrainAdvectionAux::computeValue
virtual Real computeValue()
output the component of advection velocity
Definition: GrainAdvectionAux.C:72
GrainAdvectionAux::_mr
const Real _mr
constant value corresponding to grain rotation
Definition: GrainAdvectionAux.h:53
GrainAdvectionAux::GrainAdvectionAux
GrainAdvectionAux(const InputParameters &parameters)
Definition: GrainAdvectionAux.C:35
GrainAdvectionAux::_grain_torques
const std::vector< RealGradient > & _grain_torques
Definition: GrainAdvectionAux.h:46
GrainForceAndTorqueInterface
This class provides interface for extracting the forces and torques computed in other UserObjects.
Definition: GrainForceAndTorqueInterface.h:24