https://mooseframework.inl.gov
Loading...
Searching...
No Matches
CavityPressurePPAction.C
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
11#include "Factory.h"
12#include "FEProblem.h"
13
14registerMooseAction("SolidMechanicsApp", CavityPressurePPAction, "add_postprocessor");
15
18{
20 params.addClassDescription("This Action creates a CavityPressurePostprocessor.");
21 params.addParam<std::string>("output", "The name to use for the cavity pressure value");
22 params.addParam<std::string>("output_initial_moles",
23 "The name to use when reporting the initial moles of gas");
24 return params;
25}
26
28
29void
31{
32 InputParameters params = _factory.getValidParams("CavityPressurePostprocessor");
33
34 params.set<ExecFlagEnum>("execute_on") = {EXEC_INITIAL, EXEC_LINEAR};
35 params.set<UserObjectName>("cavity_pressure_uo") = _name + "UserObject";
36 params.set<MooseEnum>("quantity") = "cavity_pressure";
37
38 _problem->addPostprocessor("CavityPressurePostprocessor",
39 isParamValid("output") ? getParam<std::string>("output") : _name,
40 params);
41
42 if (isParamValid("output_initial_moles"))
43 {
44 params.set<MooseEnum>("quantity") = "initial_moles";
45 _problem->addPostprocessor(
46 "CavityPressurePostprocessor", getParam<std::string>("output_initial_moles"), params);
47 }
48}
registerMooseAction("SolidMechanicsApp", CavityPressurePPAction, "add_postprocessor")
const ExecFlagType EXEC_INITIAL
const ExecFlagType EXEC_LINEAR
static InputParameters validParams()
std::shared_ptr< FEProblemBase > & _problem
static InputParameters validParams()
CavityPressurePPAction(const InputParameters &params)
InputParameters getValidParams(const std::string &name) const
void addParam(const std::string &name, const std::initializer_list< typename T::value_type > &value, const std::string &doc_string)
void addClassDescription(const std::string &doc_string)
T & set(const std::string &name, bool quiet_mode=false)
const std::string & _name
bool isParamValid(const std::string &name) const
Factory & _factory