https://mooseframework.inl.gov
RotationTensor.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 "Moose.h"
13 #include "MooseTypes.h"
14 
15 // Any requisite includes here
16 #include "libmesh/tensor_value.h"
17 #include "libmesh/vector_value.h"
18 
31 {
32 public:
34  enum Axis
35  {
36  XAXIS = 0,
39  };
40 
42  RotationTensor(Axis axis, Real angle);
43 
45  RotationTensor(const RealVectorValue & euler_angles);
46 
48  void update(Axis axis, Real angle);
49 
51  void update(const RealVectorValue & euler_angles);
52 };
Axis
axis for single axis rotation constructor
static const std::string axis
Definition: NS.h:27
TensorValue< Real > RealTensorValue
This is a RealTensor version of a rotation matrix It is instantiated with the Euler angles...
RotationTensor(Axis axis, Real angle)
single axis rotation (in degrees)
void update(Axis axis, Real angle)
reforms the rotation matrix according to axis and angle.