1 |
C $Header$ |
2 |
C $Name$ |
3 |
|
4 |
#include "DARWIN_OPTIONS.h" |
5 |
|
6 |
CBOP |
7 |
C !ROUTINE: DARWIN_TR_REGISTER |
8 |
C !INTERFACE: |
9 |
SUBROUTINE DARWIN_TR_REGISTER( |
10 |
U tracer_num, sepFTr_num, |
11 |
I myThid ) |
12 |
|
13 |
C !DESCRIPTION: |
14 |
C *==========================================================* |
15 |
C | SUBROUTINE DARWIN_TR_REGISTER |
16 |
C | o Register DARWIN tracer indices |
17 |
C *==========================================================* |
18 |
|
19 |
C !USES: |
20 |
IMPLICIT NONE |
21 |
|
22 |
C == GLobal variables == |
23 |
#include "EEPARAMS.h" |
24 |
#include "DARWIN_SIZE.h" |
25 |
|
26 |
C !INPUT/OUTPUT PARAMETERS: |
27 |
C tracer_num :: current number of registered tracers |
28 |
C sepFTr_num :: number of registered tracers that use Separate Forcing |
29 |
C myThid :: my Thread Id number |
30 |
INTEGER tracer_num |
31 |
INTEGER sepFTr_num |
32 |
INTEGER myThid |
33 |
|
34 |
C !LOCAL VARIABLES: |
35 |
C msgBuf :: message buffer |
36 |
CHARACTER*(MAX_LEN_MBUF) msgBuf |
37 |
CEOP |
38 |
|
39 |
WRITE(msgBuf,'(2A,2I5)') ' DARWIN_TR_REGISTER: ', |
40 |
& ' number of DARWIN tracers=', nDarwin |
41 |
CALL PRINT_MESSAGE( msgBuf, standardMessageUnit, |
42 |
& SQUEEZE_RIGHT, myThid ) |
43 |
WRITE(msgBuf,'(2A,2I5)') ' DARWIN_TR_REGISTER: ', |
44 |
& ' starting at pTrc num=', tracer_num + 1 |
45 |
CALL PRINT_MESSAGE( msgBuf, standardMessageUnit, |
46 |
& SQUEEZE_RIGHT, myThid ) |
47 |
|
48 |
tracer_num = tracer_num + nDarwin |
49 |
sepFTr_num = sepFTr_num + nDarwin |
50 |
|
51 |
WRITE(msgBuf,'(2A,2I5)') ' DARWIN_TR_REGISTER: ', |
52 |
& ' Numb. Trac & SepForc Trac:', tracer_num, sepFTr_num |
53 |
CALL PRINT_MESSAGE( msgBuf, standardMessageUnit, |
54 |
& SQUEEZE_RIGHT, myThid ) |
55 |
|
56 |
RETURN |
57 |
END |