www.mooseframework.org
PorousFlowMassFraction.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 
13 
15 
16 template <>
17 InputParameters validParams<PorousFlowMassFraction>();
18 
24 {
25 public:
26  PorousFlowMassFraction(const InputParameters & parameters);
27 
28 protected:
30  MaterialProperty<std::vector<std::vector<Real>>> & _mass_frac;
31 
33  MaterialProperty<std::vector<std::vector<RealGradient>>> * const _grad_mass_frac;
34 
36  MaterialProperty<std::vector<std::vector<std::vector<Real>>>> & _dmass_frac_dvar;
37 
38  virtual void initQpStatefulProperties() override;
39  virtual void computeQpProperties() override;
40 
45  void build_mass_frac(unsigned int qp);
46 
53  const unsigned int _num_passed_mf_vars;
54 
56  std::vector<unsigned int> _mf_vars_num;
57 
59  std::vector<const VariableValue *> _mf_vars;
60 
62  std::vector<const VariableGradient *> _grad_mf_vars;
63 };
64 
PorousFlowMaterialVectorBase
Base class for all PorousFlow vector materials.
Definition: PorousFlowMaterialVectorBase.h:23
PorousFlowMassFraction::_grad_mf_vars
std::vector< const VariableGradient * > _grad_mf_vars
The gradient of the mass-fraction variables.
Definition: PorousFlowMassFraction.h:62
PorousFlowMassFraction::_mf_vars
std::vector< const VariableValue * > _mf_vars
The mass-fraction variables.
Definition: PorousFlowMassFraction.h:59
PorousFlowMassFraction::PorousFlowMassFraction
PorousFlowMassFraction(const InputParameters &parameters)
Definition: PorousFlowMassFraction.C:32
PorousFlowMassFraction::_mass_frac
MaterialProperty< std::vector< std::vector< Real > > > & _mass_frac
Mass fraction matrix at quadpoint or nodes.
Definition: PorousFlowMassFraction.h:30
PorousFlowMassFraction::build_mass_frac
void build_mass_frac(unsigned int qp)
Builds the mass-fraction variable matrix at the quad point.
PorousFlowMassFraction::_num_passed_mf_vars
const unsigned int _num_passed_mf_vars
Number of mass-fraction variables provided by the user This needs to be num_phases*(_num_components -...
Definition: PorousFlowMassFraction.h:53
PorousFlowMassFraction::_dmass_frac_dvar
MaterialProperty< std::vector< std::vector< std::vector< Real > > > > & _dmass_frac_dvar
Derivative of the mass fraction matrix with respect to the porous flow variables.
Definition: PorousFlowMassFraction.h:36
PorousFlowMaterialVectorBase.h
PorousFlowMassFraction::_grad_mass_frac
MaterialProperty< std::vector< std::vector< RealGradient > > > *const _grad_mass_frac
Gradient of the mass fraction matrix at the quad points.
Definition: PorousFlowMassFraction.h:33
PorousFlowMassFraction::computeQpProperties
virtual void computeQpProperties() override
Definition: PorousFlowMassFraction.C:84
validParams< PorousFlowMassFraction >
InputParameters validParams< PorousFlowMassFraction >()
Definition: PorousFlowMassFraction.C:16
PorousFlowMassFraction::initQpStatefulProperties
virtual void initQpStatefulProperties() override
Definition: PorousFlowMassFraction.C:76
PorousFlowMassFraction::_mf_vars_num
std::vector< unsigned int > _mf_vars_num
The variable number of the mass-fraction variables.
Definition: PorousFlowMassFraction.h:56
PorousFlowMassFraction
Material designed to form a std::vector<std::vector> of mass fractions from the individual mass fract...
Definition: PorousFlowMassFraction.h:23