www.mooseframework.org
ComputeGrainCenterUserObject.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 "ElementUserObject.h"
13 
14 // Forward Declarations
16 
17 template <>
19 
23 class ComputeGrainCenterUserObject : public ElementUserObject
24 {
25 public:
26  ComputeGrainCenterUserObject(const InputParameters & parameters);
27 
28  virtual void initialize();
29  virtual void execute();
30  virtual void threadJoin(const UserObject & y);
31  virtual void finalize();
32 
33  const std::vector<Real> & getGrainVolumes() const;
34  const std::vector<Point> & getGrainCenters() const;
35 
36 protected:
37  unsigned int _qp;
38  unsigned int _ncrys;
39  std::vector<const VariableValue *> _vals;
40  unsigned int _ncomp;
42  std::vector<Real> _grain_data;
43  std::vector<Real> _grain_volumes;
44  std::vector<Point> _grain_centers;
46 };
47 
ComputeGrainCenterUserObject::getGrainVolumes
const std::vector< Real > & getGrainVolumes() const
Definition: ComputeGrainCenterUserObject.C:81
ComputeGrainCenterUserObject::threadJoin
virtual void threadJoin(const UserObject &y)
Definition: ComputeGrainCenterUserObject.C:73
ComputeGrainCenterUserObject::_ncrys
unsigned int _ncrys
Definition: ComputeGrainCenterUserObject.h:38
ComputeGrainCenterUserObject::getGrainCenters
const std::vector< Point > & getGrainCenters() const
Definition: ComputeGrainCenterUserObject.C:87
validParams< ComputeGrainCenterUserObject >
InputParameters validParams< ComputeGrainCenterUserObject >()
Definition: ComputeGrainCenterUserObject.C:16
ComputeGrainCenterUserObject::_grain_volumes
std::vector< Real > _grain_volumes
Definition: ComputeGrainCenterUserObject.h:43
ComputeGrainCenterUserObject::_qp
unsigned int _qp
Definition: ComputeGrainCenterUserObject.h:37
ComputeGrainCenterUserObject::initialize
virtual void initialize()
Definition: ComputeGrainCenterUserObject.C:39
ComputeGrainCenterUserObject
This UserObject computes a volumes and centers of grains.
Definition: ComputeGrainCenterUserObject.h:23
ComputeGrainCenterUserObject::finalize
virtual void finalize()
Definition: ComputeGrainCenterUserObject.C:59
ComputeGrainCenterUserObject::_vals
std::vector< const VariableValue * > _vals
Definition: ComputeGrainCenterUserObject.h:39
ComputeGrainCenterUserObject::_grain_centers
std::vector< Point > _grain_centers
Definition: ComputeGrainCenterUserObject.h:44
ComputeGrainCenterUserObject::_ncomp
unsigned int _ncomp
Definition: ComputeGrainCenterUserObject.h:40
ComputeGrainCenterUserObject::ComputeGrainCenterUserObject
ComputeGrainCenterUserObject(const InputParameters &parameters)
Definition: ComputeGrainCenterUserObject.C:24
ComputeGrainCenterUserObject::execute
virtual void execute()
Definition: ComputeGrainCenterUserObject.C:46
ComputeGrainCenterUserObject::_grain_data
std::vector< Real > _grain_data
storing volumes and centers of all the grains
Definition: ComputeGrainCenterUserObject.h:42