File indexing completed on 2021-08-12 05:10:54 UTC
view on githubraw file Latest commit 0320e252 on 2021-08-11 16:08:52 UTC
6d54cf9ca1 Ed H*0001 #include "PACKAGES_CONFIG.h"
fb481a83c2 Alis*0002 #include "CPP_OPTIONS.h"
                0003 
9366854e02 Chri*0004 
                0005 
                0006 
fb481a83c2 Alis*0007       SUBROUTINE DO_FIELDS_BLOCKING_EXCHANGES(myThid)
7ad9030305 Jean*0008 
9366854e02 Chri*0009 
7ad9030305 Jean*0010 
                0011 
                0012 
                0013 
                0014 
                0015 
                0016 
                0017 
9366854e02 Chri*0018 
7ad9030305 Jean*0019 
9366854e02 Chri*0020 
fb481a83c2 Alis*0021       IMPLICIT NONE
                0022 
                0023 #include "SIZE.h"
                0024 #include "EEPARAMS.h"
f9ff59e0c6 Jean*0025 #include "PARAMS.h"
fb481a83c2 Alis*0026 #include "DYNVARS.h"
4e66ab0b67 Oliv*0027 #ifdef ALLOW_LONGSTEP
                0028 #include "LONGSTEP.h"
                0029 #endif
9da3c4e8e8 Jean*0030 #ifdef ALLOW_GENERIC_ADVDIFF
                0031 # include "GAD.h"
                0032 #endif
a5bd9cbb61 Ed H*0033 #ifdef ALLOW_CD_CODE
9da3c4e8e8 Jean*0034 # include "CD_CODE_VARS.h"
a5bd9cbb61 Ed H*0035 #endif
fb481a83c2 Alis*0036 
9366854e02 Chri*0037 
fb481a83c2 Alis*0038 
7ad9030305 Jean*0039 
fb481a83c2 Alis*0040       INTEGER myThid
9366854e02 Chri*0041 
fb481a83c2 Alis*0042 
7ad9030305 Jean*0043 
                0044 
                0045 #ifdef ALLOW_OBCS
97be5f9871 Jean*0046 
7ad9030305 Jean*0047 #endif /* ALLOW_OBCS */
                0048 
978f5dc530 Jean*0049       IF ( .NOT.useOffLine ) THEN
                0050 
                0051 
882e7446f0 Jean*0052       IF ( .NOT.staggerTimeStep ) THEN
35c76859f0 Jean*0053        IF ( .NOT.applyExchUV_early )
                0054      &  CALL EXCH_UV_XYZ_RL(uVel,vVel,.TRUE.,myThid)
cb7fa97db9 Jean*0055        IF ( .NOT.implicitIntGravWave )
12c8b75709 Jean*0056      & _EXCH_XYZ_RL( wVel , myThid )
ffd0966f4f Jean*0057       ENDIF
615c650f5e Jean*0058 
12c8b75709 Jean*0059 
cb7fa97db9 Jean*0060       IF ( .NOT.implicitIntGravWave ) THEN
12c8b75709 Jean*0061        _EXCH_XYZ_RL( theta, myThid )
                0062        _EXCH_XYZ_RL( salt , myThid )
cb7fa97db9 Jean*0063       ENDIF
7ad9030305 Jean*0064 #ifdef ALLOW_OBCS
97be5f9871 Jean*0065 
                0066 
                0067 
882e7446f0 Jean*0068 
97be5f9871 Jean*0069 
882e7446f0 Jean*0070 
97be5f9871 Jean*0071 
                0072 
                0073 
                0074 
7ad9030305 Jean*0075 #endif /* ALLOW_OBCS */
fb481a83c2 Alis*0076 
9da3c4e8e8 Jean*0077 #ifdef ALLOW_GENERIC_ADVDIFF
                0078       IF ( tempSOM_Advection .OR. saltSOM_Advection )
                0079      &  CALL GAD_SOM_EXCHANGES( myThid )
                0080 #endif
                0081 
138482fdf6 Ed H*0082 #ifdef ALLOW_CD_CODE
e988230044 Jean*0083       CALL EXCH_UV_DGRID_3D_RL( uVelD,vVelD, .TRUE., Nr, myThid )
fb481a83c2 Alis*0084 #endif
901f12b7bc Jean*0085       IF ( storePhiHyd4Phys )
0924cd4fe2 Jean*0086      & _EXCH_XYZ_RL( totPhiHyd , myThid )
978f5dc530 Jean*0087 
                0088       ENDIF
fb481a83c2 Alis*0089 
5c43c390b6 Alis*0090 #ifdef ALLOW_PTRACERS
4e66ab0b67 Oliv*0091 #ifdef ALLOW_LONGSTEP
                0092       IF ( LS_doTimeStep ) THEN
                0093 #else
                0094       IF ( .TRUE. ) THEN
                0095 #endif
615c650f5e Jean*0096       IF (usePTRACERS)
064f472621 Ed H*0097      &  CALL PTRACERS_FIELDS_BLOCKING_EXCH(myThid)
4e66ab0b67 Oliv*0098 
                0099       ENDIF
5c43c390b6 Alis*0100 #endif /* ALLOW PTRACERS */
                0101 
fb481a83c2 Alis*0102       RETURN
                0103       END