www.mooseframework.org
ACGrGrMulti.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 "ACGrGrBase.h"
13 
14 // Forward Declarations
15 class ACGrGrMulti;
16 
17 template <>
18 InputParameters validParams<ACGrGrMulti>();
19 
25 class ACGrGrMulti : public ACGrGrBase
26 {
27 public:
28  ACGrGrMulti(const InputParameters & parameters);
29 
30 protected:
31  virtual Real computeDFDOP(PFFunctionType type);
32  virtual Real computeQpOffDiagJacobian(unsigned int jvar);
33 
35  std::vector<MaterialPropertyName> _gamma_names;
36  unsigned int _num_j;
37 
39  std::vector<const MaterialProperty<Real> *> _prop_gammas;
40 
41  const NonlinearVariableName _uname;
42  const MaterialProperty<Real> & _dmudu;
43  const std::vector<VariableName> _vname;
44  std::vector<const MaterialProperty<Real> *> _dmudEtaj;
45 
46 private:
47  Real computedF0du();
48 };
49 
ACGrGrMulti
This kernel calculates the residual for grain growth for a multi-phase, poly-crystal system.
Definition: ACGrGrMulti.h:25
ACGrGrMulti::_gamma_names
std::vector< MaterialPropertyName > _gamma_names
Names of gammas for each order parameter.
Definition: ACGrGrMulti.h:35
ACGrGrMulti::_num_j
unsigned int _num_j
Definition: ACGrGrMulti.h:36
ACGrGrMulti::computeDFDOP
virtual Real computeDFDOP(PFFunctionType type)
Definition: ACGrGrMulti.C:50
ACGrGrMulti::_dmudu
const MaterialProperty< Real > & _dmudu
Definition: ACGrGrMulti.h:42
ACGrGrMulti::_uname
const NonlinearVariableName _uname
Definition: ACGrGrMulti.h:41
ACGrGrMulti::_prop_gammas
std::vector< const MaterialProperty< Real > * > _prop_gammas
Values of gammas for each order parameter.
Definition: ACGrGrMulti.h:39
ACGrGrMulti::computeQpOffDiagJacobian
virtual Real computeQpOffDiagJacobian(unsigned int jvar)
Definition: ACGrGrMulti.C:77
ACGrGrMulti::_dmudEtaj
std::vector< const MaterialProperty< Real > * > _dmudEtaj
Definition: ACGrGrMulti.h:44
ACGrGrBase
This is the base class for kernels that calculate the residual for grain growth.
Definition: ACGrGrBase.h:25
validParams< ACGrGrMulti >
InputParameters validParams< ACGrGrMulti >()
Definition: ACGrGrMulti.C:16
ACGrGrMulti::computedF0du
Real computedF0du()
Definition: ACGrGrMulti.C:94
ACGrGrMulti::_vname
const std::vector< VariableName > _vname
Definition: ACGrGrMulti.h:43
ACGrGrMulti::ACGrGrMulti
ACGrGrMulti(const InputParameters &parameters)
Definition: ACGrGrMulti.C:27
ACGrGrBase.h
ACBulk< Real >::PFFunctionType
PFFunctionType
Definition: ACBulk.h:37