www.mooseframework.org
AddCoupledEqSpeciesAction.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 "Action.h"
13 
14 #include "libmesh/vector_value.h"
15 
17 {
18 public:
20 
22 
23  virtual void act() override;
24 
25 protected:
27  const std::vector<NonlinearVariableName> _primary_species;
29  const std::vector<AuxVariableName> _secondary_species;
31  std::vector<std::vector<Real>> _stos;
33  std::vector<std::vector<Real>> _weights;
35  std::vector<Real> _eq_const;
37  std::vector<VariableName> _eq_species;
39  std::set<std::string> _aux_species;
41  std::vector<std::vector<bool>> _primary_participation;
43  std::vector<std::vector<Real>> _sto_u;
45  std::vector<std::vector<std::vector<Real>>> _sto_v;
47  std::vector<std::vector<std::vector<VariableName>>> _coupled_v;
49  std::vector<std::vector<VariableName>> _primary_species_involved;
51  std::string _input_reactions;
53  std::vector<std::string> _reactions;
55  unsigned int _num_reactions;
57  const std::vector<VariableName> _pressure_var;
60 };
AddCoupledEqSpeciesAction(const InputParameters &params)
std::vector< Real > _eq_const
Equilibrium constants for each reaction.
const std::vector< AuxVariableName > _secondary_species
Secondary species added as AuxVariables.
std::vector< VariableName > _eq_species
Equilibrium species.
std::vector< std::vector< bool > > _primary_participation
Participation of primary species in each reaction.
std::vector< std::string > _reactions
Vector of parsed reactions.
std::vector< std::vector< Real > > _sto_u
Stoichiometric coefficients of primary variables in each reaction.
const RealVectorValue _gravity
Gravity (default is (0, 0, 0))
static InputParameters validParams()
std::set< std::string > _aux_species
Set of auxillary species.
std::vector< std::vector< Real > > _weights
Weight of each primary species in each reaction.
std::vector< std::vector< std::vector< Real > > > _sto_v
Stoichiometric coefficients of coupled primary variables in each reaction.
std::string _input_reactions
Reaction network read from input file.
const std::vector< NonlinearVariableName > _primary_species
Basis set of primary species.
std::vector< std::vector< Real > > _stos
Stoichiometric coefficients for each primary species in each reaction.
unsigned int _num_reactions
Number of reactions.
std::vector< std::vector< std::vector< VariableName > > > _coupled_v
Coupled primary species for each reaction.
std::vector< std::vector< VariableName > > _primary_species_involved
Primary species involved in the ith equilibrium reaction.
const std::vector< VariableName > _pressure_var
Pressure variable.