void AddAuxVariableAction::act() { // Name of variable being added std::string var_name = name(); // Blocks from the input std::set<SubdomainID> blocks = getSubdomainIDs(); // Scalar variable if (_scalar_var) _problem->addAuxScalarVariable(var_name, _fe_type.order); // Non-scalar variable else { // Check that the order is valid (CONSTANT, FIRST, or SECOND) if (_fe_type.order > 9) mooseError("Non-scalar AuxVariables must be CONSTANT, FIRST, SECOND, THIRD, FOURTH, FIFTH, " "SIXTH, SEVENTH, EIGHTH or NINTH order (", _fe_type.order, " supplied)"); if (blocks.empty()) _problem->addAuxVariable(var_name, _fe_type); else _problem->addAuxVariable(var_name, _fe_type, &blocks); } // Create the initial condition if (isParamValid("initial_condition")) createInitialConditionAction(); }
void AddVariableAction::act() { // Get necessary data for creating a variable std::string var_name = getShortName(); addVariable(var_name); // Set the initial condition if (isParamValid("initial_condition")) createInitialConditionAction(); }