PetscInitializeNoPointers#

Calls PetscInitialize() from C/C++ without the pointers to argc and args

Synopsis#

#include "petscsys.h"   
PetscErrorCode PetscInitializeNoArguments(void)

Collective

Input Parameters#

  • argc - number of args

  • args - array of command line arguments

  • filename - optional name of the program file, pass NULL to ignore

  • help - optional help, pass NULL to ignore

Notes#

this is called only by the PETSc Julia interface. Even though it might start MPI it sets the flag to indicate that it did NOT start MPI so that the PetscFinalize() does not end MPI, thus allowing PetscInitialize() to be called multiple times from Julia without the problem of trying to initialize MPI more than once.

Developer Notes#

Turns off PETSc signal handling to allow Julia to manage signals

See Also#

PetscInitialize(), PetscInitializeFortran(), PetscInitializeNoArguments() */ PetscErrorCode PetscInitializeNoPointers(int argc, char **args, const char *filename, const char *help) { int myargc = argc; char **myargs = args;

PetscFunctionBegin; PetscCall(PetscInitialize(&myargc, &myargs, filename, help)); PetscCall(PetscPopSignalHandler()); PetscBeganMPI = PETSC_FALSE; PetscFunctionReturn(PETSC_SUCCESS); }

/*@C PetscInitializeNoArguments - Calls PetscInitialize() from C/C++ without the command line arguments.

Collective

See Also#

PetscInitialize(), PetscInitializeFortran()

Level#

advanced

Location#

src/sys/objects/pinit.c


Index of all Sys routines
Table of Contents for all manual pages
Index of all manual pages