www.mooseframework.org
VoronoiICAux.C
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 #include "VoronoiICAux.h"
11 
12 registerMooseObject("PhaseFieldTestApp", VoronoiICAux);
13 
14 template <>
15 InputParameters
17 {
18  InputParameters params = validParams<AuxKernel>();
19  params.addRequiredParam<UserObjectName>("polycrystal_ic_uo", "Optional: Polycrystal IC object");
20  return params;
21 }
22 
23 VoronoiICAux::VoronoiICAux(const InputParameters & parameters)
24  : AuxKernel(parameters),
25  _poly_ic_uo(getUserObject<PolycrystalUserObjectBase>("polycrystal_ic_uo"))
26 {
27 }
28 
29 Real
31 {
33 
34  if (_grain_ids.empty())
35  return 0;
36  else
37  return _grain_ids[0];
38 }
VoronoiICAux.h
VoronoiICAux::computeValue
virtual Real computeValue()
Definition: VoronoiICAux.C:30
VoronoiICAux::VoronoiICAux
VoronoiICAux(const InputParameters &parameters)
Definition: VoronoiICAux.C:23
VoronoiICAux::_grain_ids
std::vector< unsigned int > _grain_ids
Definition: VoronoiICAux.h:34
VoronoiICAux
Visualize the location of grain boundaries in a polycrystalline simulation.
Definition: VoronoiICAux.h:24
PolycrystalUserObjectBase
This object provides the base capability for creating proper polycrystal ICs.
Definition: PolycrystalUserObjectBase.h:27
PolycrystalUserObjectBase::getGrainsBasedOnElem
virtual void getGrainsBasedOnElem(const Elem &elem, std::vector< unsigned int > &grains) const
This method may be defined in addition to the point based initialization to speed up lookups.
Definition: PolycrystalUserObjectBase.h:52
VoronoiICAux::_poly_ic_uo
const PolycrystalUserObjectBase & _poly_ic_uo
Definition: VoronoiICAux.h:32
validParams< VoronoiICAux >
InputParameters validParams< VoronoiICAux >()
Definition: VoronoiICAux.C:16
registerMooseObject
registerMooseObject("PhaseFieldTestApp", VoronoiICAux)