https://mooseframework.inl.gov
Loading...
Searching...
No Matches
FlowModelSetup.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 "ActionFactory.h"
13#include "ActionWarehouse.h"
14#include "InputParameters.h"
15#include "MooseApp.h"
16#include "MooseTypes.h"
17
22{
23public:
24 FlowModelSetup(const InputParameters & params);
25
26protected:
27 virtual void addInitialConditions() = 0;
28 virtual void addSolutionVariables() = 0;
29 virtual void addNonConstantAuxVariables() = 0;
30 virtual void addMaterials();
31 virtual void addUserObjects() = 0;
32
39 void addSolutionVariable(const VariableName & var_name, const Real & scaling = 1.0);
40
46 void addAuxVariable(const VariableName & var_name);
47
54 void addFunctionIC(const VariableName & var_name, const FunctionName & function_name);
55
62 template <typename T>
63 const T & getParam(const std::string & name) const;
64
69
72
74 const Real & _gravity_magnitude;
75
76public:
78};
79
80template <typename T>
81const T &
82FlowModelSetup::getParam(const std::string & name) const
83{
84 return InputParameters::getParamHelper<T>(name, _this_params);
85}
const double T
const std::string name
Definition Setup.h:21
Base helper class to provide interfaces to common flow model setup functions.
virtual void addSolutionVariables()=0
const T & getParam(const std::string &name) const
Retrieves a parameter.
ActionWarehouse & _this_action_warehouse
void addAuxVariable(const VariableName &var_name)
Adds an aux variable.
const Real & _gravity_magnitude
Gravitational acceleration magnitude.
static InputParameters validParams()
void addFunctionIC(const VariableName &var_name, const FunctionName &function_name)
Adds a function initial condition.
void addSolutionVariable(const VariableName &var_name, const Real &scaling=1.0)
Adds a solution variable.
const InputParameters & _this_params
virtual void addInitialConditions()=0
virtual void addNonConstantAuxVariables()=0
virtual void addUserObjects()=0
virtual void addMaterials()
MooseEnum _fe_order
MooseEnum _fe_family
MooseApp & _this_app
ActionFactory & _this_action_factory