1: /*
2: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
3: SLEPc - Scalable Library for Eigenvalue Problem Computations
4: Copyright (c) 2002-, Universitat Politecnica de Valencia, Spain
6: This file is part of SLEPc.
7: SLEPc is distributed under a 2-clause BSD license (see LICENSE).
8: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
9: */
11: #include <slepc/private/slepcimpl.h>
13: /*@C
14: SlepcInitializeFortran - Routine that should be called from C after
15: the call to `SlepcInitialize()` if one is using a C main program
16: that calls Fortran routines that in turn call SLEPc routines.
18: Collective on `PETSC_COMM_WORLD`
20: Level: advanced
22: Note:
23: `SlepcInitializeFortran()` initializes some of the default SLEPc variables
24: for use in Fortran if a user's main program is written in C.
25: `SlepcInitializeFortran()` is NOT needed if a user's main
26: program is written in Fortran; in this case, just calling
27: `SlepcInitialize()` in the main (Fortran) program is sufficient.
29: .seealso: [](sec:fortran), `SlepcInitialize()`
30: @*/
31: PetscErrorCode SlepcInitializeFortran(void)
32: {
33: #if defined(PETSC_USE_FORTRAN_BINDINGS)
34: PetscCall(PetscInitializeFortran());
35: #endif
36: return PETSC_SUCCESS;
37: }