https://mooseframework.inl.gov
Loading...
Searching...
No Matches
NestedKKSMultiSplitCHCRes.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
13#include "JvarMapInterface.h"
14#include "Kernel.h"
15
27class NestedKKSMultiSplitCHCRes : public DerivativeMaterialInterface<JvarMapKernelInterface<Kernel>>
28{
29public:
32
33protected:
34 virtual Real computeQpResidual() override;
35 virtual Real computeQpJacobian() override;
36 virtual Real computeQpOffDiagJacobian(unsigned int jvar) override;
37
39 const std::vector<VariableName> _eta_names;
40
42 const unsigned int _num_j;
43 const JvarMap & _eta_map;
45
47 const std::vector<VariableName> _c_names;
48
50 const unsigned int _num_c;
51 const JvarMap & _c_map;
52 int _o;
54
56 const unsigned int _w_var;
59
61 const std::vector<MaterialPropertyName> _c1_names;
62
64 const MaterialPropertyName _F1_name;
65
67 std::vector<const MaterialProperty<Real> *> _dF1dc1;
68
70 std::vector<const MaterialProperty<Real> *> _d2F1dc1db1;
71
73 std::vector<std::vector<const MaterialProperty<Real> *>> _dc1db;
74
76 std::vector<std::vector<const MaterialProperty<Real> *>> _dc1detaj;
77
79 std::vector<const MaterialProperty<Real> *> _d2F1dc1darg;
80};
In the KKS split form for the term .
std::vector< std::vector< const MaterialProperty< Real > * > > _dc1detaj
Derivative of the phase concentrations wrt phase parameter .
const std::vector< MaterialPropertyName > _c1_names
Phase concentration of the first phase in _eta_names.
const unsigned int _w_var
Chemical potential.
virtual Real computeQpResidual() override
const std::vector< VariableName > _c_names
Global concentrations.
virtual Real computeQpJacobian() override
std::vector< const MaterialProperty< Real > * > _d2F1dc1db1
Second derivative of the free energy function .
const unsigned int _num_c
Number of global concentrations.
virtual Real computeQpOffDiagJacobian(unsigned int jvar) override
std::vector< std::vector< const MaterialProperty< Real > * > > _dc1db
Derivative of the phase concentrations wrt global concentrations .
static InputParameters validParams()
std::vector< const MaterialProperty< Real > * > _dF1dc1
Derivative of the free energy function .
const MaterialPropertyName _F1_name
Free energy.
const std::vector< VariableName > _eta_names
Phase parameters.
std::vector< const MaterialProperty< Real > * > _d2F1dc1darg
Second derivative of the free energy function wrt phase concentration and a coupled variable.
const unsigned int _num_j
Number of phase parameters.
VariableValueTempl< false > VariableValue