https://mooseframework.inl.gov
PorousFlowDarcyVelocityMaterial.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 "PorousFlowMaterial.h"
13 
20 template <bool is_ad>
22 {
23 public:
25 
27 
28 protected:
29  virtual void computeQpProperties() override;
30 
32  const unsigned int _num_phases;
33 
35  const unsigned int _num_var;
36 
39 
42 
45 
48 
51 
54 
57 
60 
63 
66 
69 
72 
75 
81 
88 
99 };
100 
PorousFlowMaterial is the base class for all PorousFlow Materials It allows users to specify that the...
const unsigned int _num_var
Number of PorousFlow variables.
const unsigned int _num_phases
Number of phases.
const MaterialProperty< std::vector< std::vector< Real > > > *const _dfluid_viscosity_dvar
Derivative of the fluid viscosity for each phase wrt PorousFlow variables – null for AD path...
const MaterialProperty< std::vector< std::vector< RealGradient > > > *const _dgrad_p_dvar
Derivative of Grad porepressure in each phase wrt PorousFlow variables – null for AD path...
const InputParameters & parameters() const
PorousFlowDarcyVelocityMaterialTempl(const InputParameters &parameters)
const GenericMaterialProperty< RealTensorValue, is_ad > & _permeability
Permeability of porous material.
const GenericMaterialProperty< std::vector< Real >, is_ad > & _fluid_density
Fluid density for each phase.
const MaterialProperty< std::vector< std::vector< Real > > > *const _dgrad_p_dgradvar
Derivative of Grad porepressure in each phase wrt grad(PorousFlow variables) – null for AD path...
const MaterialProperty< std::vector< RealTensorValue > > *const _dpermeability_dvar
d(permeabiity)/d(PorousFlow variable) – null for AD path
const MaterialProperty< std::vector< std::vector< RealTensorValue > > > *const _dpermeability_dgradvar
d(permeabiity)/d(grad(PorousFlow variable)) – null for AD path
typename GenericMaterialPropertyStruct< T, is_ad >::type GenericMaterialProperty
PorousFlowDarcyVelocityMaterialTempl< true > ADPorousFlowDarcyVelocityMaterial
PorousFlowDarcyVelocityMaterialTempl< false > PorousFlowDarcyVelocityMaterial
const GenericMaterialProperty< std::vector< RealGradient >, is_ad > & _grad_p
Gradient of the pore pressure in each phase.
MaterialProperty< std::vector< std::vector< std::vector< RealVectorValue > > > > *const _ddarcy_velocity_dgradvar
_ddarcy_velocity_dgradvar[_qp][ph][j][v](i) = d(i_th component of Darcy velocity of phase ph at quadp...
const MaterialProperty< std::vector< std::vector< Real > > > *const _dfluid_density_dvar
Derivative of the fluid density for each phase wrt PorousFlow variables – null for AD path...
const MaterialProperty< std::vector< std::vector< Real > > > *const _drelative_permeability_dvar
Derivative of relative permeability of each phase wrt PorousFlow variables – null for AD path...
const GenericMaterialProperty< std::vector< Real >, is_ad > & _relative_permeability
Relative permeability of each phase.
Material to calculate the Darcy velocity for all phases.
MaterialProperty< std::vector< std::vector< RealVectorValue > > > *const _ddarcy_velocity_dvar
_ddarcy_velocity_dvar[_qp][ph][v](i) = d(i_th component of velocity of phase ph at quadpoint _qp)/d(P...
const GenericMaterialProperty< std::vector< Real >, is_ad > & _fluid_viscosity
Viscosity of each component in each phase.
GenericMaterialProperty< std::vector< RealVectorValue >, is_ad > & _darcy_velocity
Computed Darcy velocity of each phase.