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