20#ifndef LIBMESH_LIBMESH_H
21#define LIBMESH_LIBMESH_H
25#include "libmesh/libmesh_base.h"
26#include "libmesh/libmesh_common.h"
27#include "libmesh/libmesh_config.h"
35#if defined(LIBMESH_HAVE_MPI) && defined(LIBMESH_HAVE_VTK)
36class vtkMPIController;
43#ifdef GETPOT_NAMESPACE
47#ifdef GETPOT_NAMESPACE
94#ifdef LIBMESH_HAVE_MPI
109 MPI_Comm COMM_WORLD_IN=MPI_COMM_WORLD,
int n_threads=-1);
145#if defined(LIBMESH_HAVE_MPI) && defined(LIBMESH_HAVE_VTK)
152#ifdef LIBMESH_ENABLE_EXCEPTIONS
257#ifdef LIBMESH_USE_COMPLEX_NUMBERS
282#ifdef LIBMESH_DEFAULT_QUADRUPLE_PRECISION
283constexpr Real operator ""_R(
const char * r) {
return Real(r); }
285constexpr Real operator ""_R(
long double r) {
return r; }
286constexpr Real operator ""_R(
unsigned long long r) {
return Real(r); }
292const Real pi = 3.1415926535897932384626433832795029_R;
void ErrorVector unsigned int
The LibMeshInit class, when constructed, initializes the dependent libraries (e.g.
Parallel::Communicator * _comm
LibMeshInit(int argc, const char *const *argv, MPI_Comm COMM_WORLD_IN=MPI_COMM_WORLD, int n_threads=-1)
Initialize the library for use, with the command line options provided.
static std::terminate_handler _old_terminate_handler
LibMeshInit(int argc, const char *const *argv, int COMM_WORLD_IN=0, int n_threads=-1)
friend void libmesh_abort()
Abort as soon as possible.
const Parallel::Communicator & comm() const
Returns a Communicator created from the TIMPIInit object we hold, which will be a compatibility shim ...
vtkMPIController * _vtk_mpi_controller
TIMPI::TIMPIInit * _timpi_init
Parallel::Communicator & comm()
static PerfLog & perf_log()
virtual ~LibMeshInit()
Destructor.
friend void libmesh_terminate_handler()
A terminate handler.
The PerfLog class allows monitoring of specific events.
The libMesh namespace provides an interface to certain functionality in the library.
bool closed()
Checks that the library has been closed.
void command_line_vector(const std::string &, std::vector< T > &)
SolverPackage default_solver_package()
const unsigned int invalid_uint
A number which is used quite often to represent an invalid or uninitialized value for an unsigned int...
const int invalid_int
A number which is used quite often to represent an invalid or uninitialized value for an integer.
void add_command_line_names(const GetPot &getpot)
Merge a GetPot object's requested names into the set of queried command-line names.
T command_line_next(std::string name, T default_value)
Use GetPot's search()/next() functions to get following arguments from the command line.
SolverPackage
Defines an enum for various linear solver packages.
void add_command_line_name(const std::string &name)
Add a name to the set of queried command-line names.
T command_line_value(const std::string &, T)
const Number imaginary
The imaginary unit, .
bool initialized()
Checks that library initialization has been done.
std::vector< std::string > command_line_names()
bool on_command_line(std::string arg)
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real