www.mooseframework.org
AddPrimarySpeciesAction.C
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 
11 #include "FEProblem.h"
12 
13 registerMooseAction("ChemicalReactionsApp", AddPrimarySpeciesAction, "add_variable");
14 
15 template <>
16 InputParameters
18 {
19  InputParameters params = validParams<AddVariableAction>();
20  params.addRequiredParam<std::vector<NonlinearVariableName>>(
21  "primary_species", "The list of primary variables to add");
22  params.addClassDescription("Adds Variables for all primary species");
23  return params;
24 }
25 
26 AddPrimarySpeciesAction::AddPrimarySpeciesAction(const InputParameters & params)
27  : AddVariableAction(params),
28  _vars(getParam<std::vector<NonlinearVariableName>>("primary_species")),
29  _scaling(isParamValid("scaling") ? getParam<std::vector<Real>>("scaling")
30  : std::vector<Real>(1, 1.0))
31 {
32 }
33 
34 void
36 {
37  auto fe_type = AddVariableAction::feType(_pars);
38  auto type = AddVariableAction::determineType(fe_type, 1);
39  auto var_params = _factory.getValidParams(type);
40 
41  var_params.applySpecificParameters(_pars, {"family", "order", "scaling"});
42 
43  for (auto & var : _vars)
44  _problem->addVariable(type, var, var_params);
45 }
registerMooseAction
registerMooseAction("ChemicalReactionsApp", AddPrimarySpeciesAction, "add_variable")
AddPrimarySpeciesAction::AddPrimarySpeciesAction
AddPrimarySpeciesAction(const InputParameters &params)
Definition: AddPrimarySpeciesAction.C:26
AddPrimarySpeciesAction::act
virtual void act() override
Definition: AddPrimarySpeciesAction.C:35
AddPrimarySpeciesAction::_vars
const std::vector< NonlinearVariableName > _vars
Primary species to add.
Definition: AddPrimarySpeciesAction.h:28
AddPrimarySpeciesAction.h
AddPrimarySpeciesAction
Definition: AddPrimarySpeciesAction.h:19
validParams< AddPrimarySpeciesAction >
InputParameters validParams< AddPrimarySpeciesAction >()
Definition: AddPrimarySpeciesAction.C:17