https://mooseframework.inl.gov
RichardsVarNames.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 "GeneralUserObject.h"
13 #include "Coupleable.h"
14 
21 {
22 public:
24 
26 
27  void initialize();
28  void execute();
29  void finalize();
30 
32  unsigned int num_v() const;
33 
41  unsigned int richards_var_num(unsigned int moose_var_num) const;
42 
50  bool not_richards_var(unsigned int moose_var_num) const;
51 
56  std::string richards_names() const;
57 
65  const VariableValue * richards_vals(unsigned int richards_var_num) const;
66 
74  const VariableValue * richards_vals_old(unsigned int richards_var_num) const;
75 
83  const VariableGradient * grad_var(unsigned int richards_var_num) const;
84 
91  const VariableValue * nodal_var(unsigned int richards_var_num) const;
92 
97  const VariableValue * nodal_var_old(unsigned int richards_var_num) const;
98 
100  std::string var_types() const;
101 
102 protected:
104  unsigned int _num_v;
105 
108 
110  const std::vector<unsigned int> _moose_var_num;
111 
113  std::vector<unsigned int> _ps_var_num;
114 
116  const std::vector<const VariableValue *>
117  _moose_var_value; // this is a vector of pointers to VariableValues
118 
120  const std::vector<const VariableValue *> _moose_var_value_old;
121 
123  std::vector<const VariableValue *>
124  _moose_nodal_var_value; // this is a vector of pointers to VariableValues
125 
127  std::vector<const VariableValue *> _moose_nodal_var_value_old;
128 
130  const std::vector<const VariableGradient *> _moose_grad_var;
131 };
OutputTools< Real >::VariableGradient VariableGradient
const std::vector< const VariableValue * > _moose_var_value_old
moose_var_value_old[i] = old values of richards variable i
std::vector< const VariableValue * > _moose_nodal_var_value
moose_var_value[i] = values of richards variable i
const VariableValue * richards_vals_old(unsigned int richards_var_num) const
a vector of pointers to old VariableValues
std::vector< const VariableValue * > _moose_nodal_var_value_old
moose_var_value_old[i] = old values of richards variable i
const VariableValue * nodal_var(unsigned int richards_var_num) const
The nodal variable values for the given richards_var_num To extract a the value of pressure variable ...
bool not_richards_var(unsigned int moose_var_num) const
returns true if moose_var_num is not a richards var
This holds maps between pressure_var or pressure_var, sat_var used in RichardsMaterial and kernels...
unsigned int num_v() const
the number of porepressure variables
static InputParameters validParams()
std::string var_types() const
return the _var_types string
const VariableGradient * grad_var(unsigned int richards_var_num) const
a vector of pointers to grad(Variable)
const VariableValue * nodal_var_old(unsigned int richards_var_num) const
The old nodal variable values for the given richards_var_num.
const std::vector< const VariableValue * > _moose_var_value
moose_var_value[i] = values of richards variable i
const std::vector< const VariableGradient * > _moose_grad_var
moose_grad_var[i] = gradient values of richards variable i
std::vector< unsigned int > _ps_var_num
_pressure_var_num[i] = the richards variable corresponding to moose variable i
const std::vector< unsigned int > _moose_var_num
_moose_var_num[i] = the moose variable number corresponding to richards variable i ...
OutputTools< Real >::VariableValue VariableValue
const VariableValue * richards_vals(unsigned int richards_var_num) const
a vector of pointers to VariableValues
unsigned int richards_var_num(unsigned int moose_var_num) const
the richards variable number
const InputParameters & parameters() const
RichardsVarNames(const InputParameters &parameters)
MooseEnum _var_types
physical meaning of the variables. Eg &#39;pppp&#39; means &#39;all variables are pressure variables&#39; ...
std::string richards_names() const
a space-separated string of richards variable names eg richards_names() = &#39;pwater pgas&#39; ...
unsigned int _num_v
number of richards variables