www.mooseframework.org
EulerAngleUpdaterCheck.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 "GeneralVectorPostprocessor.h"
13 
14 // Forward declaration
16 class EulerAngleUpdater;
17 class EulerAngleProvider;
20 class RotationTensor;
21 
22 template <>
23 InputParameters validParams<EulerAngleUpdaterCheck>();
24 
30 class EulerAngleUpdaterCheck : public GeneralVectorPostprocessor
31 {
32 public:
33  EulerAngleUpdaterCheck(const InputParameters & parameters);
34 
35  virtual void initialize() override;
36  virtual void execute() override {}
37  virtual void finalize() override {}
38 
39  VectorPostprocessorValue & _diff;
40 
41 protected:
45  const VectorPostprocessorValue & _grain_volumes;
46 
47  const Real _mr;
48 
49  std::vector<RealVectorValue> _angles;
50  std::vector<RealVectorValue> _angles_old;
51 };
52 
GrainTrackerInterface
This class defines the interface for the GrainTracking objects.
Definition: GrainTrackerInterface.h:24
EulerAngleUpdaterCheck::_angles
std::vector< RealVectorValue > _angles
Definition: EulerAngleUpdaterCheck.h:49
EulerAngleUpdaterCheck::_grain_volumes
const VectorPostprocessorValue & _grain_volumes
Definition: EulerAngleUpdaterCheck.h:45
validParams< EulerAngleUpdaterCheck >
InputParameters validParams< EulerAngleUpdaterCheck >()
Definition: EulerAngleUpdaterCheck.C:21
EulerAngleUpdaterCheck::execute
virtual void execute() override
Definition: EulerAngleUpdaterCheck.h:36
EulerAngleUpdaterCheck::_mr
const Real _mr
Definition: EulerAngleUpdaterCheck.h:47
EulerAngleUpdaterCheck::_diff
VectorPostprocessorValue & _diff
Definition: EulerAngleUpdaterCheck.h:39
EulerAngleProvider
Abstract base class for user objects that implement the Euler Angle provider interface.
Definition: EulerAngleProvider.h:24
EulerAngleUpdaterCheck::_angles_old
std::vector< RealVectorValue > _angles_old
Definition: EulerAngleUpdaterCheck.h:50
EulerAngleUpdaterCheck::_grain_tracker
const GrainTrackerInterface & _grain_tracker
Definition: EulerAngleUpdaterCheck.h:42
EulerAngleUpdaterCheck::finalize
virtual void finalize() override
Definition: EulerAngleUpdaterCheck.h:37
EulerAngleUpdaterCheck::EulerAngleUpdaterCheck
EulerAngleUpdaterCheck(const InputParameters &parameters)
Definition: EulerAngleUpdaterCheck.C:38
EulerAngleUpdater
Update Euler angles of each grains after rigid body rotation This class estimates the rotation of pri...
Definition: EulerAngleUpdater.h:36
RotationTensor
This is a RealTensor version of a rotation matrix It is instantiated with the Euler angles,...
Definition: RotationTensor.h:29
EulerAngleUpdaterCheck::initialize
virtual void initialize() override
Definition: EulerAngleUpdaterCheck.C:50
EulerAngleUpdaterCheck::_euler
const EulerAngleUpdater & _euler
Definition: EulerAngleUpdaterCheck.h:43
EulerAngleUpdaterCheck
This is a unit test to check the correctness of the updated euler angles An unit vector is rotated as...
Definition: EulerAngleUpdaterCheck.h:30
EulerAngleUpdaterCheck::_grain_torque
const GrainForceAndTorqueInterface & _grain_torque
Definition: EulerAngleUpdaterCheck.h:44
GrainForceAndTorqueInterface
This class provides interface for extracting the forces and torques computed in other UserObjects.
Definition: GrainForceAndTorqueInterface.h:24