1 |
#include "ATM2D_OPTIONS.h" |
2 |
#ifdef ATM2D_MPI_ON |
3 |
|
4 |
CStartOfInterface |
5 |
SUBROUTINE INITIALISE |
6 |
C /==========================================================\ |
7 |
C | SUBROUTINE INITIALISE | |
8 |
C | o Routine to initialise coupling component. | |
9 |
C |==========================================================| |
10 |
C | Initialisation involves starting up MPI and then joining | |
11 |
C | the coupled configuration as a component with the special| |
12 |
C | name "Coupler". With the present MIT Coupler library | |
13 |
C | only one process can register with the name "Coupler". | |
14 |
C | This component is the process responsible for | |
15 |
C | coordinating the transfer of data between other | |
16 |
C | components and for mapping data from one components | |
17 |
C | representation to anothers representation as appropriate.| |
18 |
C \==========================================================/ |
19 |
IMPLICIT NONE |
20 |
C === GLobal variables == |
21 |
#include "CPLIDS.h" |
22 |
|
23 |
CEndOfInterface |
24 |
|
25 |
C === Local variables === |
26 |
C iErr - Error code |
27 |
C MPI_COMM_Coupler - Communicatior used by this component. |
28 |
C Stored internally by the coupling library. |
29 |
INTEGER iErr |
30 |
INTEGER MPI_COMM_Coupler |
31 |
|
32 |
CALL MPI_Init(iErr) |
33 |
|
34 |
C-- Set the running directory (= rank_0 ) |
35 |
CALL SETDIR( 0 ) |
36 |
|
37 |
C Register this process as the "coupler" participant. Currently there can |
38 |
C only be one coupler participant all others are "component" participants. |
39 |
CALL MITCOUPLER_INIT( cplCompName, MPI_COMM_Coupler ) |
40 |
|
41 |
RETURN |
42 |
END |
43 |
#endif |