www.mooseframework.org
ACInterface.h
Go to the documentation of this file.
1 /****************************************************************/
2 /* MOOSE - Multiphysics Object Oriented Simulation Environment */
3 /* */
4 /* All contents are licensed under LGPL V2.1 */
5 /* See LICENSE for full restrictions */
6 /****************************************************************/
7 #ifndef ACINTERFACE_H
8 #define ACINTERFACE_H
9 
10 #include "Kernel.h"
11 #include "JvarMapInterface.h"
12 #include "DerivativeMaterialInterface.h"
13 
14 class ACInterface;
15 
16 template <>
17 InputParameters validParams<ACInterface>();
18 
23 class ACInterface : public DerivativeMaterialInterface<JvarMapKernelInterface<Kernel>>
24 {
25 public:
26  ACInterface(const InputParameters & parameters);
27  virtual void initialSetup();
28 
29 protected:
30  virtual Real computeQpResidual();
31  virtual Real computeQpJacobian();
32  virtual Real computeQpOffDiagJacobian(unsigned int jvar);
33 
34  RealGradient gradL();
35  RealGradient gradKappa();
36 
38  RealGradient kappaNablaLPsi();
39 
41  const MaterialProperty<Real> & _L;
43  const MaterialProperty<Real> & _kappa;
44 
46  const bool _variable_L;
47 
49  const MaterialProperty<Real> & _dLdop;
50  const MaterialProperty<Real> & _d2Ldop2;
52 
54  const MaterialProperty<Real> & _dkappadop;
55 
57  const unsigned int _nvar;
58 
60  std::vector<const MaterialProperty<Real> *> _dLdarg;
61  std::vector<const MaterialProperty<Real> *> _d2Ldargdop;
62  std::vector<std::vector<const MaterialProperty<Real> *>> _d2Ldarg2;
64 
66  std::vector<const MaterialProperty<Real> *> _dkappadarg;
67 
69  std::vector<const VariableGradient *> _gradarg;
70 };
71 
72 #endif // ACINTERFACE_H
InputParameters validParams< ACInterface >()
Definition: ACInterface.C:11
std::vector< const VariableGradient * > _gradarg
Gradients for all coupled variables.
Definition: ACInterface.h:69
RealGradient gradKappa()
virtual Real computeQpJacobian()
Definition: ACInterface.C:98
const MaterialProperty< Real > & _L
Mobility.
Definition: ACInterface.h:41
const bool _variable_L
flag set if L is a function of non-linear variables in args
Definition: ACInterface.h:46
RealGradient kappaNablaLPsi()
the term
Definition: ACInterface.C:80
ACInterface(const InputParameters &parameters)
Definition: ACInterface.C:26
const MaterialProperty< Real > & _dLdop
Mobility derivatives w.r.t. order parameter.
Definition: ACInterface.h:49
std::vector< const MaterialProperty< Real > * > _d2Ldargdop
Definition: ACInterface.h:61
std::vector< const MaterialProperty< Real > * > _dkappadarg
kappa derivative w.r.t. other coupled variables
Definition: ACInterface.h:66
Compute the Allen-Cahn interface term with the weak form residual .
Definition: ACInterface.h:23
const unsigned int _nvar
number of coupled variables
Definition: ACInterface.h:57
virtual void initialSetup()
Definition: ACInterface.C:64
std::vector< const MaterialProperty< Real > * > _dLdarg
Mobility derivative w.r.t. other coupled variables.
Definition: ACInterface.h:60
std::vector< std::vector< const MaterialProperty< Real > * > > _d2Ldarg2
Definition: ACInterface.h:62
const MaterialProperty< Real > & _dkappadop
kappa derivative w.r.t. order parameter
Definition: ACInterface.h:54
const MaterialProperty< Real > & _kappa
Interfacial parameter.
Definition: ACInterface.h:43
const MaterialProperty< Real > & _d2Ldop2
Definition: ACInterface.h:50
virtual Real computeQpResidual()
Definition: ACInterface.C:92
virtual Real computeQpOffDiagJacobian(unsigned int jvar)
Definition: ACInterface.C:120
RealGradient gradL()
Definition: ACInterface.C:71