www.mooseframework.org
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
OutputEulerAngles Class Reference

Output euler angles from user object to an AuxVariable. More...

#include <OutputEulerAngles.h>

Inheritance diagram for OutputEulerAngles:
[legend]

Public Member Functions

 OutputEulerAngles (const InputParameters &parameters)
 

Protected Member Functions

virtual Real computeValue ()
 
virtual void precalculateValue ()
 

Protected Attributes

const EulerAngleProvider_euler
 Object providing the Euler angles. More...
 
const GrainTracker_grain_tracker
 Grain tracker object. More...
 
MooseEnum _output_euler_angle
 Number of grains. More...
 
Real _value
 precalculated element value More...
 

Detailed Description

Output euler angles from user object to an AuxVariable.

Definition at line 28 of file OutputEulerAngles.h.

Constructor & Destructor Documentation

◆ OutputEulerAngles()

OutputEulerAngles::OutputEulerAngles ( const InputParameters &  parameters)

Definition at line 31 of file OutputEulerAngles.C.

32  : AuxKernel(parameters),
33  _euler(getUserObject<EulerAngleProvider>("euler_angle_provider")),
34  _grain_tracker(getUserObject<GrainTracker>("grain_tracker")),
35  _output_euler_angle(getParam<MooseEnum>("output_euler_angle"))
36 {
37 }
const EulerAngleProvider & _euler
Object providing the Euler angles.
MooseEnum _output_euler_angle
Number of grains.
const GrainTracker & _grain_tracker
Grain tracker object.

Member Function Documentation

◆ computeValue()

Real OutputEulerAngles::computeValue ( )
protectedvirtual

Definition at line 58 of file OutputEulerAngles.C.

59 {
60  return _value;
61 }
Real _value
precalculated element value

◆ precalculateValue()

void OutputEulerAngles::precalculateValue ( )
protectedvirtual

Definition at line 40 of file OutputEulerAngles.C.

41 {
42  // ID of unique grain at current point
43  const auto grain_id =
44  _grain_tracker.getEntityValue((isNodal() ? _current_node->id() : _current_elem->id()),
46  0);
47 
48  // Recover euler angles for current grain
49  RealVectorValue angles;
50  if (grain_id >= 0)
51  angles = _euler.getEulerAngles(grain_id);
52 
53  // Return specific euler angle
54  _value = angles(_output_euler_angle);
55 }
const EulerAngleProvider & _euler
Object providing the Euler angles.
MooseEnum _output_euler_angle
Number of grains.
Real _value
precalculated element value
virtual const EulerAngles & getEulerAngles(unsigned int) const =0
virtual Real getEntityValue(dof_id_type node_id, FieldType field_type, std::size_t var_index=0) const override
Definition: GrainTracker.C:108
const GrainTracker & _grain_tracker
Grain tracker object.

Member Data Documentation

◆ _euler

const EulerAngleProvider& OutputEulerAngles::_euler
protected

Object providing the Euler angles.

Definition at line 38 of file OutputEulerAngles.h.

Referenced by precalculateValue().

◆ _grain_tracker

const GrainTracker& OutputEulerAngles::_grain_tracker
protected

Grain tracker object.

Definition at line 41 of file OutputEulerAngles.h.

Referenced by precalculateValue().

◆ _output_euler_angle

MooseEnum OutputEulerAngles::_output_euler_angle
protected

Number of grains.

Definition at line 44 of file OutputEulerAngles.h.

Referenced by precalculateValue().

◆ _value

Real OutputEulerAngles::_value
protected

precalculated element value

Definition at line 47 of file OutputEulerAngles.h.

Referenced by computeValue(), and precalculateValue().


The documentation for this class was generated from the following files: