www.mooseframework.org
CHSplitFlux.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 "Kernel.h"
13 #include "DerivativeMaterialInterface.h"
14 #include "RankTwoTensor.h"
15 
16 class CHSplitFlux;
17 
18 template <>
19 InputParameters validParams<CHSplitFlux>();
20 
26 class CHSplitFlux : public DerivativeMaterialInterface<Kernel>
27 {
28 public:
29  CHSplitFlux(const InputParameters & parameters);
30 
31 protected:
32  virtual Real computeQpResidual();
33  virtual Real computeQpJacobian();
34  virtual Real computeQpOffDiagJacobian(unsigned int jvar);
35 
36  const unsigned int _component;
37  const unsigned int _mu_var;
38  const VariableGradient & _grad_mu;
39  const MaterialProperty<RealTensorValue> & _mobility;
40 
41  const bool _has_coupled_c;
42  const unsigned int _c_var;
43 
44  const MaterialProperty<RealTensorValue> * _dmobility_dc;
45 };
46 
CHSplitFlux::_mobility
const MaterialProperty< RealTensorValue > & _mobility
Definition: CHSplitFlux.h:39
CHSplitFlux::_c_var
const unsigned int _c_var
Definition: CHSplitFlux.h:42
validParams< CHSplitFlux >
InputParameters validParams< CHSplitFlux >()
Definition: CHSplitFlux.C:16
CHSplitFlux::_dmobility_dc
const MaterialProperty< RealTensorValue > * _dmobility_dc
Definition: CHSplitFlux.h:44
CHSplitFlux::computeQpOffDiagJacobian
virtual Real computeQpOffDiagJacobian(unsigned int jvar)
Definition: CHSplitFlux.C:55
CHSplitFlux::_component
const unsigned int _component
Definition: CHSplitFlux.h:36
CHSplitFlux::_has_coupled_c
const bool _has_coupled_c
Definition: CHSplitFlux.h:41
CHSplitFlux::computeQpResidual
virtual Real computeQpResidual()
Definition: CHSplitFlux.C:43
CHSplitFlux::computeQpJacobian
virtual Real computeQpJacobian()
Definition: CHSplitFlux.C:49
CHSplitFlux::CHSplitFlux
CHSplitFlux(const InputParameters &parameters)
Definition: CHSplitFlux.C:27
CHSplitFlux
CHSplitFlux computes flux as non-linear variable via residual = flux + mobility * gradient(chemical p...
Definition: CHSplitFlux.h:26
CHSplitFlux::_grad_mu
const VariableGradient & _grad_mu
Definition: CHSplitFlux.h:38
CHSplitFlux::_mu_var
const unsigned int _mu_var
Definition: CHSplitFlux.h:37