www.mooseframework.org
Public Member Functions | Public Attributes | Protected Attributes | List of all members
AdaptivityAction Class Reference

#include <AdaptivityAction.h>

Inheritance diagram for AdaptivityAction:
[legend]

Public Member Functions

 AdaptivityAction (InputParameters params)
 
virtual void act () override
 
const std::string & name () const
 The name of the action. More...
 
const std::string & type () const
 
InputParametersparameters ()
 
const InputParametersparameters () const
 
const std::string & specificTaskName () const
 
const std::set< std::string > & getAllTasks () const
 
bool isParamValid (const std::string &name) const
 
void appendTask (const std::string &task)
 
std::string getBaseName () const
 Deprecated name methods, use name() More...
 
std::string getShortName () const
 DEPRECATED METHODS. More...
 
template<typename T >
const T & getParam (const std::string &name) const
 Retrieve a parameter for the object. More...
 

Public Attributes

const ConsoleStream _console
 An instance of helper class to write streams to the Console objects. More...
 

Protected Attributes

InputParameters _pars
 Input parameters for the action. More...
 
std::string _registered_identifier
 
std::string _name
 The name of the action. More...
 
std::string _action_type
 
MooseApp_app
 The MOOSE application this is associated with. More...
 
Factory_factory
 The Factory associated with the MooseApp. More...
 
ActionFactory_action_factory
 Builds Actions. More...
 
std::string _specific_task_name
 This member will only be populated if this Action instance is only designed to handle one task. More...
 
std::set< std::string > _all_tasks
 A list of all the tasks that this Action will satisfy. More...
 
ActionWarehouse_awh
 Reference to ActionWarehouse where we store object build by actions. More...
 
const std::string & _current_task
 The current action (even though we have seperate instances for each action) More...
 
std::shared_ptr< MooseMesh > & _mesh
 
std::shared_ptr< MooseMesh > & _displaced_mesh
 
std::shared_ptr< FEProblemBase > & _problem
 Convenience reference to a problem this action works on. More...
 
std::shared_ptr< Executioner > & _executioner
 Convenience reference to an executioner. More...
 

Detailed Description

Definition at line 27 of file AdaptivityAction.h.

Constructor & Destructor Documentation

AdaptivityAction::AdaptivityAction ( InputParameters  params)

Definition at line 82 of file AdaptivityAction.C.

82 : Action(params) {}
Action(InputParameters parameters)
Definition: Action.C:51

Member Function Documentation

void AdaptivityAction::act ( )
overridevirtual

Implements Action.

Definition at line 85 of file AdaptivityAction.C.

86 {
87  NonlinearSystemBase & system = _problem->getNonlinearSystemBase();
88 
89  Adaptivity & adapt = _problem->adaptivity();
90 
91  adapt.init(getParam<unsigned int>("steps"), getParam<unsigned int>("initial_adaptivity"));
92 
93  adapt.setErrorEstimator(getParam<MooseEnum>("error_estimator"));
94 
95  adapt.setParam("cycles_per_step", getParam<unsigned int>("cycles_per_step"));
96  adapt.setParam("refine fraction", getParam<Real>("refine_fraction"));
97  adapt.setParam("coarsen fraction", getParam<Real>("coarsen_fraction"));
98  adapt.setParam("max h-level", getParam<unsigned int>("max_h_level"));
99  adapt.setParam("recompute_markers_during_cycles",
100  getParam<bool>("recompute_markers_during_cycles"));
101 
102  adapt.setPrintMeshChanged(getParam<bool>("print_changed_info"));
103 
104  const std::vector<std::string> & weight_names =
105  getParam<std::vector<std::string>>("weight_names");
106  const std::vector<Real> & weight_values = getParam<std::vector<Real>>("weight_values");
107 
108  int num_weight_names = weight_names.size();
109  int num_weight_values = weight_values.size();
110 
111  if (num_weight_names)
112  {
113  if (num_weight_names != num_weight_values)
114  mooseError("Number of weight_names must be equal to number of weight_values in "
115  "Execution/Adaptivity");
116 
117  // If weights have been specified then set the default weight to zero
118  std::vector<Real> weights(system.nVariables(), 0);
119 
120  for (int i = 0; i < num_weight_names; i++)
121  {
122  std::string name = weight_names[i];
123  double value = weight_values[i];
124 
125  weights[system.getVariable(0, name).number()] = value;
126  }
127 
128  std::vector<FEMNormType> norms(system.nVariables(), H1_SEMINORM);
129 
130  SystemNorm sys_norm(norms, weights);
131 
132  adapt.setErrorNorm(sys_norm);
133  }
134 
135  adapt.setTimeActive(getParam<Real>("start_time"), getParam<Real>("stop_time"));
136  adapt.setInterval(getParam<unsigned int>("interval"));
137 }
void setPrintMeshChanged(bool state=true)
Definition: Adaptivity.h:87
void setInterval(unsigned int interval)
Set the interval (number of timesteps) between refinement steps.
Definition: Adaptivity.h:223
void mooseError(Args &&...args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:182
void init(unsigned int steps, unsigned int initial_steps)
Initialize the initial adaptivity ;-)
Definition: Adaptivity.C:59
void setTimeActive(Real start_time, Real stop_time)
Sets the time when the adaptivity is active.
Definition: Adaptivity.C:251
Nonlinear system to be solved.
nl system()
virtual MooseVariable & getVariable(THREAD_ID tid, const std::string &var_name)
Gets a reference to a variable of with specified name.
Definition: SystemBase.C:103
void setErrorEstimator(const MooseEnum &error_estimator_name)
Set the error estimator.
Definition: Adaptivity.C:104
unsigned int number() const
Get variable number coming from libMesh.
Takes care of everything related to mesh adaptivity.
Definition: Adaptivity.h:48
const std::string & name() const
The name of the action.
Definition: Action.h:51
std::shared_ptr< FEProblemBase > & _problem
Convenience reference to a problem this action works on.
Definition: Action.h:131
void setErrorNorm(SystemNorm &sys_norm)
Set the error norm (FIXME: improve description)
Definition: Adaptivity.C:118
void setParam(const std::string &param_name, const T &param_value)
Set adaptivity parameter.
Definition: Adaptivity.h:307
virtual unsigned int nVariables()
Get the number of variables in this system.
Definition: SystemBase.C:580
void Action::appendTask ( const std::string &  task)
inlineinherited

Definition at line 82 of file Action.h.

82 { _all_tasks.insert(task); }
std::set< std::string > _all_tasks
A list of all the tasks that this Action will satisfy.
Definition: Action.h:119
const std::set<std::string>& Action::getAllTasks ( ) const
inlineinherited

Definition at line 68 of file Action.h.

Referenced by AddKernelAction::act().

68 { return _all_tasks; }
std::set< std::string > _all_tasks
A list of all the tasks that this Action will satisfy.
Definition: Action.h:119
std::string Action::getBaseName ( ) const
inherited

Deprecated name methods, use name()

Definition at line 82 of file Action.C.

Referenced by Action::name().

83 {
84  mooseDeprecated("getBaseName() is deprecated.");
86 }
void mooseDeprecated(Args &&...args)
Emit a deprecated code/feature message with the given stringified, concatenated args.
Definition: MooseError.h:202
std::string _name
The name of the action.
Definition: Action.h:92
std::string baseName(const std::string &name)
Function for string the information before the final / in a parser block.
Definition: MooseUtils.C:331
template<typename T >
const T & Action::getParam ( const std::string &  name) const
inherited

Retrieve a parameter for the object.

Parameters
nameThe name of the parameter
Returns
The value of the parameter

Definition at line 139 of file Action.h.

Referenced by CreateDisplacedProblemAction::act(), AddPeriodicBCAction::act(), AddPeriodicBCAction::autoTranslationBoundaries(), DynamicObjectRegistrationAction::DynamicObjectRegistrationAction(), Action::getAllTasks(), and MooseApp::getCheckpointFiles().

140 {
141  return InputParameters::getParamHelper(name, _pars, static_cast<T *>(0));
142 }
static const T & getParamHelper(const std::string &name, const InputParameters &pars, const T *the_type)
InputParameters _pars
Input parameters for the action.
Definition: Action.h:86
const std::string & name() const
The name of the action.
Definition: Action.h:51
std::string Action::getShortName ( ) const
inherited

DEPRECATED METHODS.

Definition at line 75 of file Action.C.

Referenced by Action::name().

76 {
77  mooseDeprecated("getShortName() is deprecated.");
79 }
void mooseDeprecated(Args &&...args)
Emit a deprecated code/feature message with the given stringified, concatenated args.
Definition: MooseError.h:202
std::string shortName(const std::string &name)
Function for stripping name after the file / in parser block.
Definition: MooseUtils.C:325
std::string _name
The name of the action.
Definition: Action.h:92
bool Action::isParamValid ( const std::string &  name) const
inlineinherited

Definition at line 80 of file Action.h.

Referenced by CopyNodalVarsAction::act(), SetAdaptivityOptionsAction::act(), CreateProblemAction::act(), SetupMeshAction::act(), CreateDisplacedProblemAction::act(), AddAuxVariableAction::act(), AddVariableAction::act(), AddVariableAction::addVariable(), AddPeriodicBCAction::autoTranslationBoundaries(), DynamicObjectRegistrationAction::DynamicObjectRegistrationAction(), and SetupMeshAction::setupMesh().

80 { return _pars.isParamValid(name); }
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.
InputParameters _pars
Input parameters for the action.
Definition: Action.h:86
const std::string & name() const
The name of the action.
Definition: Action.h:51
const std::string& Action::name ( ) const
inlineinherited
InputParameters& Action::parameters ( )
inlineinherited

Definition at line 63 of file Action.h.

Referenced by GlobalParamsAction::remove(), GlobalParamsAction::setDoubleIndexParam(), GlobalParamsAction::setScalarParam(), and GlobalParamsAction::setVectorParam().

63 { return _pars; }
InputParameters _pars
Input parameters for the action.
Definition: Action.h:86
const InputParameters& Action::parameters ( ) const
inlineinherited

Definition at line 64 of file Action.h.

64 { return _pars; }
InputParameters _pars
Input parameters for the action.
Definition: Action.h:86
const std::string& Action::specificTaskName ( ) const
inlineinherited

Definition at line 66 of file Action.h.

66 { return _specific_task_name; }
std::string _specific_task_name
This member will only be populated if this Action instance is only designed to handle one task...
Definition: Action.h:112
const std::string& Action::type ( ) const
inlineinherited

Definition at line 61 of file Action.h.

Referenced by CommonOutputAction::hasConsole().

61 { return _action_type; }
std::string _action_type
Definition: Action.h:95

Member Data Documentation

ActionFactory& Action::_action_factory
protectedinherited
std::string Action::_action_type
protectedinherited

Definition at line 95 of file Action.h.

Referenced by Action::type().

std::set<std::string> Action::_all_tasks
protectedinherited

A list of all the tasks that this Action will satisfy.

Note: That this is not populated at construction time. However, all tasks will be added prior to act().

Definition at line 119 of file Action.h.

Referenced by Action::appendTask(), and Action::getAllTasks().

MooseApp& Action::_app
protectedinherited
ActionWarehouse& Action::_awh
protectedinherited
const ConsoleStream ConsoleStreamInterface::_console
inherited

An instance of helper class to write streams to the Console objects.

Definition at line 37 of file ConsoleStreamInterface.h.

Referenced by IterationAdaptiveDT::acceptStep(), CreateProblemAction::act(), SetupRecoverFileBaseAction::act(), Adaptivity::adaptMesh(), FEProblemBase::adaptMesh(), FEProblemBase::advanceMultiApps(), SimplePredictor::apply(), FEProblemBase::backupMultiApps(), FEProblemBase::checkProblemIntegrity(), IterationAdaptiveDT::computeAdaptiveDT(), Transient::computeConstrainedDT(), NonlinearSystemBase::computeDamping(), IterationAdaptiveDT::computeDT(), IterationAdaptiveDT::computeFailedDT(), IterationAdaptiveDT::computeInterpolationDT(), FEProblemBase::computeResidualType(), IterationAdaptiveDT::constrainStep(), TimeStepper::constrainStep(), AB2PredictorCorrector::converged(), FEProblemBase::execMultiApps(), FEProblemBase::execMultiAppTransfers(), MultiAppPostprocessorTransfer::execute(), MultiAppPostprocessorInterpolationTransfer::execute(), MultiAppVariableValueSamplePostprocessorTransfer::execute(), MultiAppNearestNodeTransfer::execute(), MultiAppPostprocessorToAuxScalarTransfer::execute(), MultiAppScalarToAuxScalarTransfer::execute(), MultiAppVariableValueSampleTransfer::execute(), MultiAppUserObjectTransfer::execute(), MultiAppInterpolationTransfer::execute(), MultiAppMeshFunctionTransfer::execute(), MultiAppProjectionTransfer::execute(), MultiAppCopyTransfer::execute(), Steady::execute(), MultiAppDTKUserObjectTransfer::execute(), ActionWarehouse::executeActionsWithAction(), ActionWarehouse::executeAllActions(), MultiApp::globalAppToLocal(), InversePowerMethod::init(), NonlinearEigen::init(), Steady::init(), FEProblemBase::initialAdaptMesh(), FEProblemBase::initialSetup(), EigenExecutionerBase::inversePowerIteration(), Transient::keepGoing(), IterationAdaptiveDT::limitDTByFunction(), IterationAdaptiveDT::limitDTToPostprocessorValue(), EigenExecutionerBase::makeBXConsistent(), Console::meshChanged(), MooseObject::mooseDeprecated(), MooseObject::mooseInfo(), MooseObject::mooseWarning(), DOFMapOutput::output(), VariableResidualNormsDebugOutput::output(), Console::output(), ControlOutput::outputActiveObjects(), ControlOutput::outputChangedControls(), ControlOutput::outputControls(), Console::outputInput(), Console::outputPostprocessors(), Console::outputScalarVariables(), Console::outputSystemInformation(), FEProblemBase::possiblyRebuildGeomSearchPatches(), EigenExecutionerBase::postExecute(), ActionWarehouse::printActionDependencySets(), EigenExecutionerBase::printEigenvalue(), MaterialPropertyDebugOutput::printMaterialMap(), SolutionTimeAdaptiveDT::rejectStep(), DT2::rejectStep(), FEProblemBase::restoreMultiApps(), SimplePredictor::shouldApply(), NonlinearSystem::solve(), LStableDirk2::solve(), LStableDirk3::solve(), ImplicitMidpoint::solve(), ExplicitTVDRK2::solve(), AStableDirk4::solve(), LStableDirk4::solve(), ExplicitRK2::solve(), TransientMultiApp::solveStep(), Transient::solveStep(), DT2::step(), AB2PredictorCorrector::step(), NonlinearEigen::takeStep(), FEProblemBase::useFECache(), Console::writeTimestepInformation(), Console::writeVariableNorms(), and FEProblemBase::~FEProblemBase().

const std::string& Action::_current_task
protectedinherited

The current action (even though we have seperate instances for each action)

Definition at line 125 of file Action.h.

Referenced by AddKernelAction::act(), CopyNodalVarsAction::act(), AddScalarKernelAction::act(), SetupMeshAction::act(), SetupMeshCompleteAction::act(), MaterialDerivativeTestAction::act(), and AddNodalNormalsAction::act().

std::shared_ptr<MooseMesh>& Action::_displaced_mesh
protectedinherited
std::shared_ptr<Executioner>& Action::_executioner
protectedinherited

Convenience reference to an executioner.

Definition at line 134 of file Action.h.

Referenced by SetupPredictorAction::act(), and SetupTimeStepperAction::act().

Factory& Action::_factory
protectedinherited
std::shared_ptr<MooseMesh>& Action::_mesh
protectedinherited
std::string Action::_name
protectedinherited
InputParameters Action::_pars
protectedinherited
std::shared_ptr<FEProblemBase>& Action::_problem
protectedinherited

Convenience reference to a problem this action works on.

Definition at line 131 of file Action.h.

Referenced by AddBCAction::act(), AddBoundsVectorsAction::act(), AddInitialConditionAction::act(), AddDiracKernelAction::act(), AddMaterialAction::act(), CreateExecutionerAction::act(), AddKernelAction::act(), AddMultiAppAction::act(), AddElementalFieldAction::act(), AddUserObjectAction::act(), SetAdaptivityOptionsAction::act(), AddNodalKernelAction::act(), SetupDampersAction::act(), CheckIntegrityAction::act(), AddDamperAction::act(), AddICAction::act(), AddDGKernelAction::act(), AddInterfaceKernelAction::act(), AddMarkerAction::act(), AddTransferAction::act(), AddPostprocessorAction::act(), InitProblemAction::act(), AddIndicatorAction::act(), AddScalarKernelAction::act(), AddVectorPostprocessorAction::act(), CopyNodalVarsAction::act(), AddConstraintAction::act(), AddFieldSplitAction::act(), CreateProblemAction::act(), act(), SetupTimeStepperAction::act(), CreateDisplacedProblemAction::act(), AddDistributionAction::act(), SetupPreconditionerAction::act(), SetupPredictorAction::act(), AddFunctionAction::act(), SetupTimeIntegratorAction::act(), SetupResidualDebugAction::act(), MaterialDerivativeTestAction::act(), SetupQuadratureAction::act(), AddSamplerAction::act(), AddAuxVariableAction::act(), AddOutputAction::act(), AddPeriodicBCAction::act(), AddControlAction::act(), MaterialOutputAction::act(), SetupPostprocessorDataAction::act(), AddNodalNormalsAction::act(), AddVariableAction::addVariable(), AddPeriodicBCAction::autoTranslationBoundaries(), CheckOutputAction::checkMaterialOutput(), AddVariableAction::getSubdomainIDs(), and AddPeriodicBCAction::setPeriodicVars().

std::string Action::_registered_identifier
protectedinherited

Definition at line 89 of file Action.h.

std::string Action::_specific_task_name
protectedinherited

This member will only be populated if this Action instance is only designed to handle one task.

This happens when an Action is registered with several pieces of syntax in which case separate instances are built to handle the different incoming parameter values.

Definition at line 112 of file Action.h.

Referenced by Action::specificTaskName().


The documentation for this class was generated from the following files: