www.mooseframework.org
KKSCHBulk.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 KKSCHBULK_H
8 #define KKSCHBULK_H
9 
10 #include "CHBulk.h"
11 
12 // Forward Declarations
13 class KKSCHBulk;
14 
15 template <>
16 InputParameters validParams<KKSCHBulk>();
17 
30 class KKSCHBulk : public CHBulk<Real>
31 {
32 public:
33  KKSCHBulk(const InputParameters & parameters);
34 
35 protected:
36  virtual RealGradient computeGradDFDCons(PFFunctionType type);
37  virtual Real computeQpOffDiagJacobian(unsigned int jvar);
38 
39 private:
41  unsigned int _nvar;
42 
45  unsigned int _ca_var;
46  const VariableName _ca_name;
47  unsigned int _cb_var;
48  const VariableName _cb_name;
50 
52  std::vector<const MaterialProperty<Real> *> _second_derivatives;
53 
55  std::vector<std::vector<const MaterialProperty<Real> *>> _third_derivatives;
56 
58  std::vector<const MaterialProperty<Real> *> _third_derivatives_ca;
59 
61  std::vector<const VariableGradient *> _grad_args;
62 
64  const MaterialProperty<Real> & _prop_h;
65 
67  const MaterialProperty<Real> & _second_derivative_Fa;
68 
70  const MaterialProperty<Real> & _second_derivative_Fb;
71 };
72 
73 #endif // KKSCHBULK_H
std::vector< const MaterialProperty< Real > * > _third_derivatives_ca
Derivatives of with respect to all coupled variables.
Definition: KKSCHBulk.h:58
std::vector< const MaterialProperty< Real > * > _second_derivatives
Derivatives of with respect to all coupled variables.
Definition: KKSCHBulk.h:52
const VariableName _ca_name
Definition: KKSCHBulk.h:46
unsigned int _ca_var
Definition: KKSCHBulk.h:45
This is the Cahn-Hilliard equation base class that implements the bulk or local energy term of the eq...
Definition: CHBulk.h:23
const MaterialProperty< Real > & _prop_h
h(eta) material property
Definition: KKSCHBulk.h:64
const MaterialProperty< Real > & _second_derivative_Fa
Second derivative .
Definition: KKSCHBulk.h:67
unsigned int _cb_var
Definition: KKSCHBulk.h:47
std::vector< const VariableGradient * > _grad_args
Gradients for all coupled variables.
Definition: KKSCHBulk.h:61
virtual RealGradient computeGradDFDCons(PFFunctionType type)
Note that per product and chain rules: which is: .
Definition: KKSCHBulk.C:85
const MaterialProperty< Real > & _second_derivative_Fb
Second derivative .
Definition: KKSCHBulk.h:70
const VariableName _cb_name
Definition: KKSCHBulk.h:48
unsigned int _nvar
Number of coupled variables.
Definition: KKSCHBulk.h:41
KKSCHBulk(const InputParameters &parameters)
Definition: KKSCHBulk.C:35
InputParameters validParams< KKSCHBulk >()
Definition: KKSCHBulk.C:11
std::vector< std::vector< const MaterialProperty< Real > * > > _third_derivatives
Second derivatives of dFa/dca with respect to all coupled variables.
Definition: KKSCHBulk.h:55
CHBulk child class that takes all the necessary data from a KKSBaseMaterial.
Definition: KKSCHBulk.h:30
virtual Real computeQpOffDiagJacobian(unsigned int jvar)
Definition: KKSCHBulk.C:119