www.mooseframework.org
PorousFlowDarcyVelocityMaterial.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 "PorousFlowMaterial.h"
13 
15 
16 template <>
18 
23 {
24 public:
25  PorousFlowDarcyVelocityMaterial(const InputParameters & parameters);
26 
27 protected:
28  virtual void computeQpProperties() override;
29 
31  const unsigned int _num_phases;
32 
34  const unsigned int _num_var;
35 
37  const MaterialProperty<RealTensorValue> & _permeability;
38 
40  const MaterialProperty<std::vector<RealTensorValue>> & _dpermeability_dvar;
41 
43  const MaterialProperty<std::vector<std::vector<RealTensorValue>>> & _dpermeability_dgradvar;
44 
46  const MaterialProperty<std::vector<Real>> & _fluid_density;
47 
49  const MaterialProperty<std::vector<std::vector<Real>>> & _dfluid_density_dvar;
50 
52  const MaterialProperty<std::vector<Real>> & _fluid_viscosity;
53 
55  const MaterialProperty<std::vector<std::vector<Real>>> & _dfluid_viscosity_dvar;
56 
58  const MaterialProperty<std::vector<Real>> & _relative_permeability;
59 
61  const MaterialProperty<std::vector<std::vector<Real>>> & _drelative_permeability_dvar;
62 
64  const MaterialProperty<std::vector<RealGradient>> & _grad_p;
65 
67  const MaterialProperty<std::vector<std::vector<Real>>> & _dgrad_p_dgradvar;
68 
70  const MaterialProperty<std::vector<std::vector<RealGradient>>> & _dgrad_p_dvar;
71 
73  const RealVectorValue _gravity;
74 
79  MaterialProperty<std::vector<RealVectorValue>> & _darcy_velocity;
80 
85  MaterialProperty<std::vector<std::vector<RealVectorValue>>> & _ddarcy_velocity_dvar;
86 
94  MaterialProperty<std::vector<std::vector<std::vector<RealVectorValue>>>> &
96 };
97 
PorousFlowDarcyVelocityMaterial::_dpermeability_dvar
const MaterialProperty< std::vector< RealTensorValue > > & _dpermeability_dvar
d(permeabiity)/d(PorousFlow variable)
Definition: PorousFlowDarcyVelocityMaterial.h:40
PorousFlowDarcyVelocityMaterial
Material to calculate the Darcy velocity for all phases.
Definition: PorousFlowDarcyVelocityMaterial.h:22
PorousFlowDarcyVelocityMaterial::_fluid_density
const MaterialProperty< std::vector< Real > > & _fluid_density
Fluid density for each phase.
Definition: PorousFlowDarcyVelocityMaterial.h:46
PorousFlowDarcyVelocityMaterial::PorousFlowDarcyVelocityMaterial
PorousFlowDarcyVelocityMaterial(const InputParameters &parameters)
Definition: PorousFlowDarcyVelocityMaterial.C:27
validParams< PorousFlowDarcyVelocityMaterial >
InputParameters validParams< PorousFlowDarcyVelocityMaterial >()
Definition: PorousFlowDarcyVelocityMaterial.C:16
PorousFlowDarcyVelocityMaterial::_grad_p
const MaterialProperty< std::vector< RealGradient > > & _grad_p
Gradient of the pore pressure in each phase.
Definition: PorousFlowDarcyVelocityMaterial.h:64
PorousFlowDarcyVelocityMaterial::_ddarcy_velocity_dvar
MaterialProperty< std::vector< std::vector< RealVectorValue > > > & _ddarcy_velocity_dvar
_ddarcy_velocity_dvar[_qp][ph][v](i) = d(i_th component of velocity of phase ph at quadpoint _qp)/d(P...
Definition: PorousFlowDarcyVelocityMaterial.h:85
PorousFlowDarcyVelocityMaterial::_dfluid_viscosity_dvar
const MaterialProperty< std::vector< std::vector< Real > > > & _dfluid_viscosity_dvar
Derivative of the fluid viscosity for each phase wrt PorousFlow variables.
Definition: PorousFlowDarcyVelocityMaterial.h:55
PorousFlowDarcyVelocityMaterial::_drelative_permeability_dvar
const MaterialProperty< std::vector< std::vector< Real > > > & _drelative_permeability_dvar
Derivative of relative permeability of each phase wrt PorousFlow variables.
Definition: PorousFlowDarcyVelocityMaterial.h:61
PorousFlowDarcyVelocityMaterial::_dpermeability_dgradvar
const MaterialProperty< std::vector< std::vector< RealTensorValue > > > & _dpermeability_dgradvar
d(permeabiity)/d(grad(PorousFlow variable))
Definition: PorousFlowDarcyVelocityMaterial.h:43
PorousFlowDarcyVelocityMaterial::_dgrad_p_dvar
const MaterialProperty< std::vector< std::vector< RealGradient > > > & _dgrad_p_dvar
Derivative of Grad porepressure in each phase wrt PorousFlow variables.
Definition: PorousFlowDarcyVelocityMaterial.h:70
PorousFlowDarcyVelocityMaterial::_relative_permeability
const MaterialProperty< std::vector< Real > > & _relative_permeability
Relative permeability of each phase.
Definition: PorousFlowDarcyVelocityMaterial.h:58
PorousFlowDarcyVelocityMaterial::computeQpProperties
virtual void computeQpProperties() override
Definition: PorousFlowDarcyVelocityMaterial.C:64
PorousFlowDarcyVelocityMaterial::_dfluid_density_dvar
const MaterialProperty< std::vector< std::vector< Real > > > & _dfluid_density_dvar
Derivative of the fluid density for each phase wrt PorousFlow variables.
Definition: PorousFlowDarcyVelocityMaterial.h:49
PorousFlowDarcyVelocityMaterial::_permeability
const MaterialProperty< RealTensorValue > & _permeability
Permeability of porous material.
Definition: PorousFlowDarcyVelocityMaterial.h:37
PorousFlowMaterial
PorousFlowMaterial is the base class for all PorousFlow Materials It allows users to specify that the...
Definition: PorousFlowMaterial.h:40
PorousFlowMaterial.h
PorousFlowDarcyVelocityMaterial::_ddarcy_velocity_dgradvar
MaterialProperty< std::vector< std::vector< std::vector< RealVectorValue > > > > & _ddarcy_velocity_dgradvar
_ddarcy_velocity_dgradvar[_qp][ph][j][v](i) = d(i_th component of Darcy velocity of phase ph at quadp...
Definition: PorousFlowDarcyVelocityMaterial.h:95
PorousFlowDarcyVelocityMaterial::_dgrad_p_dgradvar
const MaterialProperty< std::vector< std::vector< Real > > > & _dgrad_p_dgradvar
Derivative of Grad porepressure in each phase wrt grad(PorousFlow variables)
Definition: PorousFlowDarcyVelocityMaterial.h:67
PorousFlowDarcyVelocityMaterial::_darcy_velocity
MaterialProperty< std::vector< RealVectorValue > > & _darcy_velocity
Computed Darcy velocity of each phase.
Definition: PorousFlowDarcyVelocityMaterial.h:79
PorousFlowDarcyVelocityMaterial::_num_phases
const unsigned int _num_phases
Number of phases.
Definition: PorousFlowDarcyVelocityMaterial.h:31
PorousFlowDarcyVelocityMaterial::_num_var
const unsigned int _num_var
Number of PorousFlow variables.
Definition: PorousFlowDarcyVelocityMaterial.h:34
PorousFlowDarcyVelocityMaterial::_gravity
const RealVectorValue _gravity
Gravity.
Definition: PorousFlowDarcyVelocityMaterial.h:73
PorousFlowDarcyVelocityMaterial::_fluid_viscosity
const MaterialProperty< std::vector< Real > > & _fluid_viscosity
Viscosity of each component in each phase.
Definition: PorousFlowDarcyVelocityMaterial.h:52