10 #include "libmesh/petsc_macro.h" 11 #include "libmesh/libmesh_config.h" 25 #include "hit/parse.h" 39 registerExecFlag(
"MULTIAPP_FIXED_POINT_ITERATION_END");
41 registerDefaultExecFlag(
"MULTIAPP_FIXED_POINT_END");
43 registerDefaultExecFlag(
"MULTIAPP_FIXED_POINT_BEGIN");
45 registerDefaultExecFlag(
"MULTIAPP_FIXED_POINT_CONVERGENCE");
47 registerDefaultExecFlag(
"MULTISYSTEM_FIXED_POINT_CONVERGENCE");
59 #ifdef LIBMESH_ENABLE_AMR 74 registerAppDataFilePath(
"moose");
75 registerRepository(
"moose",
"github.com/idaholab/moose");
84 R
"(@article{harbour2025moose, 85 title = {4.0 {MOOSE}: Enabling massively parallel Multiphysics simulation}, 86 journal = {{SoftwareX}}, 91 doi = {https://doi.org/10.1016/j.softx.2025.102264}, 92 url = {https://www.sciencedirect.com/science/article/pii/S2352711025002316}, 93 author = {Logan Harbour and Guillaume Giudicelli and Alexander D. Lindsay and Peter German and Joshua Hansel and Casey Icenhour and Mengnan Li and Jason M. Miller and Roy H. Stogner and Patrick Behne and Daniel Yankura and Zachary M. Prince and Corey DeChant and Daniel Schwen and Benjamin W. Spencer and Mauricio Tano and Namjae Choi and Yaqi Wang and Max Nezdyur and Yinbin Miao and Tianchen Hu and Shikhar Kumar and Christopher Matthews and Brandon Langley and Nuno Nobre and Alexander Blair and Chris MacMackin and Henrique Bergallo Rocha and Edward Palmer and Jesse Carter and J{\"o}rg Meier and Andrew E. Slaughter and David Andr{\v{s}} and Robert W. Carlsen and Fande Kong and Derek R. Gaston and Cody J. Permann}, 101 R
"(@article{libMeshPaper, 102 author = {B.~S.~Kirk and J.~W.~Peterson and R.~H.~Stogner and G.~F.~Carey}, 103 title = {{\texttt{libMesh}: A C++ Library for Parallel Adaptive Mesh 104 Refinement/Coarsening Simulations}}, 105 journal = {Engineering with Computers}, 110 url={http://dx.doi.org/10.1007/s00366-006-0049-3} 113 #ifdef MOOSE_MFEM_ENABLED 118 R
"(@article{mfem-2024, 119 title = {High-Performance Finite Elements with {MFEM}}, 120 author = {J. Andrej and N. Atallah and J.-P. B{\"a}cker and J.-S. Camier and D. Copeland and V. Dobrev and Y. Dudouit and T. Duswald and B. Keith and D. Kim and T. Kolev and B. Lazarov and K. Mittal and W. Pazner and S. Petrides and S. Shiraiwa and M. Stowell and V. Tomov}, 121 journal = {The International Journal of High Performance Computing Applications}, 126 publisher = {SAGE Publications Sage UK: London, England}, 156 registerMooseObjectTask(
"create_problem",
Problem,
false);
157 registerMooseObjectTask(
"setup_executioner",
Executioner,
false);
158 registerMooseObjectTask(
"read_executor",
Executor,
false);
159 registerTask(
"add_executor",
true);
162 registerTask(
"init_physics",
false);
163 registerTask(
"init_component_physics",
false);
164 registerTask(
"meta_action_component",
false);
165 registerTask(
"setup_component",
false);
167 registerTask(
"list_component",
false);
171 registerMooseObjectTask(
"determine_system_type",
Executioner,
true);
173 registerMooseObjectTask(
"setup_mesh",
MooseMesh,
false);
174 registerMooseObjectTask(
"set_mesh_base",
MooseMesh,
false);
175 registerMooseObjectTask(
"init_mesh",
MooseMesh,
false);
176 registerMooseObjectTask(
"add_mesh_generator",
MeshGenerator,
false);
177 registerTask(
"create_added_mesh_generators",
true);
178 registerMooseObjectTask(
"append_mesh_generator",
MeshGenerator,
false);
180 registerMooseObjectTask(
"add_kernel",
Kernel,
false);
188 registerMooseObjectTask(
"add_elemental_field_variable",
MooseVariableBase,
false);
191 registerMooseObjectTask(
"add_nodal_kernel",
NodalKernel,
false);
193 registerMooseObjectTask(
"add_functor_material",
FunctorMaterial,
false);
194 registerMooseObjectTask(
"add_material",
MaterialBase,
false);
196 registerMooseObjectTask(
"add_materials_physics",
FunctorMaterial,
false);
197 appendMooseObjectTask (
"add_materials_physics",
MaterialBase);
201 registerMooseObjectTask(
"add_function",
Function,
false);
203 registerMooseObjectTask(
"add_distribution",
Distribution,
false);
204 registerMooseObjectTask(
"add_sampler",
Sampler,
false);
206 registerMooseObjectTask(
"add_aux_kernel",
AuxKernel,
false);
210 registerMooseObjectTask(
"add_bound", Bounds,
false);
212 registerMooseObjectTask(
"add_scalar_kernel",
ScalarKernel,
false);
213 registerMooseObjectTask(
"add_aux_scalar_kernel",
AuxScalarKernel,
false);
214 registerMooseObjectTask(
"add_dirac_kernel",
DiracKernel,
false);
216 registerMooseObjectTask(
"add_dg_kernel",
DGKernel,
false);
217 registerMooseObjectTask(
"add_fv_kernel",
FVKernel,
false);
219 registerMooseObjectTask(
"add_linear_fv_kernel",
LinearFVKernel,
false);
223 registerMooseObjectTask(
"add_interface_kernel",
InterfaceKernel,
false);
225 registerMooseObjectTask(
"add_constraint",
Constraint,
false);
226 registerMooseObjectTask(
"add_hybridized_kernel",
HDGKernel,
false);
227 registerMooseObjectTask(
"add_hybridized_integrated_bc", HDGIntegratedBC,
false);
236 registerMooseObjectTask(
"add_damper",
Damper,
false);
237 registerMooseObjectTask(
"setup_predictor",
Predictor,
false);
238 registerMooseObjectTask(
"add_time_steppers",
TimeStepper,
false);
239 registerMooseObjectTask(
"add_time_stepper",
TimeStepper,
false);
240 registerTask (
"compose_time_stepper",
true);
241 registerMooseObjectTask(
"setup_time_integrators",
TimeIntegrator,
false);
242 registerMooseObjectTask(
"setup_time_integrator",
TimeIntegrator,
false);
243 registerMooseObjectTask(
"add_convergence",
Convergence,
false);
246 registerMooseObjectTask(
"add_field_split",
Split,
false);
248 registerMooseObjectTask(
"add_mesh_division",
MeshDivision,
false);
249 registerMooseObjectTask(
"add_user_object",
UserObject,
false);
252 appendDeprecatedMooseObjectTask(
"add_user_object", Corrector);
253 registerMooseObjectTask(
"add_corrector", Corrector,
false);
254 appendDeprecatedMooseObjectTask(
"add_user_object", MeshModifier);
255 registerMooseObjectTask(
"add_mesh_modifier", MeshModifier,
false);
257 registerMooseObjectTask(
"add_postprocessor",
Postprocessor,
false);
259 registerMooseObjectTask(
"add_reporter",
Reporter,
false);
261 registerMooseObjectTask(
"add_positions",
Positions,
false);
262 registerMooseObjectTask(
"add_times",
Times,
false);
264 registerMooseObjectTask(
"add_indicator",
Indicator,
false);
265 registerMooseObjectTask(
"add_marker",
Marker,
false);
267 registerMooseObjectTask(
"add_multi_app",
MultiApp,
false);
268 registerMooseObjectTask(
"add_transfer",
Transfer,
false);
270 registerMooseObjectTask(
"add_output",
Output,
false);
272 registerMooseObjectTask(
"add_control",
Control,
false);
273 registerMooseObjectTask(
"add_chain_control",
ChainControl,
false);
278 registerTask(
"dynamic_object_registration",
false);
279 registerTask(
"common_output",
true);
280 registerTask(
"setup_recover_file_base",
true);
281 registerTask(
"recover_meta_data",
true);
283 registerTask(
"add_bounds_vectors",
false);
284 registerTask(
"add_periodic_bc",
false);
285 registerTask(
"add_aux_variable",
false);
286 registerTask(
"add_external_aux_variables",
true);
287 registerTask(
"add_variable",
false);
288 registerTask(
"add_mortar_variable",
false);
290 registerTask(
"execute_mesh_generators",
true);
291 registerTask(
"uniform_refine_mesh",
false);
292 registerTask(
"prepare_mesh",
false);
293 registerTask(
"delete_remote_elements_after_late_geometric_ghosting",
false);
294 registerTask(
"setup_mesh_complete",
true);
295 registerTask(
"post_mesh_prepared",
false);
296 registerTask(
"add_geometric_rm",
false);
297 registerTask(
"attach_geometric_rm",
true);
298 registerTask(
"attach_geometric_rm_final",
true);
300 registerTask(
"init_displaced_problem",
false);
302 registerTask(
"add_algebraic_rm",
false);
303 registerTask(
"attach_algebraic_rm",
true);
304 registerTask(
"add_coupling_rm",
false);
305 registerTask(
"attach_coupling_rm",
true);
306 registerTask(
"init_problem",
true);
307 registerTask(
"check_copy_nodal_vars",
true);
308 registerTask(
"copy_nodal_vars",
true);
309 registerTask(
"copy_nodal_aux_vars",
true);
310 registerTask(
"copy_vars_physics",
false);
311 registerTask(
"setup_postprocessor_data",
false);
312 registerTask(
"setup_time_steppers",
true);
314 registerTask(
"setup_dampers",
true);
315 registerTask(
"check_integrity",
true);
316 registerTask(
"resolve_optional_materials",
true);
317 registerTask(
"check_integrity_early",
true);
318 registerTask(
"check_integrity_early_physics",
false);
319 registerTask(
"setup_quadrature",
true);
320 registerTask(
"create_tagged_matrices",
true);
322 registerTask(
"mesh_modifiers",
false);
325 registerTask(
"no_action",
false);
326 registerTask(
"set_global_params",
false);
327 registerTask(
"setup_adaptivity",
false);
328 registerTask(
"meta_action",
false);
329 registerTask(
"setup_residual_debug",
false);
330 registerTask(
"setup_oversampling",
false);
331 registerTask(
"deprecated_block",
false);
332 registerTask(
"set_adaptivity_options",
false);
333 registerTask(
"add_mortar_interface",
false);
334 registerTask(
"coupling_functor_check",
true);
335 registerTask(
"add_master_action_material",
false);
336 registerTask(
"setup_projected_properties",
false);
337 registerTask(
"create_application_block",
false);
340 registerTask(
"setup_function_complete",
false);
341 registerTask(
"setup_variable_complete",
false);
342 registerTask(
"setup_executioner_complete",
false);
343 registerTask(
"ready_to_init",
true);
346 registerTask(
"add_output_aux_variables",
true);
347 registerTask(
"check_output",
true);
348 registerTask(
"declare_late_reporters",
true);
350 registerTask(
"create_problem_default",
true);
351 registerTask(
"create_problem_custom",
false);
352 registerTask(
"create_problem_complete",
false);
354 registerTask(
"add_default_nonlinear_convergence",
true);
355 registerTask(
"add_default_multiapp_fixed_point_convergence",
true);
356 registerTask(
"add_default_steady_state_convergence",
true);
358 registerTask(
"chain_control_setup",
true);
359 registerTask(
"start_webservercontrol",
true);
362 registerTask(
"auto_checkpoint_action",
true);
378 "(meta_action_component)" 379 "(dynamic_object_registration)" 381 "(set_global_params)" 382 "(setup_recover_file_base)" 383 "(check_copy_nodal_vars)" 387 "(add_mesh_generator)" 388 "(create_added_mesh_generators)" 389 "(append_mesh_generator)" 390 "(execute_mesh_generators)" 391 "(recover_meta_data)" 393 "(attach_geometric_rm)" 396 "(add_mortar_interface)" 397 "(uniform_refine_mesh)" 398 "(setup_mesh_complete)" 399 "(post_mesh_prepared)" 400 "(determine_system_type)" 402 "(create_problem_custom)" 403 "(create_problem_default)" 404 "(create_problem_complete)" 405 "(init_displaced_problem)" 408 "(init_component_physics)" 410 "(setup_postprocessor_data)" 411 "(setup_time_integrator, setup_time_integrators)" 412 "(setup_executioner)" 413 "(setup_executioner_complete)" 417 "(check_integrity_early)" 419 "(add_aux_variable, add_variable, add_elemental_field_variable," 420 " add_external_aux_variables)" 421 "(add_variables_physics)" 422 "(add_mortar_variable)" 423 "(setup_variable_complete)" 424 "(check_integrity_early_physics)" 427 "(add_default_nonlinear_convergence," 428 " add_default_multiapp_fixed_point_convergence," 429 " add_default_steady_state_convergence)" 432 "(add_user_object, add_corrector, add_mesh_modifier)" 434 "(add_preconditioning)" 435 "(create_tagged_matrices)" 438 "(setup_function_complete)" 440 "(set_adaptivity_options)" 441 "(add_ic, add_fv_ic)" 445 "(add_time_stepper, add_time_steppers)" 446 "(compose_time_stepper)" 447 "(setup_time_steppers)" 450 "(setup_residual_debug)" 451 "(add_bounds_vectors)" 452 "(add_mesh_division)" 455 "(copy_nodal_vars, copy_nodal_aux_vars, copy_vars_physics)" 457 "(add_master_action_material)" 458 "(add_functor_material)" 459 "(add_materials_physics)" 460 "(setup_projected_properties)" 461 "(add_output_aux_variables)" 463 "(auto_checkpoint_action)" 464 "(add_postprocessor)" 465 "(add_vector_postprocessor)" 468 "(declare_late_reporters)" 469 "(add_aux_kernel, add_bc, add_damper, add_dirac_kernel, add_kernel," 470 " add_nodal_kernel, add_dg_kernel, add_fv_kernel, add_interpolation_method," 471 " add_linear_fv_kernel," 472 " add_fv_bc, add_linear_fv_bc, add_fv_ik, add_interface_kernel," 473 " add_scalar_kernel, add_aux_scalar_kernel, add_indicator, add_marker," 474 " add_bound, add_hybridized_kernel, add_hybridized_integrated_bc)" 475 "(resolve_optional_materials)" 478 "(attach_geometric_rm_final)" 479 "(attach_algebraic_rm)" 480 "(attach_coupling_rm)" 481 "(coupling_functor_check)" 482 "(delete_remote_elements_after_late_geometric_ghosting)" 484 "(add_control, add_chain_control)" 485 "(chain_control_setup)" 486 "(start_webservercontrol)" 489 "(create_application_block)");
492 #ifdef MOOSE_MFEM_ENABLED 493 registerTask(
"add_mfem_problem_operator",
true);
494 addTaskDependency(
"add_mfem_problem_operator",
"init_mesh");
495 addTaskDependency(
"add_variable",
"add_mfem_problem_operator");
496 addTaskDependency(
"add_aux_variable",
"add_mfem_problem_operator");
497 addTaskDependency(
"add_elemental_field_variable",
"add_mfem_problem_operator");
498 addTaskDependency(
"add_bc",
"add_mfem_problem_operator");
499 addTaskDependency(
"add_kernel",
"add_mfem_problem_operator");
502 registerMooseObjectTask(
"add_mfem_submeshes",
MFEMSubMesh,
false);
503 addTaskDependency(
"add_mfem_submeshes",
"create_problem_complete");
509 registerMooseObjectTask(
"add_mfem_fespaces",
MFEMFESpace,
false);
510 appendMooseObjectTask(
"add_mfem_fespaces", MFEMFECollection);
511 addTaskDependency(
"add_mfem_fespaces",
"add_mfem_submeshes");
512 addTaskDependency(
"add_variable",
"add_mfem_fespaces");
513 addTaskDependency(
"add_aux_variable",
"add_mfem_fespaces");
514 addTaskDependency(
"add_elemental_field_variable",
"add_mfem_fespaces");
515 addTaskDependency(
"add_kernel",
"add_mfem_fespaces");
518 registerMooseObjectTask(
"add_mfem_complex_kernel_components",
Kernel,
false);
519 registerMooseObjectTask(
"add_mfem_complex_bc_components",
BoundaryCondition,
false);
520 addTaskDependency(
"add_mfem_complex_kernel_components",
"add_mfem_fespaces");
521 addTaskDependency(
"add_mfem_complex_bc_components",
"add_mfem_fespaces");
522 addTaskDependency(
"add_mfem_complex_kernel_components",
"add_kernel");
523 addTaskDependency(
"add_mfem_complex_bc_components",
"add_bc");
526 registerTask(
"set_mesh_fe_space",
true);
527 addTaskDependency(
"set_mesh_fe_space",
"add_variable");
528 addTaskDependency(
"set_mesh_fe_space",
"init_mesh");
532 addTaskDependency(
"add_mfem_preconditioner",
"add_mfem_problem_operator");
533 addTaskDependency(
"add_mfem_preconditioner",
"add_variable");
537 addTaskDependency(
"add_mfem_solver",
"add_mfem_preconditioner");
538 addTaskDependency(
"add_mfem_solver",
"add_mfem_problem_operator");
542 addTaskDependency(
"add_linear_fv_kernel",
"add_interpolation_method");
544 registerTask(
"parse_neml2",
false);
545 addTaskDependency(
"add_material",
"parse_neml2");
546 addTaskDependency(
"add_user_object",
"parse_neml2");
587 const std::set<std::string> & obj_labels)
592 registerTask(
"dump_objects",
false);
593 registerTask(
"finish_input_file_output",
false);
604 registerSyntax(
"DiffusionCG",
"Physics/Diffusion/ContinuousGalerkin/*");
605 registerSyntax(
"DiffusionFV",
"Physics/Diffusion/FiniteVolume/*");
607 registerSyntax(
"AddActionComponentAction",
"ActionComponents/*");
608 registerSyntax(
"CombineComponentsMeshes",
"ActionComponents");
610 registerSyntaxTask(
"CopyNodalVarsAction",
"Variables/*",
"check_copy_nodal_vars");
611 registerSyntaxTask(
"CopyNodalVarsAction",
"Variables/*",
"copy_nodal_vars");
612 registerSyntaxTask(
"CopyNodalVarsAction",
"AuxVariables/*",
"check_copy_nodal_vars");
613 registerSyntaxTask(
"CopyNodalVarsAction",
"AuxVariables/*",
"copy_nodal_aux_vars");
615 registerSyntaxTask(
"AddKernelAction",
"Kernels/*",
"add_kernel");
616 registerSyntaxTask(
"AddNodalKernelAction",
"NodalKernels/*",
"add_nodal_kernel");
617 registerSyntaxTask(
"AddKernelAction",
"AuxKernels/*",
"add_aux_kernel");
619 registerSyntaxTask(
"AddHDGKernelAction",
"HDGKernels/*",
"add_hybridized_kernel");
621 registerSyntax(
"AddAuxKernelAction",
"AuxVariables/*/AuxKernel");
623 registerSyntaxTask(
"AddScalarKernelAction",
"ScalarKernels/*",
"add_scalar_kernel");
624 registerSyntaxTask(
"AddScalarKernelAction",
"AuxScalarKernels/*",
"add_aux_scalar_kernel");
626 registerSyntaxTask(
"AddBCAction",
"BCs/*",
"add_bc");
628 registerSyntax(
"CreateProblemAction",
"Problem");
629 registerSyntax(
"DynamicObjectRegistrationAction",
"Problem");
631 registerSyntax(
"SetupMeshAction",
"Mesh");
632 registerSyntax(
"SetupMeshCompleteAction",
"Mesh");
634 registerSyntax(
"CreateMeshSetupActionsForComponents",
"ActionComponents");
635 registerSyntax(
"CreateDisplacedProblemAction",
"Mesh");
636 registerSyntax(
"DisplayGhostingAction",
"Mesh");
637 registerSyntax(
"AddMeshGeneratorAction",
"Mesh/*");
638 registerSyntaxTask(
"EmptyAction",
"Mesh/BatchMeshGeneratorAction",
"no_action");
639 registerSyntax(
"BatchMeshGeneratorAction",
"Mesh/BatchMeshGeneratorAction/*");
640 registerSyntax(
"ElementIDOutputAction",
"Mesh");
643 registerSyntax(
"AddFunctionAction",
"Functions/*");
646 registerSyntax(
"AddMeshDivisionAction",
"MeshDivisions/*");
648 registerSyntax(
"AddConvergenceAction",
"Convergence/*");
651 registerSyntax(
"GlobalParamsAction",
"GlobalParams");
653 registerSyntax(
"AddDistributionAction",
"Distributions/*");
656 registerSyntax(
"AddSamplerAction",
"Samplers/*");
659 registerSyntax(
"SetupDebugAction",
"Debug");
660 registerSyntax(
"SetupResidualDebugAction",
"Debug");
663 registerSyntax(
"AddVariableAction",
"Variables/*");
667 registerSyntax(
"AddICAction",
"Variables/*/InitialCondition");
668 registerSyntax(
"AddFVICAction",
"Variables/*/FVInitialCondition");
670 registerSyntax(
"AddAuxVariableAction",
"AuxVariables/*");
674 registerSyntax(
"AddICAction",
"AuxVariables/*/InitialCondition");
675 registerSyntax(
"AddFVICAction",
"AuxVariables/*/FVInitialCondition");
677 registerSyntaxTask(
"EmptyAction",
"BCs/Periodic",
"no_action");
678 registerSyntax(
"AddPeriodicBCAction",
"BCs/Periodic/*");
680 registerSyntaxTask(
"AddInitialConditionAction",
"ICs/*",
"add_ic");
681 registerSyntaxTask(
"AddFVInitialConditionAction",
"FVICs/*",
"add_fv_ic");
683 registerSyntax(
"AddMaterialAction",
"Materials/*");
686 registerSyntax(
"AddFunctorMaterialAction",
"FunctorMaterials/*");
689 registerSyntax(
"AddPostprocessorAction",
"Postprocessors/*");
693 registerSyntax(
"AddVectorPostprocessorAction",
"VectorPostprocessors/*");
696 registerSyntax(
"AddReporterAction",
"Reporters/*");
699 registerSyntax(
"AddPositionsAction",
"Positions/*");
702 registerSyntax(
"AddTimesAction",
"Times/*");
705 registerSyntax(
"AddDamperAction",
"Dampers/*");
707 registerSyntax(
"AddOutputAction",
"Outputs/*");
708 registerSyntax(
"CommonOutputAction",
"Outputs");
709 registerSyntax(
"MaterialOutputAction",
"Outputs");
710 registerSyntax(
"AutoCheckpointAction",
"Outputs");
714 registerSyntax(
"SetupPreconditionerAction",
"Preconditioning/*");
715 registerSyntax(
"AddFieldSplitAction",
"Preconditioning/*/*");
717 registerSyntax(
"CreateExecutionerAction",
"Executioner");
718 registerSyntax(
"ReadExecutorParamsAction",
"Executors/*");
720 registerSyntaxTask(
"AddTimeStepperAction",
"Executioner/TimeSteppers/*",
"add_time_steppers");
721 registerSyntaxTask(
"AddTimeStepperAction",
"Executioner/TimeStepper",
"add_time_stepper");
723 "ComposeTimeStepperAction",
"Executioner/TimeSteppers",
"compose_time_stepper");
725 "SetupTimeIntegratorAction",
"Executioner/TimeIntegrators/*",
"setup_time_integrators");
727 "SetupTimeIntegratorAction",
"Executioner/TimeIntegrator",
"setup_time_integrator");
730 registerSyntax(
"SetupQuadratureAction",
"Executioner/Quadrature");
731 registerSyntax(
"SetupPredictorAction",
"Executioner/Predictor");
732 #ifdef LIBMESH_ENABLE_AMR 733 registerSyntax(
"AdaptivityAction",
"Executioner/Adaptivity");
736 registerSyntax(
"PartitionerAction",
"Mesh/Partitioner");
738 registerSyntax(
"AddDiracKernelAction",
"DiracKernels/*");
740 registerSyntax(
"AddDGKernelAction",
"DGKernels/*");
741 registerSyntax(
"AddFVKernelAction",
"FVKernels/*");
742 registerSyntax(
"AddFVBCAction",
"FVBCs/*");
743 registerSyntax(
"AddLinearFVBCAction",
"LinearFVBCs/*");
744 registerSyntax(
"AddFVInterfaceKernelAction",
"FVInterfaceKernels/*");
745 registerSyntax(
"CheckFVBCAction",
"FVBCs");
747 registerSyntax(
"AddLinearFVKernelAction",
"LinearFVKernels/*");
749 registerSyntax(
"AddInterfaceKernelAction",
"InterfaceKernels/*");
751 registerSyntax(
"AddConstraintAction",
"Constraints/*");
753 registerSyntax(
"AddControlAction",
"Controls/*");
754 registerSyntax(
"AddChainControlAction",
"ChainControls/*");
755 registerSyntax(
"AddBoundAction",
"Bounds/*");
756 registerSyntax(
"AddBoundsVectorsAction",
"Bounds");
759 registerSyntax(
"AddUserObjectAction",
"UserObjects/*");
762 registerSyntax(
"AddCorrectorAction",
"Correctors/*");
765 registerSyntax(
"AddMeshModifiersAction",
"MeshModifiers/*");
768 registerSyntax(
"AddNodalNormalsAction",
"NodalNormals");
771 registerSyntax(
"AddFVInterpolationMethodAction",
"FVInterpolationMethods/*");
775 registerSyntax(
"AddElementalFieldAction",
"Adaptivity/Indicators/*");
776 registerSyntax(
"AddIndicatorAction",
"Adaptivity/Indicators/*");
780 registerSyntax(
"AddElementalFieldAction",
"Adaptivity/Markers/*");
781 registerSyntax(
"AddMarkerAction",
"Adaptivity/Markers/*");
785 registerSyntax(
"SetAdaptivityOptionsAction",
"Adaptivity");
788 registerSyntax(
"DeprecatedBlockAction",
"DeprecatedBlock");
791 registerSyntax(
"AddMultiAppAction",
"MultiApps/*");
795 registerSyntax(
"AddTransferAction",
"Transfers/*");
798 registerSyntaxTask(
"EmptyAction",
"Debug/MaterialDerivativeTest",
"no_action");
799 registerSyntax(
"MaterialDerivativeTestAction",
"Debug/MaterialDerivativeTest/*");
801 registerSyntax(
"ProjectedStatefulMaterialStorageAction",
"ProjectedStatefulMaterialStorage/*");
804 registerSyntax(
"CreateApplicationBlockAction",
"Application");
806 #ifdef MOOSE_MFEM_ENABLED 807 registerSyntaxTask(
"AddMFEMSubMeshAction",
"SubMeshes/*",
"add_mfem_submeshes");
808 registerSyntaxTask(
"AddMFEMFESpaceAction",
"FESpaces/*",
"add_mfem_fespaces");
810 "AddMFEMComplexKernelComponentAction",
"Kernels/*/*",
"add_mfem_complex_kernel_components");
812 "AddMFEMComplexBCComponentAction",
"BCs/*/*",
"add_mfem_complex_bc_components");
813 registerSyntaxTask(
"AddMFEMPreconditionerAction",
"Preconditioner/*",
"add_mfem_preconditioner");
814 registerSyntaxTask(
"AddMFEMSolverAction",
"Solvers/*",
"add_mfem_solver");
818 registerSyntax(
"NEML2ActionCommon",
"NEML2");
819 registerSyntax(
"NEML2Action",
"NEML2/*");
841 MPI_Comm old_comm = PETSC_COMM_WORLD;
842 PETSC_COMM_WORLD = new_comm;
890 if (node.filename() ==
"CLI_ARGS")
891 return "CLI_ARGS:\n";
894 return node.filename() +
":\n";
895 return node.fileLocation() +
":\n";
const ExecFlagType EXEC_LINEAR_CONVERGENCE
Base class for function objects.
A kernel for hybridized finite element formulations.
Base class for boundary conditions for linear FV systems.
bool colorConsole()
Returns whether Console coloring is turned on (default: true).
Base class for split-based preconditioners.
Base class for finite volume kernels that contribute to a linear systems.
MPI_Comm swapLibMeshComm(MPI_Comm new_comm)
Swap the libMesh MPI communicator out for ours.
const ExecFlagType EXEC_PRE_KERNELS
Generic factory class for build all sorts of objects.
void setSolverDefaults(FEProblemBase &problem)
This is the base class for Samplers as used within the Stochastic Tools module.
Base class for predictors.
void petscSetDefaults(FEProblemBase &problem)
Sets the default options for PETSc.
Base class for creating new types of boundary conditions.
bool _warnings_are_errors
Variable to toggle any warning into an error (includes deprecated code warnings)
~ScopedDeprecatedIsError()
Destructor, which sets Moose::_deprecated_is_error to what it was upon construction.
InterfaceKernel and VectorInterfaceKernel is responsible for interfacing physics across subdomains...
static void addAppCitation(const std::string &app_name, const std::string &key, const std::string &bibtex)
Register a citation (the full BibTeX bibtex text, identified by key) tied to the app app_name; emitte...
void registerActions(Syntax &syntax, ActionFactory &action_factory)
Multiple Action class can be associated with a single input file section, in which case all associate...
This is a template class that implements the workhorse compute and computeNodal methods.
Base class for all Constraint types.
const ExecFlagType EXEC_PRE_MULTIAPP_SETUP
Positions objects are under the hood Reporters.
Class that hold the whole problem being solved.
const bool _throw_on_error_before
The value of Moose::_throw_on_error at construction.
ScopedDeprecatedIsError()
Default constructor, which sets Moose::_deprecated_is_error = true.
Base class for time stepping.
Times objects are under the hood Reporters, but limited to a vector of Real.
void associateSyntax(Syntax &syntax, ActionFactory &action_factory)
const bool _deprecated_is_error_before
The value of Moose::_throw_on_error at construction.
static void registerObjectsTo(Factory &f, const std::set< std::string > &labels)
This registers all MooseObjects known to the registry that have the given label(s) with the factory f...
const ExecFlagType EXEC_POST_ADAPTIVITY
Registered base class for linear FV interpolation objects.
All Distributions should inherit from this class.
Class to transfer MFEM variable data to or from a restricted copy of the variable defined on an a sub...
const ExecFlagType EXEC_MULTISYSTEM_FIXED_POINT_CONVERGENCE
Base class for MeshDivision objects.
Reporter objects allow for the declaration of arbitrary data types that are aggregate values for a si...
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
Base class for MOOSE preconditioners.
Based class for output objects.
ScopedThrowOnError()
Default constructor, which sets Moose::_throw_on_error = true.
FunctorMaterials compute functor material properties.
const ExecFlagType EXEC_ALWAYS
static void registerActionsTo(ActionFactory &f, const std::set< std::string > &labels)
This registers all Actions known to the registry that have the given label(s) with the factory f...
Base class for convergence criteria.
The DGKernel class is responsible for calculating the residuals for various physics on internal sides...
bool _deprecated_is_error
Variable to toggle only deprecated warnings as errors.
static bool _color_console
Base class for making kernels that work on auxiliary scalar variables.
const ExecFlagType EXEC_MULTIAPP_FIXED_POINT_ITERATION_END
Base class for construction of a mfem::ParSubMesh object.
const ExecFlagType EXEC_TRANSFER
~ScopedThrowOnError()
Destructor, which sets Moose::_throw_on_error to what it was upon construction.
Base class for array variable (equation) kernels using automatic differentiation. ...
Specialized factory for generic Action System objects.
Base class for creating kernels that interface physics between subdomains.
MooseMesh wraps a libMesh::Mesh object and enhances its capabilities by caching additional data and s...
const ExecFlagType EXEC_LINEAR
const ExecFlagType EXEC_FAILED
const ExecFlagType EXEC_NONLINEAR
Executioners are objects that do the actual work of solving your problem.
void mooseDeprecated(Args &&... args)
Emit a deprecated code/feature message with the given stringified, concatenated args.
Base class for all Postprocessors.
The behavior of this kernel is controlled by one problem-wise global parameter eigen_on_current - boo...
const ExecFlagType EXEC_MULTIAPP_FIXED_POINT_BEGIN
const ExecFlagType EXEC_TIMESTEP_END
InitialConditions are objects that set the initial value of variables.
A DiracKernel is used when you need to add contributions to the residual by means of multiplying some...
Constructs and stores an mfem::ParFiniteElementSpace object.
void addDependencySets(const std::string &action_sets)
Adds all dependencies in a single call.
Base class for wrapping mfem::Solver-derived classes.
FVKernel is a base class for all finite volume method kernels.
Base class for creating new types of boundary conditions.
Base class for time integrators.
bool show_multiple
Set to false (the default) to display an error message only once for each error call code location (a...
Class for containing MooseEnum item information.
Base class for Control objects.
bool _throw_on_warning
Variable to turn on exceptions during mooseWarning(), should only be used in MOOSE unit tests...
void registerSyntaxType(const std::string &syntax, const std::string &type)
Register a type with a block.
void registerAll(Factory &f, ActionFactory &af, Syntax &s)
Register objects that are in MOOSE.
void registerObjects(Factory &factory, const std::set< std::string > &obj_labels)
Base class for MOOSE partitioner.
bool setColorConsole(bool use_color, bool force=false)
Turns color escape sequences on/off for info written to stdout.
Base class for deriving dampers.
Scoped helper for setting Moose::_throw_on_error during this scope.
Holding syntax for parsing input files.
const ExecFlagType EXEC_MULTIAPP_FIXED_POINT_END
const ExecFlagType EXEC_CUSTOM
const ExecFlagType EXEC_SUBDOMAIN
int interrupt_signal_number
Used by the signal handler to determine if we should write a checkpoint file out at any point during ...
const ExecFlagType EXEC_TIMESTEP_BEGIN
const ExecFlagType EXEC_POSTCHECK
const ExecFlagType EXEC_FORCED
MOOSE now contains C++17 code, so give a reasonable error message stating what the user can do to add...
const ExecFlagType EXEC_SAME_AS_MULTIAPP
const ExecFlagType EXEC_FINAL
const ExecFlagType EXEC_INITIAL
const ExecFlagType EXEC_NONE
Base class for creating nodal kernels with hand-coded Jacobians.
A MultiApp represents one or more MOOSE applications that are running simultaneously.
std::string hitMessagePrefix(const hit::Node &node)
Get the prefix to be associated with a hit node for a message.
Base class for Postprocessors that produce a vector of values.
bool _throw_on_error
Variable to turn on exceptions during mooseError(), should only be used within MOOSE unit tests or wh...
MaterialBases compute MaterialProperties.
Scoped helper for setting Moose::_deprecated_is_error during this scope.
MeshGenerators are objects that can modify or add to an existing mesh.
This is a template class that implements the workhorse compute and computeNodal methods.
Base class for user-specific data.
void addActionTypes(Syntax &syntax)
The Executor class directs the execution flow of simulations.
const ExecFlagType EXEC_NONLINEAR_CONVERGENCE
void associateSyntaxInner(Syntax &syntax, ActionFactory &action_factory)
Control that additionally provides the capability to produce/consume data values, to allow control op...
const ExecFlagType EXEC_MULTIAPP_FIXED_POINT_CONVERGENCE
Base class for all Transfer objects.
const ExecFlagType EXEC_PRE_DISPLACE