25 #include "libmesh/enum_norm_type.h" 44 params.
addParam<
bool>(
"output_screen",
true,
"Output to the screen");
47 "Output to the file. The default behavior is to write to file only from " 48 "the head processor. If \"--keep-cout\" is passed to the executable, then " 49 "each processor will write to its own file. The same parallel behaviour " 50 "can also be achieved by passing \"--keep-cout --redirect-stdout\" to the " 51 "executable without setting this parameter to true.");
53 "show_multiapp_name",
false,
"Indent multiapp output using the multiapp name");
56 params.
addParam<
unsigned int>(
"max_rows",
58 "The maximum number of postprocessor/scalar values " 59 "displayed on screen during a timestep (set to 0 " 63 "Specifies the wrapping mode for post-processor tables that are " 64 "printed to the screen (ENVIRONMENT: Read \"MOOSE_PPS_WIDTH\" for " 65 "desired width (if not set, defaults to AUTO), AUTO: Attempt to " 66 "determine width automatically (serial only), <n>: Desired width");
69 params.
addParam<
bool>(
"verbose",
false,
"Print detailed diagnostics on timestep calculation");
73 "scientific_time",
false,
"Control the printing of time and dt in scientific notation");
76 "The number of significant digits that are printed on time related outputs");
77 MooseEnum time_format(
"plain=0 second=1 minute=2 hour=3 day=4 dtime=5",
"plain");
81 "The format for the printed times ('dtime' means a format like 1d 01:01:0.1)");
86 "If true, all performance logs will be printed. The " 87 "individual log settings will override this option.",
88 "Use PerfGraphOutput");
92 "If set, the performance log will be printed every n time steps",
93 "Use PerfGraphOutput instead");
94 params.
addParam<
bool>(
"solve_log",
"Toggles the printing of the 'Moose Test Performance' log");
97 "Print the libMesh performance log header (requires that 'perf_log = true')",
98 "Use PerfGraphOutput instead");
103 "Print the libMesh performance log, requires libMesh to be configured with --enable-perflog");
106 params.
addParam<
bool>(
"print_mesh_changed_info",
108 "When true, each time the mesh is changed the mesh information is printed");
111 params.
addParam<
bool>(
"outlier_variable_norms",
113 "If true, outlier variable norms will be printed after each solve");
115 "all_variable_norms",
false,
"If true, all variable norms will be printed after each solve");
118 std::vector<Real> multiplier;
119 multiplier.push_back(0.8);
120 multiplier.push_back(2);
121 params.
addParam<std::vector<Real>>(
"outlier_multiplier",
123 "Multiplier utilized to determine if a residual norm is an " 124 "outlier. If the variable residual is less than " 125 "multiplier[0] times the total residual it is colored red. " 126 "If the variable residual is less than multiplier[1] times " 127 "the average residual it is colored yellow.");
130 MultiMooseEnum info(
"framework mesh aux nonlinear linear relationship execution output",
131 "framework mesh aux nonlinear linear execution");
134 "List of information types to display " 135 "('framework', 'mesh', 'aux', 'nonlinear', 'relationship', " 136 "'execution', 'output')");
146 "Variable and Residual Norms");
150 "Time output formatting");
183 _max_rows(getParam<unsigned
int>(
"max_rows")),
184 _fit_mode(getParam<
MooseEnum>(
"fit_mode")),
185 _scientific_time(getParam<bool>(
"scientific_time")),
186 _write_file(getParam<bool>(
"output_file")),
187 _write_screen(getParam<bool>(
"output_screen")),
188 _verbose(getParam<bool>(
"verbose")),
189 _perf_log(getParam<bool>(
"perf_log")),
190 _perf_log_interval(getParam<unsigned
int>(
"perf_log_interval")),
191 _solve_log(isParamValid(
"solve_log") ? getParam<bool>(
"solve_log") : _perf_log),
192 _libmesh_log(getParam<bool>(
"libmesh_log")),
193 _perf_header(isParamValid(
"perf_header") ? getParam<bool>(
"perf_header") : _perf_log),
194 _all_variable_norms(getParam<bool>(
"all_variable_norms")),
195 _outlier_variable_norms(getParam<bool>(
"outlier_variable_norms")),
196 _outlier_multiplier(getParam<
std::vector<
Real>>(
"outlier_multiplier")),
197 _precision(isParamValid(
"time_precision") ? getParam<unsigned
int>(
"time_precision") : 0),
199 _write_all_procs_to_files(_app.getParam<bool>(
"keep_cout")),
200 _console_buffer(_app.getOutputWarehouse().consoleBuffer()),
201 _old_linear_norm(
std::numeric_limits<
Real>::
max()),
202 _old_nonlinear_norm(
std::numeric_limits<
Real>::
max()),
203 _print_mesh_changed_info(getParam<bool>(
"print_mesh_changed_info")),
205 _allow_changing_sysinfo_flag(true),
206 _last_message_ended_in_newline(true)
211 mooseAssert(actions.size() <= 1,
"Should not be more than one CommonOutputAction");
212 const Action * common = actions.empty() ? nullptr : *actions.begin();
218 if (common && common->getParam<
bool>(
"print_linear_residuals"))
222 if (common && common->getParam<
bool>(
"print_nonlinear_residuals"))
239 for (
auto & mme : common_execute_on)
308 std::string file_name;
429 std::stringstream oss;
435 oss <<
"\nTime Step " <<
timeStep();
436 unsigned int time_step_digits = oss.str().length() - 11;
450 unsigned int fillsize = 19 + time_step_digits;
452 << std::right << std::setw(fillsize) << std::setfill(
' ') <<
"old time = " << std::left
456 oss << std::right << std::setw(fillsize) << std::setfill(
' ') <<
"dt = " << std::left
461 oss << std::right << std::setw(fillsize) << std::setfill(
' ')
469 _console << oss.str() << std::flush;
476 std::ostringstream oss;
483 oss << std::scientific;
490 oss << t / 60 <<
"m";
492 oss << t / 3600 <<
"h";
494 oss << t / 86400 <<
"d";
504 int days = std::floor(abst / 24 / 3600);
505 int hours = std::floor(abst / 3600 - days * 24);
506 int mins = std::floor(abst / 60 - days * 24 * 60 - hours * 60);
507 Real second = abst - days * 24 * 3600 - hours * 3600 - mins * 60;
511 if (hours != 0 || mins != 0 || second != 0)
515 oss << std::setfill(
'0') << std::setw(2) << hours <<
":" << std::setfill(
'0') << std::setw(2)
524 oss << std::scientific;
547 if (dynamic_cast<EigenProblem *>(
_problem_ptr) !=
nullptr)
554 std::ostringstream oss;
563 std::map<std::string, Real> other;
564 std::map<std::string, Real> outlier;
571 for (
unsigned int i = 0; i <
n_vars; i++)
575 var_norm *= var_norm;
584 oss <<
"\nOutlier Variable Residual Norms:\n";
589 std::string color = COLOR_YELLOW;
594 oss <<
" " << var_name <<
": " << std::scientific << color <<
std::sqrt(var_norm)
595 << COLOR_DEFAULT <<
'\n';
604 oss <<
"\nVariable Residual Norms:\n";
607 oss <<
" " << var_name <<
": " << std::scientific << COLOR_GREEN <<
std::sqrt(var_norm)
608 << COLOR_DEFAULT <<
'\n';
614 _console << oss.str() << std::flush;
621 std::string color = COLOR_GREEN;
627 else if ((old_norm -
norm) / old_norm <= 0.05)
628 color = COLOR_YELLOW;
630 std::stringstream oss;
631 oss << std::scientific << std::setprecision(precision) << color <<
norm << COLOR_DEFAULT;
642 std::ostringstream oss;
656 std::stringstream oss;
657 oss <<
"\nPostprocessor Values:\n";
671 std::stringstream oss;
672 oss <<
"\nReporter Values:\n";
686 std::stringstream oss;
687 oss <<
"\nScalar Variable Values:\n";
764 if (!
_app.
getParam<
bool>(
"use_legacy_initial_residual_evaluation_behavior"))
829 bool this_message_ends_in_newline = message.empty() ? true : (message.back() ==
'\n');
830 bool this_message_starts_with_newline = message.empty() ? true : (message.front() ==
'\n');
839 Moose::out << message;
851 Moose::out << std::flush;
858 32, 47, 94, 92, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
859 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
860 32, 32, 32, 32, 32, 32, 32, 47, 94, 92, 13, 10, 124, 32, 32, 32, 92, 95, 47,
861 94, 92, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
862 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 47, 94, 92, 95, 47,
863 32, 32, 32, 124, 13, 10, 124, 32, 32, 32, 32, 32, 32, 32, 32, 92, 95, 47, 94,
864 92, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
865 32, 32, 32, 47, 94, 92, 95, 47, 32, 32, 32, 32, 32, 32, 32, 32, 124, 13, 10,
866 32, 92, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 92, 95, 47, 94, 92,
867 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 47, 94, 92, 95, 47, 32, 32, 32,
868 32, 32, 32, 32, 32, 32, 32, 32, 32, 47, 13, 10, 32, 32, 92, 95, 95, 32, 32,
869 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 92, 95, 95, 95, 45, 45, 45,
870 95, 95, 95, 47, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 95,
871 95, 47, 13, 10, 32, 32, 32, 32, 32, 45, 45, 45, 95, 95, 95, 32, 32, 32, 32,
872 32, 32, 32, 32, 32, 47, 32, 32, 32, 32, 32, 32, 32, 92, 32, 32, 32, 32, 32,
873 32, 32, 32, 32, 95, 95, 95, 45, 45, 45, 13, 10, 32, 32, 32, 32, 32, 32, 32,
874 32, 32, 32, 32, 45, 45, 45, 95, 95, 95, 32, 32, 124, 32, 32, 32, 32, 32, 32,
875 32, 32, 32, 124, 32, 32, 95, 95, 95, 45, 45, 45, 13, 10, 32, 32, 32, 32, 32,
876 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 124, 32, 32, 95, 32,
877 32, 32, 95, 32, 32, 124, 45, 45, 13, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32,
878 32, 32, 32, 32, 32, 32, 32, 32, 32, 124, 32, 32, 124, 111, 124, 32, 124, 111, 124,
879 32, 32, 124, 13, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
880 32, 32, 32, 47, 32, 32, 32, 32, 45, 32, 32, 32, 45, 32, 32, 32, 32, 92, 13,
881 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 124, 32,
882 32, 32, 32, 32, 32, 95, 95, 95, 32, 32, 32, 32, 32, 32, 124, 13, 10, 32, 32,
883 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 47, 32, 32, 32, 32, 32,
884 45, 45, 32, 32, 32, 45, 45, 32, 32, 32, 32, 32, 92, 13, 10, 32, 32, 32, 32,
885 32, 32, 32, 32, 32, 32, 32, 32, 32, 47, 32, 32, 32, 32, 32, 32, 32, 32, 32,
886 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 92, 13, 10, 32, 32, 32, 32,
887 32, 32, 32, 32, 32, 32, 32, 32, 124, 32, 32, 32, 32, 32, 32, 32, 47, 92, 32,
888 32, 32, 32, 32, 47, 92, 32, 32, 32, 32, 32, 32, 32, 124, 13, 10, 32, 32, 32,
889 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 92, 32, 32, 92, 32, 32, 32, 32, 32,
890 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 47, 32, 32, 47, 13, 10, 32, 32, 32,
891 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 47, 92, 32, 32, 92, 95, 95, 95, 95,
892 95, 95, 95, 95, 95, 95, 95, 95, 32, 47, 32, 32, 47, 92, 13, 10, 32, 32, 32,
893 32, 32, 32, 32, 32, 32, 32, 32, 32, 47, 32, 32, 92, 32, 32, 32, 32, 32, 32,
894 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 47, 32, 32, 92, 13, 10, 32, 32,
895 32, 32, 32, 32, 32, 32, 32, 32, 32, 47, 32, 32, 32, 32, 92, 32, 32, 32, 32,
896 32, 39, 95, 95, 95, 39, 32, 32, 32, 32, 32, 47, 32, 32, 32, 32, 92, 13, 10,
897 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 47, 92, 32, 32, 32, 32, 32, 92, 32,
898 45, 45, 95, 95, 45, 45, 45, 95, 95, 45, 45, 32, 47, 32, 32, 32, 32, 32, 47,
899 92, 13, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 47, 32, 32, 92, 47, 32, 32,
900 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
901 92, 47, 32, 32, 92, 13, 10, 32, 32, 32, 32, 32, 32, 32, 32, 47, 32, 32, 32,
902 47, 32, 32, 32, 32, 32, 32, 32, 77, 46, 79, 46, 79, 46, 83, 46, 69, 32, 32,
903 32, 32, 32, 32, 32, 92, 32, 32, 32, 92, 13, 10, 32, 32, 32, 32, 32, 32, 32,
904 47, 32, 32, 32, 124, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
905 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 124, 32, 32, 32, 92, 13, 10, 32,
906 32, 32, 32, 32, 32, 124, 32, 32, 32, 32, 124, 45, 45, 45, 45, 45, 45, 45, 45,
907 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 124, 32,
908 32, 32, 32, 124, 13, 10, 32, 32, 32, 32, 32, 32, 32, 92, 32, 32, 32, 32, 92,
909 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
910 32, 32, 32, 32, 47, 32, 32, 32, 32, 47, 13, 10, 32, 32, 32, 32, 32, 32, 32,
911 32, 32, 92, 92, 32, 92, 95, 92, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
912 32, 32, 32, 32, 32, 32, 32, 32, 47, 95, 47, 32, 47, 47, 13, 10, 32, 32, 32,
913 32, 32, 32, 32, 32, 32, 32, 32, 45, 45, 32, 32, 92, 32, 32, 32, 32, 32, 32,
914 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 47, 32, 32, 45, 45, 13, 10, 32,
915 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 124, 32, 32, 45,
916 45, 45, 95, 95, 95, 95, 95, 45, 45, 45, 32, 32, 124, 13, 10, 32, 32, 32, 32,
917 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 124, 32, 32, 32, 32, 32, 124,
918 32, 32, 32, 124, 32, 32, 32, 32, 32, 124, 13, 10, 32, 32, 32, 32, 32, 32, 32,
919 32, 32, 32, 32, 32, 32, 32, 32, 32, 124, 32, 32, 32, 32, 32, 124, 32, 32, 32,
920 124, 32, 32, 32, 32, 32, 124, 13, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
921 32, 32, 32, 32, 32, 47, 32, 86, 32, 32, 32, 32, 32, 92, 32, 47, 32, 32, 32,
922 32, 86, 32, 32, 92, 13, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
923 32, 32, 32, 124, 95, 124, 95, 95, 95, 95, 95, 124, 32, 124, 95, 95, 95, 95, 124,
925 Moose::out << std::string(c) << std::endl << std::endl;
std::string indent(unsigned int spaces)
Create empty string for indenting.
std::string formatTime(const Real t) const
A help function to format a time.
bool _libmesh_log
Control the display libMesh performance log.
const std::vector< NonlinearSystemName > & getNonlinearSystemNames() const
const ExecFlagType EXEC_FAILED
A MultiMooseEnum object to hold "execute_on" flags.
ExecFlagEnum _execute_on
The common Execution types; this is used as the default execution type for everything except system i...
unsigned int _precision
Number of significant digits.
static void petscSetupOutput()
Output string for setting up PETSC output.
TimeFormatEnum _time_format
Time format.
virtual std::size_t numNonlinearSystems() const override
std::string outputExecutionInformation(const MooseApp &app, FEProblemBase &problem)
Output execution information.
OutputOnWarehouse _advanced_execute_on
Storage for the individual component execute flags.
virtual bool onInterval()
Returns true if the output interval is satisfied.
registerMooseObject("MooseApp", Console)
std::string outputAuxiliarySystemInformation(FEProblemBase &problem)
Output the Auxiliary system information.
void setAdditionalValue(const std::string &names)
Insert operators Operator to insert (push_back) values into the enum.
virtual Real dt()
Get the current time step size.
Real & _dt_old
Old time step delta.
void writeVariableNorms()
Print the L2-norms for each variable.
virtual void outputSystemInformation() override
Print system information.
MooseEnum _fit_mode
The FormattedTable fit mode.
bool _all_variable_norms
Flag for writing all variable norms.
An output object for writing to the console (screen)
FormattedTable & _postprocessor_table
Table containing postprocessor data.
bool _verbose
Flag for writing detailed time step information.
unsigned int multiAppLevel() const
The MultiApp Level.
bool _write_screen
Flag for controlling outputting console information to screen.
Storage for action instances.
std::string _file_base
The base filename from the input paramaters.
bool _transient
Transient flag (true = transient)
void printInputFile(std::ostream &out)
This method uses the Actions in the warehouse to reproduce the input file.
const ExecFlagType EXEC_TIMESTEP_END
The following methods are specializations for using the libMesh::Parallel::packed_range_* routines fo...
unsigned int multiAppNumber() const
The MultiApp number.
std::string outputOutputInformation(MooseApp &app)
Output the output information.
bool _allow_changing_sysinfo_flag
A boolean for protecting _system_info_flags from being changed undesirably.
PerfLog perflog("libMesh", #ifdef LIBMESH_ENABLE_PERFORMANCE_LOGGING true #else false #endif)
virtual const std::string & name() const
Get the name of the class.
auto max(const L &left, const R &right)
virtual void output() override
Customizes the order of output for the various components as well as adds additional output such as t...
std::string outputMeshInformation(FEProblemBase &problem, bool verbose=true)
Output the mesh information.
bool isParamValid(const std::string &name) const
Test if the supplied parameter is valid.
bool _outlier_variable_norms
Flag for writing outlier variable norms.
Nonlinear system to be solved.
const bool _write_all_procs_to_files
Whether to write all processors to files.
virtual Real timeOld()
Get the old output time.
PetscInt _linear_iter
Current linear iteration returned from PETSc.
MultiMooseEnum _system_info_flags
Flags for controlling the what simulations information is shown.
virtual std::string filename() override
Creates the output file name Appends the user-supplied 'file_base' input parameter with a '...
void indentMessage(const std::string &prefix, std::string &message, const char *color=COLOR_CYAN, bool dont_indent_first_line=true, const std::string &post_prefix=": ")
Indents the supplied message given the prefix and color.
virtual void outputPostprocessors() override
Prints the postprocessor table to the screen.
std::string outputDataFilePaths()
Output the registered data paths for searching.
bool _solve_log
State for solve performance log.
FormattedTable & _scalar_table
Table containing scalar aux variables.
const ExecFlagType EXEC_TIMESTEP_BEGIN
ExecFlagType _current_execute_flag
Current execute on flag.
std::stringstream _file_output_stream
Stream for storing information to be written to a file.
void write(std::string message, bool indent=true)
Write message to screen and/or file.
virtual void initialSetup() override
Initial setup function Prints the system information, this is done here so that the system informatio...
FEProblemBase * _problem_ptr
Pointer the the FEProblemBase object for output object (use this)
Real calculate_norm(const NumericVector< Number > &v, unsigned int var, FEMNormType norm_type, std::set< unsigned int > *skip_dimensions=nullptr) const
virtual void timestepSetup() override
Gets called at the beginning of the timestep before this object is asked to do its job...
const std::string & type() const
Get the type of this class.
const T & getParam(const std::string &name) const
Retrieve a parameter for the object.
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type It sho...
virtual void outputReporters() override
Populates the tables with Reporter values.
ActionWarehouse & actionWarehouse()
Return a writable reference to the ActionWarehouse associated with this app.
const std::string & variable_name(const unsigned int i) const
virtual void outputInput() override
Print the input file at the beginning of the simulation.
std::string & removeColor(std::string &msg)
remove ANSI escape sequences for terminal color from msg
NonlinearSystemBase & getNonlinearSystemBase(const unsigned int sys_num)
MooseApp & _app
The MOOSE application this is associated with.
bool isValueSet(const std::string &value) const
Methods for seeing if a value is set in the MultiMooseEnum.
virtual void outputScalarVariables() override
Prints the aux scalar variables table to the screen.
void mooseConsole(const std::string &message)
Add a message to the output streams.
static InputParameters enableOutputTypes(const std::string &names=std::string())
A method for enabling individual output type control.
unsigned int _max_rows
The max number of table rows.
const ExecFlagType EXEC_LINEAR
const bool & usePreSMOResidual() const
Whether we are using pre-SMO residual in relative convergence checks.
std::string outputFrameworkInformation(const MooseApp &app)
Outputs framework information.
Real _norm
Current norm returned from PETSc.
Real _old_nonlinear_norm
Storage for the old non linear residual (needed for color output and only when used when printing to ...
bool _write_file
Flag for controlling outputting console information to a file.
Executioner * getExecutioner() const
Retrieve the Executioner for this App.
TimeFormatEnum
Time formatting options.
virtual ~Console()
Destructor.
virtual void outputPostprocessors() override
Populates the tables with postprocessor values.
bool _perf_log
State for all performance logging.
bool wantOutput(const std::string &name, const ExecFlagType &type)
Handles logic for determining if a step should be output.
void writeStreamToFile(bool append=true)
Write the file stream to the file.
const ExecFlagType EXEC_NONLINEAR
virtual NumericVector< Number > & RHS()=0
std::vector< Real > _outlier_multiplier
Multipliers for coloring variable residual norms (default [2, 0.8])
const T & getParam(const std::string &name)
Retrieve a parameter for the object.
virtual void initialSetup()
Call init() method on setup.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static std::string outputNorm(const Real &old_norm, const Real &norm, const unsigned int precision=6)
A helper function for outputting norms in color.
CTSub CT_OPERATOR_BINARY CTMul CTCompareLess CTCompareGreater CTCompareEqual _arg template * sqrt(_arg)) *_arg.template D< dtag >()) CT_SIMPLE_UNARY_FUNCTION(tanh
static InputParameters validParams()
Real nonlinearNorm() const
Return the last nonlinear norm.
void meshChanged() override
Performs console related printing when the mesh is changed.
Real _old_linear_norm
Storage for the old linear residual (needed for color output and only when used when printing to the ...
IntRange< T > make_range(T beg, T end)
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
Base class for scalar variables and postprocessors output objects.
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.
const InputParameters & parameters() const
Get the parameters of the object.
bool _scientific_time
Toggle for outputting time in time and dt in scientific notation.
FormattedTable & _reporter_table
Table containing Real Reporter values.
const std::vector< std::string > & getInputFileNames() const
std::string outputPreSMOResidualInformation()
Output the information about pre-SMO residual evaluation.
virtual std::size_t numLinearSystems() const override
const ConsoleStream _console
An instance of helper class to write streams to the Console objects.
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type...
std::string outputDataFileParams(MooseApp &app)
Output the (param path = value) pairs for each DataFileName parameter.
std::string outputLegacyInformation(MooseApp &app)
Output the legacy flag information.
unsigned int n_vars() const
virtual int timeStep()
Get the current time step.
std::vector< const T * > getActions()
Retrieve all actions in a specific type ordered by their names.
processor_id_type processor_id() const
std::string outputRelationshipManagerInformation(const MooseApp &app)
Output action RelationshipManager information.
void writeTimestepInformation(bool output_dt)
Prints the time step information for the screen output.
bool isRecovering() const
Whether or not this is a "recover" calculation.
bool _print_mesh_changed_info
Flag for printing mesh information when the mesh changes.
const ExecFlagType EXEC_FINAL
virtual Real getOutputTime()
Get the time that will be used for stream/file outputting.
void ErrorVector unsigned int
bool _last_message_ended_in_newline
virtual void outputReporters() override
Prints the Reporter values to the screen.
Meta-action for creating common output object parameters This action serves two purpose, first it adds common output object parameters.
void eraseSetValue(const std::string &names)
Un-assign, or unset a value.
virtual void outputScalarVariables() override
Populates the tables with scalar aux variables.
PetscInt _nonlinear_iter
Current non-linear iteration returned from PETSc.
Console(const InputParameters ¶meters)
Class constructor.
const ExecFlagType EXEC_INITIAL
virtual libMesh::System & system() override
Get the reference to the libMesh system.
std::string outputSolverSystemInformation(FEProblemBase &problem, const unsigned int solver_sys_num)
Output a solver system information.
static InputParameters validParams()