https://mooseframework.inl.gov
Public Member Functions | List of all members
MooseInit Class Reference

Initialization object for any MOOSE-based application. More...

#include <MooseInit.h>

Inheritance diagram for MooseInit:
[legend]

Public Member Functions

 MooseInit (int argc, char *argv[], MPI_Comm COMM_WORLD_IN=MPI_COMM_WORLD)
 
virtual ~MooseInit ()=default
 
const Parallel::Communicatorcomm () const
 
Parallel::Communicatorcomm ()
 

Detailed Description

Initialization object for any MOOSE-based application.

This object must be created in the main() of any MOOSE-based application so everything is properly initialized and finalized.

Definition at line 23 of file MooseInit.h.

Constructor & Destructor Documentation

◆ MooseInit()

MooseInit::MooseInit ( int  argc,
char *  argv[],
MPI_Comm  COMM_WORLD_IN = MPI_COMM_WORLD 
)

Definition at line 46 of file MooseInit.C.

47  : LibMeshInit(argc, argv, COMM_WORLD_IN)
48 {
49  LibmeshPetscCallA(COMM_WORLD_IN, PetscPopSignalHandler()); // get rid of PETSc error handler
50 
51 // Set the number of OpenMP threads to the same as the number of threads libMesh is going to use
52 #ifdef LIBMESH_HAVE_OPENMP
53  omp_set_num_threads(libMesh::n_threads());
54 #endif
55 
56 #ifdef MOOSE_LIBTORCH_ENABLED
57  at::set_num_threads(libMesh::n_threads());
58  at::set_num_interop_threads(libMesh::n_threads());
59 #endif
60 
62 
63  // Make sure that any calls to the global random number generator are consistent among processes
65 
67 }
static void initialize()
Must be called by main thread before any threaded computation! Do NOT call in a worker thread! ...
unsigned int n_threads()
void RegisterSigHandler()
Definition: MooseInit.C:41
LibMeshInit(int argc, const char *const *argv, MPI_Comm COMM_WORLD_IN=MPI_COMM_WORLD, int n_threads=-1)
static void seed(unsigned int seed)
The method seeds the random number generator.
Definition: MooseRandom.h:44

◆ ~MooseInit()

virtual MooseInit::~MooseInit ( )
virtualdefault

The documentation for this class was generated from the following files: