www.mooseframework.org
TorqueReaction.h
Go to the documentation of this file.
1 /****************************************************************/
2 /* MOOSE - Multiphysics Object Oriented Simulation Environment */
3 /* */
4 /* All contents are licensed under LGPL V2.1 */
5 /* See LICENSE for full restrictions */
6 /****************************************************************/
7 
8 #ifndef TORQUEREACTION_H
9 #define TORQUEREACTION_H
10 
11 #include "NodalPostprocessor.h"
12 
13 // Forward Declarations
14 class TorqueReaction;
15 class AuxiliarySystem;
16 
17 template <>
18 InputParameters validParams<TorqueReaction>();
19 
20 /*
21  * TorqueReaction calculates the torque in 2D and 3D about a user-specified
22  * axis of rotation centered at a user-specied origin. The default origin is the
23  * global coordinate system origin: (0.0,0.0,0.0).
24  *
25  * TorqueReaction takes a scalar approach to calculating the sum of the
26  * acting torques by projecting both the reaction force and the position vector
27  * (the coordinates of the node upon which the force is applied) onto the axis of
28  * rotation and applying the Pythagorean theorem, as in a statics course. This
29  * scalar approach allows the postprocessor to accept any axis of rotation direction.
30  *
31  * TorqueReaction is similar to TorqueReaction in SolidMechanics but does
32  * not replace the TorqueReaction postprocessor; different assumptions were used
33  * to derive the SolidMechanics TorqueReaction postprocessor.
34  */
35 class TorqueReaction : public NodalPostprocessor
36 {
37 public:
38  TorqueReaction(const InputParameters & parameters);
39 
40  virtual void initialize();
41  virtual void execute();
42  virtual Real getValue();
43  void threadJoin(const UserObject & y);
44 
45 protected:
46  AuxiliarySystem & _aux;
47 
48  std::vector<const VariableValue *> _react;
49 
50  const Point _axis_origin;
51  const Point _direction_vector;
52 
53  unsigned int _nrt;
54 
55  Real _sum;
56 };
57 
58 #endif // TORQUEREACTION_H
void threadJoin(const UserObject &y)
const Point _axis_origin
InputParameters validParams< TorqueReaction >()
virtual void initialize()
TorqueReaction(const InputParameters &parameters)
unsigned int _nrt
virtual void execute()
AuxiliarySystem & _aux
virtual Real getValue()
std::vector< const VariableValue * > _react
const Point _direction_vector