Back to home page

MITgcm

 
 

    


File indexing completed on 2018-03-02 18:42:48 UTC

view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
071fa694ec Jean*0001 #include "OCN_CPL_OPTIONS.h"
e596558d31 Jean*0002 
49715ba709 Jean*0003 CBOP 0
                0004 C !ROUTINE: OCN_EXPORT_FIELDS
                0005 
                0006 C !INTERFACE:
90578acae6 Jean*0007       SUBROUTINE OCN_EXPORT_FIELDS( myIter, myThid )
e596558d31 Jean*0008 
49715ba709 Jean*0009 C !DESCRIPTION:
                0010 C     *==========================================================*
                0011 C     | SUBROUTINE OCN_EXPORT_FIELDS
                0012 C     | o Routine for exporting oceanic fields
                0013 C     |   to the coupling layer.
                0014 C     *==========================================================*
                0015 C     | This version talks to the MIT Coupler. It uses the MIT
                0016 C     | Coupler "checkpoint1" library calls.
                0017 C     *==========================================================*
                0018 
                0019 C !USES:
                0020       IMPLICIT NONE
e596558d31 Jean*0021 C     == Global variables ==
                0022 #include "SIZE.h"
                0023 #include "EEPARAMS.h"
071fa694ec Jean*0024 #include "CPL_PARAMS.h"
e596558d31 Jean*0025 #include "OCNIDS.h"
                0026 #include "OCNCPL.h"
                0027 
49715ba709 Jean*0028 C !INPUT/OUTPUT PARAMETERS:
e596558d31 Jean*0029 C     == Routine arguments ==
90578acae6 Jean*0030 C     myIter  :: Current timestep number.
                0031 C     myThid  :: Thread number for this instance of the routine
                0032       INTEGER myIter
e596558d31 Jean*0033       INTEGER myThid
49715ba709 Jean*0034 CEOP
e596558d31 Jean*0035 
49715ba709 Jean*0036 #ifdef COMPONENT_MODULE
                0037 C !LOCAL VARIABLES:
e596558d31 Jean*0038 C     == Local variables ==
                0039 
                0040 C-    Send Oceanic fields to coupling layer
                0041 C  Note: 1) Information is sent on the ocean model grid.
                0042 C        2) MIT Coupler checkpoint1 does not allow asynchronous posting of
                0043 C          data, so ordering has to be consistent with coupling layer ordering
                0044 
49715ba709 Jean*0045       _BARRIER
                0046       _BEGIN_MASTER( myThid )
                0047 
e596558d31 Jean*0048 C-    Send Ocean mixed-layer depth to coupling layer
                0049       CALL COMPSEND_R8TILES( ocnMxlDName,
                0050      I     sNx, OLx, sNy, OLy, 1, nSx, nSy, ocMxlD2cpl )
                0051 
                0052 C-    Send sea-surface temperature to coupling layer
                0053       CALL COMPSEND_R8TILES( ocnSSTName,
                0054      I     sNx, OLx, sNy, OLy, 1, nSx, nSy, SSTocn2cpl )
                0055 
                0056 C-    Send sea-surface salinity to coupling layer
                0057       CALL COMPSEND_R8TILES( ocnSSSName,
                0058      I     sNx, OLx, sNy, OLy, 1, nSx, nSy, SSSocn2cpl )
                0059 
                0060 C-    Send ocean surface velocity square to coupling layer
                0061       CALL COMPSEND_R8TILES( ocnSSVsqName,
                0062      I     sNx, OLx, sNy, OLy, 1, nSx, nSy, vSqocn2cpl )
                0063 
90578acae6 Jean*0064 #ifdef ALLOW_DIC
071fa694ec Jean*0065       IF ( ocn_cplExch_DIC ) THEN
e7c6a47db7 Jeff*0066 C-    Send ocean CO2 flux to coupling layer
071fa694ec Jean*0067         CALL COMPSEND_R8TILES( ocnCO2FluxName,
e7c6a47db7 Jeff*0068      I     sNx, OLx, sNy, OLy, 1, nSx, nSy, fluxCO2cpl )
                0069       ENDIF
90578acae6 Jean*0070 #endif /* ALLOW_DIC */
                0071 #ifdef ALLOW_THSICE
                0072       IF ( ocn_cplExch2W_sIce ) THEN
                0073 C-    Send thSIce state-vars to coupling layer
                0074         CALL COMPSEND_R8TILES( ocnSIceFracName,
                0075      I     sNx, OLx, sNy, OLy, 1, nSx, nSy, sIceFrac_cpl )
                0076         CALL COMPSEND_R8TILES( ocnSIceThickName,
                0077      I     sNx, OLx, sNy, OLy, 1, nSx, nSy, sIceThick_cpl )
                0078         CALL COMPSEND_R8TILES( ocnSIceSnowName,
                0079      I     sNx, OLx, sNy, OLy, 1, nSx, nSy, sIceSnowH_cpl )
                0080         CALL COMPSEND_R8TILES( ocnSIceQ1Name,
                0081      I     sNx, OLx, sNy, OLy, 1, nSx, nSy, sIceQ1_cpl )
                0082         CALL COMPSEND_R8TILES( ocnSIceQ2Name,
                0083      I     sNx, OLx, sNy, OLy, 1, nSx, nSy, sIceQ2_cpl )
                0084       ENDIF
                0085 #endif /* ALLOW_THSICE */
e7c6a47db7 Jeff*0086 
49715ba709 Jean*0087       _END_MASTER( myThid )
                0088       _BARRIER
                0089 
                0090 #endif /* COMPONENT_MODULE */
                0091 
e596558d31 Jean*0092       RETURN
                0093       END