1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
|
/*
*
* This file is part of MUMPS 4.10.0, built on Tue May 10 12:56:32 UTC 2011
*
*
* This version of MUMPS is provided to you free of charge. It is public
* domain, based on public domain software developed during the Esprit IV
* European project PARASOL (1996-1999). Since this first public domain
* version in 1999, research and developments have been supported by the
* following institutions: CERFACS, CNRS, ENS Lyon, INPT(ENSEEIHT)-IRIT,
* INRIA, and University of Bordeaux.
*
* The MUMPS team at the moment of releasing this version includes
* Patrick Amestoy, Maurice Bremond, Alfredo Buttari, Abdou Guermouche,
* Guillaume Joslin, Jean-Yves L'Excellent, Francois-Henry Rouet, Bora
* Ucar and Clement Weisbecker.
*
* We are also grateful to Emmanuel Agullo, Caroline Bousquet, Indranil
* Chowdhury, Philippe Combes, Christophe Daniel, Iain Duff, Vincent Espirat,
* Aurelia Fevre, Jacko Koster, Stephane Pralet, Chiara Puglisi, Gregoire
* Richard, Tzvetomila Slavova, Miroslav Tuma and Christophe Voemel who
* have been contributing to this project.
*
* Up-to-date copies of the MUMPS package can be obtained
* from the Web pages:
* http://mumps.enseeiht.fr/ or http://graal.ens-lyon.fr/MUMPS
*
*
* THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY
* EXPRESSED OR IMPLIED. ANY USE IS AT YOUR OWN RISK.
*
*
* User documentation of any code that uses this software can
* include this complete notice. You can acknowledge (using
* references [1] and [2]) the contribution of this package
* in any scientific publication dependent upon the use of the
* package. You shall use reasonable endeavours to notify
* the authors of the package of this publication.
*
* [1] P. R. Amestoy, I. S. Duff, J. Koster and J.-Y. L'Excellent,
* A fully asynchronous multifrontal solver using distributed dynamic
* scheduling, SIAM Journal of Matrix Analysis and Applications,
* Vol 23, No 1, pp 15-41 (2001).
*
* [2] P. R. Amestoy and A. Guermouche and J.-Y. L'Excellent and
* S. Pralet, Hybrid scheduling for the parallel solution of linear
* systems. Parallel Computing Vol 32 (2), pp 136-156 (2006).
*
*/
#ifndef MUMPS_MPI_H
#define MUMPS_MPI_H
/* We define all symbols as extern "C" for users who call MUMPS with its
libseq from a C++ driver. */
#ifdef __cplusplus
extern "C" {
#endif
/* This is the minimum to have the C interface of MUMPS work.
* Most of the time, users who need this file have no call to MPI functions in
* their own code. Hence it is not worth declaring all MPI functions here.
* However if some users come to request some more stub functions of the MPI
* standards, we may add them. But it is not worth doing it until then. */
typedef int MPI_Comm; /* Simple type for MPI communicator */
static MPI_Comm MPI_COMM_WORLD=(MPI_Comm)0;
int MPI_Init(int *pargc, char ***pargv);
int MPI_Comm_rank(int comm, int *rank);
int MPI_Finalize(void);
#ifdef __cplusplus
}
#endif
#endif /* MUMPS_MPI_H */
|