https://mooseframework.inl.gov
PorousFlowFullySaturatedDarcyFlow.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 
19 template <bool is_ad>
21 {
22 public:
24 
26 
27 protected:
28  virtual GenericReal<is_ad> mobility() const override;
29  virtual Real dmobility(unsigned int pvar) const override;
30 
33 
36 
38  const unsigned int _fluid_component;
39 
47 };
48 
Moose::GenericType< Real, is_ad > GenericReal
const unsigned int _fluid_component
Fluid component index for this kernel.
virtual GenericReal< is_ad > mobility() const override
Fluid mobility = (density *) 1/viscosity. Virtual so DarcyFlow can multiply by mass frac...
const InputParameters & parameters() const
PorousFlowFullySaturatedDarcyFlowTempl< true > ADPorousFlowFullySaturatedDarcyFlow
typename GenericMaterialPropertyStruct< T, is_ad >::type GenericMaterialProperty
const GenericMaterialProperty< std::vector< std::vector< Real > >, is_ad > & _mfrac
Mass fraction of each component in each phase.
Darcy advective flux for a fully-saturated, single-phase, single-component fluid. ...
PorousFlowFullySaturatedDarcyFlowTempl< false > PorousFlowFullySaturatedDarcyFlow
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual Real dmobility(unsigned int pvar) const override
d(mobility)/d(PorousFlow variable pvar) – only used on the non-AD path
Darcy advective flux for a fully-saturated, single-phase, multi-component fluid.
const MaterialProperty< std::vector< std::vector< std::vector< Real > > > > *const _dmfrac_dvar
d(mass fraction)/d(PorousFlow variable) – null for AD path
PorousFlowFullySaturatedDarcyFlowTempl(const InputParameters &parameters)