/[MITgcm]/MITgcm/model/src/do_gterm_blocking_exchanges.F
ViewVC logotype

Annotation of /MITgcm/model/src/do_gterm_blocking_exchanges.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.4 - (hide annotations) (download)
Tue Jun 9 15:58:36 1998 UTC (26 years ago) by adcroft
Branch: MAIN
Changes since 1.3: +11 -5 lines
Various corrections:
 o do_gterm_blocking..() is fixed to work with new time-stepping
 o CPP_OPTIONS.h now contains #define ALLOW_CD

1 adcroft 1.4 C $Header: /u/gcmpack/models/MITgcmUV/model/src/do_gterm_blocking_exchanges.F,v 1.3 1998/06/08 21:43:01 cnh Exp $
2 cnh 1.1
3 adcroft 1.4 #include "CPP_OPTIONS.h"
4 cnh 1.1
5     SUBROUTINE DO_GTERM_BLOCKING_EXCHANGES(myThid)
6     C /==========================================================\
7     C | SUBROUTINE DO_THE_MODEL_IO |
8     C | o Controlling routine for IO in model main time-stepping |
9     C | loop. |
10     C |==========================================================|
11     C | Many systems do not have thread safe IO so it is easier |
12     C | to lump everything together and do dumping of fields |
13     C | and updating of forcing terms in a single place. |
14     C | The approach to IO used here is that writes are only |
15     C | performed by thread 1 and that a process only writes out |
16     C | its data ( since it doen't know about anyone elses data!)|
17     C | Reading on the other hand is assumed to be from a file |
18     C | containing all the data for all the processes. Only the |
19     C | portion of data of interest to this process is actually |
20     C | loaded. To work well this assumes the existence of some |
21     C | reliable tool to join datasets together at the end of a |
22     C | run. |
23     C | Notes |
24     C | ===== |
25     C | We allow thread 2-nThreads to continue whilst thread 1 |
26     C | does IO. The assumption is that the other threads won't |
27     C | do anything to update their interior regions before |
28     C | thread 1 has finished writing them out. |
29     C \==========================================================/
30    
31     C == Global variables ===
32     #include "SIZE.h"
33     #include "EEPARAMS.h"
34     #include "DYNVARS.h"
35    
36     C == Routine arguments ==
37     C myThid - Thread number for this instance of the routine.
38     INTEGER myThid
39    
40 adcroft 1.4 c _EXCH_XYZ_R8( Gu , myThid )
41     c _EXCH_XYZ_R8( Gv , myThid )
42     c _EXCH_XYZ_R8( Gt , myThid )
43     _EXCH_XYZ_R8( gUNm1 , myThid )
44     _EXCH_XYZ_R8( gVNm1 , myThid )
45     c _EXCH_XYZ_R8( gTNm1 , myThid )
46     _EXCH_XYZ_R8( theta , myThid )
47     c _EXCH_XYZ_R8( uVel , myThid )
48     c _EXCH_XYZ_R8( vVel , myThid )
49 cnh 1.3 #ifdef ALLOW_CD
50     _EXCH_XYZ_R8( guCD , myThid )
51     _EXCH_XYZ_R8( gvCD , myThid )
52     #endif
53 cnh 1.1 CcnhDebugStarts
54     Cdbg _EXCH_XYZ_R8( phSave , myThid )
55     CcnhDebugEnds
56    
57     RETURN
58     END
59    

  ViewVC Help
Powered by ViewVC 1.1.22