https://mooseframework.inl.gov
KKSMultiACBulkBase.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://mooseframework.inl.gov
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 "ACBulk.h"
13 
14 // Forward Declarations
15 
23 class KKSMultiACBulkBase : public ACBulk<Real>
24 {
25 public:
27 
28  KKSMultiACBulkBase(const InputParameters & parameters);
29 
30  virtual void initialSetup();
31 
32 protected:
34  VariableName _etai_name;
35 
37  unsigned int _etai_var;
38 
40  std::vector<MaterialPropertyName> _Fj_names;
41  unsigned int _num_j;
42 
44  std::vector<const MaterialProperty<Real> *> _prop_Fj;
45 
47  std::vector<std::vector<const MaterialProperty<Real> *>> _prop_dFjdarg;
48 
50  std::vector<MaterialPropertyName> _hj_names;
51 
53  std::vector<const MaterialProperty<Real> *> _prop_hj;
54 
56  std::vector<const MaterialProperty<Real> *> _prop_dhjdetai;
57 
59  std::vector<const MaterialProperty<Real> *> _prop_d2hjdetai2;
60 
62  std::vector<std::vector<const MaterialProperty<Real> *>> _prop_d2hjdetaidarg;
63 };
ACBulk child class that sets up necessary variables and materials for calculation of residual contrib...
std::vector< MaterialPropertyName > _Fj_names
Names of free energy functions for each phase .
std::vector< std::vector< const MaterialProperty< Real > * > > _prop_d2hjdetaidarg
Second derivatives of the switching functions (needed for off-diagonal Jacobians) ...
This is the Allen-Cahn equation base class that implements the bulk or local energy term of the equat...
Definition: ACBulk.h:24
std::vector< const MaterialProperty< Real > * > _prop_dhjdetai
Derivatives of the switching functions wrt the order parameter for this kernel.
std::vector< MaterialPropertyName > _hj_names
switching function names
std::vector< const MaterialProperty< Real > * > _prop_hj
Values of the switching functions for each phase .
static InputParameters validParams()
virtual void initialSetup()
std::vector< const MaterialProperty< Real > * > _prop_Fj
Values of the free energy functions for each phase .
std::vector< const MaterialProperty< Real > * > _prop_d2hjdetai2
Second derivatives of the switching functions wrt the order parameter for this kernel.
VariableName _etai_name
name of order parameter that derivatives are taken wrt (needed to retrieve the derivative material pr...
KKSMultiACBulkBase(const InputParameters &parameters)
unsigned int _etai_var
index of order parameter that derivatives are taken wrt
std::vector< std::vector< const MaterialProperty< Real > * > > _prop_dFjdarg
Derivatives of the free energy functions (needed for off-diagonal Jacobians)