https://mooseframework.inl.gov
Loading...
Searching...
No Matches
ComputeBlockOrientationByMisorientation.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
13
14#include "libmesh/mesh_tools.h"
15#include "EulerAngles.h"
16
21{
22public:
24
26
30 virtual void initialize() override;
31
36 virtual void execute() override;
37
38 virtual void threadJoin(const UserObject & /*y*/) override {};
39
44 virtual void finalize() override;
45
47
48protected:
49 // updated quaternion
51
52 // misorientation angle values
54
55 // Array of vectors to store block ID, maximum misorientation angle and corresponding EulerAngle
56 std::unordered_map<SubdomainID, std::vector<std::tuple<Real, Real, Real, Real>>>
58};
Computes the average value of a variable on each block.
Computes the average value of a variable on each block.
std::unordered_map< SubdomainID, std::vector< std::tuple< Real, Real, Real, Real > > > _grain_misorientation
const MaterialProperty< RankTwoTensor > & _updated_rotation
virtual void finalize() override
Sync data from all processors (gather the maximum misorientation and the corresponding EulerAngle fro...
virtual void initialize() override
Clear internal Euler angle and misorientationdata.
virtual void execute() override
Compute the average of the rotation matrix, Euler angles, and misorientation in each element.
Euler angle triplet.
Definition EulerAngles.h:25
const InputParameters & parameters() const