- input_filesThe input file for each App. If this parameter only contains one input file it will be used for all of the Apps. When using 'positions_from_file' it is also admissable to provide one input_file per file.
C++ Type:std::vector<FileName>
Description:The input file for each App. If this parameter only contains one input file it will be used for all of the Apps. When using 'positions_from_file' it is also admissable to provide one input_file per file.
FullSolveMultiApp
Performs a complete simulation during each execution.
Overview
The FullSolveMultiApp object is designed to perform a complete simulation every time it executes, thus it can be used for creating simulations that have portions that are on drastically different time scales.
Example Input File Syntax
The following code snippet demonstrates how to create a FullSolveMultiApp object.
[MultiApps]
[full_solve]
type = FullSolveMultiApp
# not setting app_type to use the same app type of master, i.e. MooseTestApp
execute_on = initial
positions = '0 0 0'
input_files = sub.i
[]
[]
(test/tests/multiapps/full_solve_multiapp/master.i)Input Parameters
- app_typeThe type of application to build (applications not registered can be loaded with dynamic libraries. Master application type will be used if not provided.
C++ Type:MooseEnum
Description:The type of application to build (applications not registered can be loaded with dynamic libraries. Master application type will be used if not provided.
- bounding_box_inflation0.01Relative amount to 'inflate' the bounding box of this MultiApp.
Default:0.01
C++ Type:double
Description:Relative amount to 'inflate' the bounding box of this MultiApp.
- bounding_box_padding0 0 0Additional padding added to the dimensions of the bounding box. The values are added to the x, y and z dimension respectively.
Default:0 0 0
C++ Type:libMesh::Point
Description:Additional padding added to the dimensions of the bounding box. The values are added to the x, y and z dimension respectively.
- cli_argsAdditional command line arguments to pass to the sub apps. If one set is provided the arguments are applied to all, otherwise there must be a set for each sub app.
C++ Type:std::vector<std::string>
Description:Additional command line arguments to pass to the sub apps. If one set is provided the arguments are applied to all, otherwise there must be a set for each sub app.
- cli_args_filesFile names that should be looked in for additional command line arguments to pass to the sub apps. Each line of a file is set to each sub app. If only one line is provided, it will be applied to all sub apps.
C++ Type:std::vector<FileName>
Description:File names that should be looked in for additional command line arguments to pass to the sub apps. Each line of a file is set to each sub app. If only one line is provided, it will be applied to all sub apps.
- clone_master_meshFalseTrue to clone master mesh and use it for this MultiApp.
Default:False
C++ Type:bool
Description:True to clone master mesh and use it for this MultiApp.
- execute_onTIMESTEP_BEGINThe list of flag(s) indicating when this object should be executed, the available options include NONE, INITIAL, LINEAR, NONLINEAR, TIMESTEP_END, TIMESTEP_BEGIN, FINAL, CUSTOM.
Default:TIMESTEP_BEGIN
C++ Type:ExecFlagEnum
Description:The list of flag(s) indicating when this object should be executed, the available options include NONE, INITIAL, LINEAR, NONLINEAR, TIMESTEP_END, TIMESTEP_BEGIN, FINAL, CUSTOM.
- global_time_offset0The time offset relative to the master application for the purpose of starting a subapp at different time from the master application. The global time will be ahead by the offset specified here.
Default:0
C++ Type:double
Description:The time offset relative to the master application for the purpose of starting a subapp at different time from the master application. The global time will be ahead by the offset specified here.
- ignore_solve_not_convergeFalseTrue to continue main app even if a sub app's solve does not converge.
Default:False
C++ Type:bool
Description:True to continue main app even if a sub app's solve does not converge.
- keep_full_output_historyFalseWhether or not to keep the full output history when this multiapp has multiple entries
Default:False
C++ Type:bool
Description:Whether or not to keep the full output history when this multiapp has multiple entries
- keep_solution_during_restoreFalseThis is useful when doing MultiApp coupling iterations. It takes the final solution from the previous coupling iterationand re-uses it as the initial guess for the next coupling iteration
Default:False
C++ Type:bool
Description:This is useful when doing MultiApp coupling iterations. It takes the final solution from the previous coupling iterationand re-uses it as the initial guess for the next coupling iteration
- library_nameThe file name of the library (*.la file) that will be dynamically loaded.
C++ Type:std::string
Description:The file name of the library (*.la file) that will be dynamically loaded.
- library_pathPath to search for dynamic libraries (please avoid committing absolute paths in addition to MOOSE_LIBRARY_PATH)
C++ Type:std::string
Description:Path to search for dynamic libraries (please avoid committing absolute paths in addition to MOOSE_LIBRARY_PATH)
- max_procs_per_app4294967295Maximum number of processors to give to each App in this MultiApp. Useful for restricting small solves to just a few procs so they don't get spread out
Default:4294967295
C++ Type:unsigned int
Description:Maximum number of processors to give to each App in this MultiApp. Useful for restricting small solves to just a few procs so they don't get spread out
- min_procs_per_app1Minimum number of processors to give to each App in this MultiApp. Useful for larger, distributed mesh solves.
Default:1
C++ Type:unsigned int
Description:Minimum number of processors to give to each App in this MultiApp. Useful for larger, distributed mesh solves.
- move_appsApps, designated by their 'numbers' starting with 0 corresponding to the order of the App positions, to be moved at move_time to move_positions
C++ Type:std::vector<unsigned int>
Description:Apps, designated by their 'numbers' starting with 0 corresponding to the order of the App positions, to be moved at move_time to move_positions
- move_positionsThe positions corresponding to each move_app.
C++ Type:std::vector<libMesh::Point>
Description:The positions corresponding to each move_app.
- move_time1.79769e+308The time at which Apps designated by move_apps are moved to move_positions.
Default:1.79769e+308
C++ Type:double
Description:The time at which Apps designated by move_apps are moved to move_positions.
- no_backup_and_restoreFalseTrue to turn off backup/restore for this multiapp. This is useful when doing steady-state Picard iterations where we want to use the solution of previous Picard iteration as the initial guess of the current Picard iteration
Default:False
C++ Type:bool
Description:True to turn off backup/restore for this multiapp. This is useful when doing steady-state Picard iterations where we want to use the solution of previous Picard iteration as the initial guess of the current Picard iteration
- output_in_positionFalseIf true this will cause the output from the MultiApp to be 'moved' by its position vector
Default:False
C++ Type:bool
Description:If true this will cause the output from the MultiApp to be 'moved' by its position vector
- positionsThe positions of the App locations. Each set of 3 values will represent a Point. This and 'positions_file' cannot be both supplied. If this and 'positions_file' are not supplied, a single position (0,0,0) will be used
C++ Type:std::vector<libMesh::Point>
Description:The positions of the App locations. Each set of 3 values will represent a Point. This and 'positions_file' cannot be both supplied. If this and 'positions_file' are not supplied, a single position (0,0,0) will be used
- positions_fileA filename that should be looked in for positions. Each set of 3 values in that file will represent a Point. This and 'positions' cannot be both supplied
C++ Type:std::vector<FileName>
Description:A filename that should be looked in for positions. Each set of 3 values in that file will represent a Point. This and 'positions' cannot be both supplied
- relaxation_factor1Fraction of newly computed value to keep.Set between 0 and 2.
Default:1
C++ Type:double
Description:Fraction of newly computed value to keep.Set between 0 and 2.
- reset_appsThe Apps that will be reset when 'reset_time' is hit. These are the App 'numbers' starting with 0 corresponding to the order of the App positions. Resetting an App means that it is destroyed and recreated, possibly modeling the insertion of 'new' material for that app.
C++ Type:std::vector<unsigned int>
Description:The Apps that will be reset when 'reset_time' is hit. These are the App 'numbers' starting with 0 corresponding to the order of the App positions. Resetting an App means that it is destroyed and recreated, possibly modeling the insertion of 'new' material for that app.
- reset_time1.79769e+308The time at which to reset Apps given by the 'reset_apps' parameter. Resetting an App means that it is destroyed and recreated, possibly modeling the insertion of 'new' material for that app.
Default:1.79769e+308
C++ Type:double
Description:The time at which to reset Apps given by the 'reset_apps' parameter. Resetting an App means that it is destroyed and recreated, possibly modeling the insertion of 'new' material for that app.
- transformed_postprocessorsList of subapp postprocessors to use coupling algorithm on during Multiapp coupling iterations
C++ Type:std::vector<PostprocessorName>
Description:List of subapp postprocessors to use coupling algorithm on during Multiapp coupling iterations
- transformed_variablesList of subapp variables to use coupling algorithm on during Multiapp coupling iterations
C++ Type:std::vector<std::string>
Description:List of subapp variables to use coupling algorithm on during Multiapp coupling iterations
Optional Parameters
- control_tagsAdds user-defined labels for accessing object parameters via control logic.
C++ Type:std::vector<std::string>
Description:Adds user-defined labels for accessing object parameters via control logic.
- enableTrueSet the enabled status of the MooseObject.
Default:True
C++ Type:bool
Description:Set the enabled status of the MooseObject.
- use_displaced_meshFalseWhether or not this object should use the displaced mesh for computation. Note that in the case this is true but no displacements are provided in the Mesh block the undisplaced mesh will still be used.
Default:False
C++ Type:bool
Description:Whether or not this object should use the displaced mesh for computation. Note that in the case this is true but no displacements are provided in the Mesh block the undisplaced mesh will still be used.
Advanced Parameters
Input Files
- (modules/stochastic_tools/test/tests/multiapps/commandline_control/master_wrong_multiapp_type.i)
- (test/tests/controls/restrict_exec_flag/exec_flag_error.i)
- (test/tests/multiapps/command_line/master.i)
- (test/tests/transfers/multiapp_copy_transfer/second_lagrange_from_sub/master.i)
- (test/tests/restart/restart_subapp_not_master/two_step_solve_master.i)
- (test/tests/misc/check_error/multi_master.i)
- (test/tests/transfers/multiapp_copy_transfer/array_variable_transfer/master.i)
- (modules/level_set/test/tests/transfers/copy_solution/master.i)
- (test/tests/transfers/multiapp_copy_transfer/errors/master.i)
- (test/tests/multiapps/secant/steady_main.i)
- (test/tests/multiapps/secant_postprocessor/steady_main.i)
- (test/tests/transfers/multiapp_copy_transfer/third_monomial_to_sub/master.i)
- (test/tests/outputs/perf_graph/multi_app/master_full.i)
- (test/tests/transfers/multiapp_copy_transfer/tagged_solution/main.i)
- (test/tests/transfers/multiapp_conservative_transfer/master_power_density.i)
- (test/tests/multiapps/initial_failure/master.i)
- (test/tests/transfers/multiapp_high_order_variable_transfer/master_L2_Lagrange_conservative.i)
- (test/tests/multiapps/steffensen/steady_main.i)
- (test/tests/transfers/multiapp_copy_transfer/constant_monomial_to_sub/master.i)
- (test/tests/multiapps/picard/pseudo_transient_picard_master.i)
- (test/tests/multiapps/picard/steady_picard_master.i)
- (test/tests/transfers/multiapp_conservative_transfer/primary_negative_adjuster.i)
- (test/tests/restart/restart_transient_from_steady/steady_with_2subs.i)
- (test/tests/multiapps/picard/steady_custom_picard_master.i)
- (test/tests/multiapps/command_line/master_common.i)
- (test/tests/multiapps/picard_multilevel/fullsolve_multilevel/master.i)
- (test/tests/transfers/multiapp_copy_transfer/linear_lagrange_from_sub/master.i)
- (test/tests/multiapps/picard_multilevel/2level_picard/mutilevel_app.i)
- (test/tests/transfers/multiapp_projection_transfer/high_order_master.i)
- (test/tests/problems/eigen_problem/eigensolvers/ne_coupled_picard.i)
- (test/tests/transfers/multiapp_copy_transfer/linear_lagrange_to_sub/master.i)
- (test/tests/transfers/multiapp_conservative_transfer/primary_skipped_adjuster.i)
- (test/tests/multiapps/picard/picard_custom_postprocessor.i)
- (test/tests/multiapps/picard_postprocessor/steady_main.i)
- (test/tests/transfers/multiapp_copy_transfer/multivariable_copy/master.i)
- (test/tests/transfers/multiapp_copy_transfer/second_lagrange_to_sub/master.i)
- (modules/combined/test/tests/restart-transient-from-ss-with-stateful/master_ss.i)
- (test/tests/multiapps/initial_transfer/master.i)
- (test/tests/transfers/multiapp_copy_transfer/third_monomial_from_sub/master.i)
- (test/tests/multiapps/full_solve_multiapp_reset/master.i)
- (test/tests/multiapps/command_line/master_wrong_size.i)
- (test/tests/vectorpostprocessors/csv_reader/transfer/master.i)
- (test/tests/transfers/multiapp_high_order_variable_transfer/master_L2_Lagrange.i)
- (test/tests/transfers/multiapp_high_order_variable_transfer/master_L2_Lagrange_userobject.i)
- (test/tests/problems/eigen_problem/eigensolvers/ne_coupled_picard_subT.i)
- (test/tests/transfers/multiapp_conservative_transfer/master_nearest_point.i)
- (test/tests/transfers/multiapp_transfer_transformation/transfer_transformation.i)
- (test/tests/transfers/from_full_solve/master.i)
- (test/tests/transfers/multiapp_nearest_node_transfer/target_boundary_master.i)
- (modules/stochastic_tools/test/tests/multiapps/batch_commandline_control/master_wrong_size.i)
- (test/tests/transfers/multiapp_conservative_transfer/master_conservative_transfer.i)
- (modules/stochastic_tools/test/tests/multiapps/batch_commandline_control/master_wrong_num_params.i)
- (test/tests/multiapps/full_solve_multiapp/master_eigen.i)
- (test/tests/multiapps/full_solve_multiapp/master.i)
- (test/tests/multiapps/steffensen_postprocessor/steady_main.i)
- (test/tests/transfers/multiapp_nearest_node_transfer/source_boundary_master.i)
- (test/tests/transfers/multiapp_copy_transfer/constant_monomial_from_sub/master.i)
- (test/tests/restart/restart_transient_from_steady/steady_with_sub.i)