#include <SamplerFullSolveMultiApp.h>
Public Types | |
typedef DataFileName | DataFileParameterType |
Public Member Functions | |
SamplerFullSolveMultiApp (const InputParameters ¶meters) | |
virtual bool | solveStep (Real dt, Real target_time, bool auto_advance=true) override |
virtual void | preTransfer (Real dt, Real target_time) override |
virtual void | initialSetup () override |
virtual void | finalize () override |
virtual void | postExecute () override |
virtual void | backup () override |
virtual void | restore (bool force=true) override |
virtual void | preExecute () |
void | setupPositions () |
virtual void | createLocalApp (const unsigned int i) |
virtual void | incrementTStep (Real) |
virtual void | finishStep (bool=false) |
virtual bool | needsRestoration () |
virtual Executioner * | getExecutioner (unsigned int app) |
virtual BoundingBox | getBoundingBox (unsigned int app, bool displaced_mesh, const MultiAppCoordTransform *coord_transform=nullptr) |
FEProblemBase & | problemBase () |
FEProblemBase & | appProblemBase (unsigned int app) |
FEProblem & | appProblem (unsigned int app) |
const UserObject & | appUserObjectBase (unsigned int app, const std::string &name) |
Real | appPostprocessorValue (unsigned int app, const std::string &name) |
virtual NumericVector< Number > & | appTransferVector (unsigned int app, std::string var_name) |
unsigned int | numGlobalApps () const |
unsigned int | numLocalApps () |
unsigned int | firstLocalApp () |
bool | isFirstLocalRank () const |
bool | hasApp () |
bool | hasLocalApp (unsigned int global_app) const |
MooseApp * | localApp (unsigned int local_app) |
const Point & | position (unsigned int app) const |
virtual void | resetApp (unsigned int global_app, Real time=0.0) |
virtual void | moveApp (unsigned int global_app, Point p) |
virtual void | parentOutputPositionChanged () |
MPI_Comm & | comm () |
const Parallel::Communicator & | comm () const |
bool | isRootProcessor () |
bool | usingPositions () const |
bool | runningInPosition () const |
void | addAssociatedTransfer (MultiAppTransfer &transfer) |
void | setAppOutputFileBase () |
virtual bool | enabled () const |
std::shared_ptr< MooseObject > | getSharedPtr () |
std::shared_ptr< const MooseObject > | getSharedPtr () const |
MooseApp & | getMooseApp () const |
const std::string & | type () const |
virtual const std::string & | name () const |
std::string | typeAndName () const |
std::string | errorPrefix (const std::string &error_type) const |
void | callMooseError (std::string msg, const bool with_prefix) const |
MooseObjectParameterName | uniqueParameterName (const std::string ¶meter_name) const |
const InputParameters & | parameters () const |
MooseObjectName | uniqueName () const |
const T & | getParam (const std::string &name) const |
std::vector< std::pair< T1, T2 > > | getParam (const std::string ¶m1, const std::string ¶m2) const |
const T & | getRenamedParam (const std::string &old_name, const std::string &new_name) const |
T | getCheckedPointerParam (const std::string &name, const std::string &error_string="") const |
bool | isParamValid (const std::string &name) const |
bool | isParamSetByUser (const std::string &nm) const |
void | paramError (const std::string ¶m, Args... args) const |
void | paramWarning (const std::string ¶m, Args... args) const |
void | paramInfo (const std::string ¶m, Args... args) const |
void | connectControllableParams (const std::string ¶meter, const std::string &object_type, const std::string &object_name, const std::string &object_parameter) const |
void | mooseError (Args &&... args) const |
void | mooseErrorNonPrefixed (Args &&... args) const |
void | mooseDocumentedError (const std::string &repo_name, const unsigned int issue_num, Args &&... args) const |
void | mooseWarning (Args &&... args) const |
void | mooseWarningNonPrefixed (Args &&... args) const |
void | mooseDeprecated (Args &&... args) const |
void | mooseInfo (Args &&... args) const |
std::string | getDataFileName (const std::string ¶m) const |
std::string | getDataFileNameByName (const std::string &name, const std::string *param=nullptr) const |
virtual void | timestepSetup () |
virtual void | jacobianSetup () |
virtual void | residualSetup () |
virtual void | subdomainSetup () |
virtual void | customSetup (const ExecFlagType &) |
const ExecFlagEnum & | getExecuteOnEnum () const |
PerfGraph & | perfGraph () |
processor_id_type | n_processors () const |
processor_id_type | processor_id () const |
T & | getSampler (const std::string &name) |
Sampler & | getSampler (const std::string &name) |
T & | getSamplerByName (const SamplerName &name) |
Sampler & | getSamplerByName (const SamplerName &name) |
Static Public Member Functions | |
static InputParameters | validParams () |
static std::string | sampledCommandLineArgs (const std::vector< Real > &row, const std::vector< std::string > &full_args_name) |
Helper for inserting row data into commandline arguments Used here and in SamplerTransientMultiApp. More... | |
static void | execBatchTransfers (const std::vector< std::shared_ptr< StochasticToolsTransfer >> &transfers, dof_id_type global_row_index, const std::vector< Real > &row_data, Transfer::DIRECTION direction, bool verbose, const ConsoleStream &console) |
Helper for executing transfers when doing batch stochastic simulations. More... | |
static void | transformBoundingBox (BoundingBox &box, const MultiAppCoordTransform &transform) |
Public Attributes | |
const ConsoleStream | _console |
Protected Member Functions | |
virtual void | showStatusMessage (unsigned int i) const override |
Override to avoid 'solve converged' message and print when processors are finished. More... | |
virtual std::string | getCommandLineArgsParamHelper (unsigned int local_app) override |
Override to allow for batch mode to get correct cli_args. More... | |
void | setAppOutputFileBase (unsigned int index) |
virtual std::vector< std::string > | cliArgs () const |
virtual void | fillPositions () |
void | readCommandLineArguments () |
void | createApp (unsigned int i, Real start_time) |
void | buildComm () |
unsigned int | globalAppToLocal (unsigned int global_app) |
virtual void | preRunInputFile () |
void | init (unsigned int num_apps, bool batch_mode=false) |
void | init (unsigned int num_apps, const LocalRankConfig &config) |
void | createApps () |
void | keepSolutionDuringRestore (bool keep_solution_during_restore) |
T & | declareRestartableData (const std::string &data_name, Args &&... args) |
ManagedValue< T > | declareManagedRestartableDataWithContext (const std::string &data_name, void *context, Args &&... args) |
const T & | getRestartableData (const std::string &data_name) const |
T & | declareRestartableDataWithContext (const std::string &data_name, void *context, Args &&... args) |
T & | declareRecoverableData (const std::string &data_name, Args &&... args) |
T & | declareRestartableDataWithObjectName (const std::string &data_name, const std::string &object_name, Args &&... args) |
T & | declareRestartableDataWithObjectNameWithContext (const std::string &data_name, const std::string &object_name, void *context, Args &&... args) |
std::string | restartableName (const std::string &data_name) const |
PerfID | registerTimedSection (const std::string §ion_name, const unsigned int level) const |
PerfID | registerTimedSection (const std::string §ion_name, const unsigned int level, const std::string &live_message, const bool print_dots=true) const |
std::string | timedSectionName (const std::string §ion_name) const |
const ReporterName & | getReporterName (const std::string ¶m_name) const |
virtual void | addReporterDependencyHelper (const ReporterName &) |
const T & | getReporterValue (const std::string ¶m_name, const std::size_t time_index=0) |
const T & | getReporterValue (const std::string ¶m_name, ReporterMode mode, const std::size_t time_index=0) |
const T & | getReporterValue (const std::string ¶m_name, const std::size_t time_index=0) |
const T & | getReporterValue (const std::string ¶m_name, ReporterMode mode, const std::size_t time_index=0) |
const T & | getReporterValueByName (const ReporterName &reporter_name, const std::size_t time_index=0) |
const T & | getReporterValueByName (const ReporterName &reporter_name, ReporterMode mode, const std::size_t time_index=0) |
const T & | getReporterValueByName (const ReporterName &reporter_name, const std::size_t time_index=0) |
const T & | getReporterValueByName (const ReporterName &reporter_name, ReporterMode mode, const std::size_t time_index=0) |
bool | hasReporterValue (const std::string ¶m_name) const |
bool | hasReporterValue (const std::string ¶m_name) const |
bool | hasReporterValue (const std::string ¶m_name) const |
bool | hasReporterValue (const std::string ¶m_name) const |
bool | hasReporterValueByName (const ReporterName &reporter_name) const |
bool | hasReporterValueByName (const ReporterName &reporter_name) const |
bool | hasReporterValueByName (const ReporterName &reporter_name) const |
bool | hasReporterValueByName (const ReporterName &reporter_name) const |
Static Protected Member Functions | |
static std::string | getMultiAppName (const std::string &base_name, dof_id_type index, dof_id_type total) |
Private Member Functions | |
bool | solveStepBatch (Real dt, Real target_time, bool auto_advance=true) |
Helper method for running in mode='batch'. More... | |
void | updateRowData (dof_id_type local_index) |
Helper function for updating _row_data and _local_row_index. More... | |
std::vector< std::shared_ptr< StochasticToolsTransfer > > | getActiveStochasticToolsTransfers (Transfer::DIRECTION direction) |
Helper for getting StochasticToolsTransfer objects. More... | |
Private Attributes | |
bool | _solved_once |
dof_id_type | _number_of_sampler_rows |
std::vector< Real > | _row_data |
Current row of data updated by updateRowData. Used by transfers and setting command line args. More... | |
dof_id_type | _local_row_index = std::numeric_limits<dof_id_type>::max() |
Current local index representing _row_data. More... | |
const std::vector< bool > * | _should_run = nullptr |
Reporter value determining whether the sub-app should be run for a certain sample. More... | |
Definition at line 21 of file SamplerFullSolveMultiApp.h.
SamplerFullSolveMultiApp::SamplerFullSolveMultiApp | ( | const InputParameters & | parameters | ) |
Definition at line 54 of file SamplerFullSolveMultiApp.C.
|
static |
Helper for executing transfers when doing batch stochastic simulations.
transfers | A vector of transfers to execute |
global_row_index | The global row index of the run |
row_data | The current sampler row of data for the transfer to utilize |
type | The current execution flag, used for info printing |
direction | The direction of the transfer, used for info printing |
verbose | Whether or not print information about the transfer |
console | The console stream to output to |
Definition at line 244 of file SamplerFullSolveMultiApp.C.
Referenced by SamplerTransientMultiApp::solveStepBatch(), and solveStepBatch().
|
private |
Helper for getting StochasticToolsTransfer objects.
Definition at line 324 of file SamplerFullSolveMultiApp.C.
Referenced by solveStepBatch().
|
overrideprotectedvirtual |
Override to allow for batch mode to get correct cli_args.
Reimplemented from FullSolveMultiApp.
Definition at line 339 of file SamplerFullSolveMultiApp.C.
Reimplemented from FullSolveMultiApp.
Reimplemented in PODFullSolveMultiApp.
Definition at line 85 of file SamplerFullSolveMultiApp.C.
Referenced by PODFullSolveMultiApp::preTransfer().
|
static |
Helper for inserting row data into commandline arguments Used here and in SamplerTransientMultiApp.
How it works:
Definition at line 388 of file SamplerFullSolveMultiApp.C.
Referenced by SamplerParameterTransfer::execute(), SamplerParameterTransfer::executeToMultiapp(), SamplerTransientMultiApp::getCommandLineArgsParamHelper(), and getCommandLineArgsParamHelper().
Override to avoid 'solve converged' message and print when processors are finished.
Reimplemented from FullSolveMultiApp.
Definition at line 289 of file SamplerFullSolveMultiApp.C.
|
overridevirtual |
Reimplemented from FullSolveMultiApp.
Reimplemented in PODFullSolveMultiApp.
Definition at line 109 of file SamplerFullSolveMultiApp.C.
Referenced by PODFullSolveMultiApp::solveStep().
|
private |
Helper method for running in mode='batch'.
Definition at line 129 of file SamplerFullSolveMultiApp.C.
Referenced by solveStep().
|
private |
Helper function for updating _row_data and _local_row_index.
This allows multiple calls to the same row index
Definition at line 361 of file SamplerFullSolveMultiApp.C.
Referenced by getCommandLineArgsParamHelper(), and solveStepBatch().
|
static |
Definition at line 20 of file SamplerFullSolveMultiApp.C.
Referenced by PODFullSolveMultiApp::validParams().
|
protected |
Counter for extracting command line arguments in batch mode.
Definition at line 76 of file SamplerFullSolveMultiApp.h.
Referenced by PODFullSolveMultiApp::computeResidualBatch(), getCommandLineArgsParamHelper(), showStatusMessage(), and solveStepBatch().
|
private |
Current local index representing _row_data.
Definition at line 108 of file SamplerFullSolveMultiApp.h.
Referenced by updateRowData().
|
protected |
The Sup-application solve mode.
Definition at line 73 of file SamplerFullSolveMultiApp.h.
Referenced by PODFullSolveMultiApp::computeResidualBatch(), getCommandLineArgsParamHelper(), preTransfer(), PODFullSolveMultiApp::preTransfer(), SamplerFullSolveMultiApp(), showStatusMessage(), solveStep(), PODFullSolveMultiApp::solveStep(), and solveStepBatch().
|
private |
Definition at line 103 of file SamplerFullSolveMultiApp.h.
Referenced by preTransfer(), SamplerFullSolveMultiApp(), showStatusMessage(), and solveStepBatch().
|
private |
Current row of data updated by updateRowData. Used by transfers and setting command line args.
Definition at line 106 of file SamplerFullSolveMultiApp.h.
Referenced by getCommandLineArgsParamHelper(), preTransfer(), solveStepBatch(), and updateRowData().
|
protected |
Sampler to utilize for creating MultiApps.
Definition at line 70 of file SamplerFullSolveMultiApp.h.
Referenced by PODFullSolveMultiApp::computeResidualBatch(), PODFullSolveMultiApp::PODFullSolveMultiApp(), preTransfer(), PODFullSolveMultiApp::preTransfer(), SamplerFullSolveMultiApp(), solveStep(), solveStepBatch(), and updateRowData().
|
private |
Reporter value determining whether the sub-app should be run for a certain sample.
Definition at line 111 of file SamplerFullSolveMultiApp.h.
Referenced by preTransfer(), and solveStepBatch().
|
private |
Definition at line 100 of file SamplerFullSolveMultiApp.h.
Referenced by preTransfer(), solveStep(), and solveStepBatch().