https://mooseframework.inl.gov
solid_mechanics
include
utils
EulerAngles.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 "
MooseTypes.h
"
13
#include "libmesh/vector_value.h"
14
// Ignore depcrecated copy warnings for this class from libmesh Eigen contrib
15
#include "libmesh/ignore_warnings.h"
16
#include <Eigen/Geometry>
17
18
// forward declaration
19
class
MooseRandom
;
20
24
class
EulerAngles
25
{
26
public
:
27
Real
phi1
,
Phi
,
phi2
;
28
29
// default constructor
30
EulerAngles
();
31
// Quaternions to Euler Angles
32
EulerAngles
(
const
Eigen::Quaternion<Real> & q);
33
// Components to Euler Angles
34
EulerAngles
(
const
Real & v0,
const
Real & v1,
const
Real & v2);
35
36
operator
RealVectorValue
()
const
{
return
RealVectorValue
(
phi1
,
Phi
,
phi2
); }
37
38
void
random
();
39
void
random
(
MooseRandom
&
random
);
40
// Euler to Quaternions
41
Eigen::Quaternion<Real>
toQuaternion
();
42
};
43
44
// Restore warnings for other classes
45
#include "libmesh/restore_warnings.h"
EulerAngles::phi2
Real phi2
Definition:
EulerAngles.h:27
VectorValue< Real >
EulerAngles::Phi
Real Phi
Definition:
EulerAngles.h:27
MooseTypes.h
EulerAngles::random
void random()
Definition:
EulerAngles.C:84
EulerAngles::EulerAngles
EulerAngles()
Definition:
EulerAngles.C:14
Real
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
EulerAngles
Euler angle triplet.
Definition:
EulerAngles.h:24
EulerAngles::phi1
Real phi1
Definition:
EulerAngles.h:27
MooseRandom
EulerAngles::toQuaternion
Eigen::Quaternion< Real > toQuaternion()
Definition:
EulerAngles.C:55
Generated on Wed Jun 24 2026 08:25:21 for https://mooseframework.inl.gov by
1.8.14