Back to home page

MITgcm

 
 

    


File indexing completed on 2018-03-02 18:37:34 UTC

view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
b93274141a Jean*0001 #include "ATM_CPL_OPTIONS.h"
5a2fc21c93 Jean*0002 
4ff1cd5702 Jean*0003 CBOP
                0004 C     !ROUTINE: ATM_IMPORT_FIELDS
                0005 C     !INTERFACE:
b7bbcb5032 Jean*0006       SUBROUTINE ATM_IMPORT_FIELDS( myIter, myThid )
4ff1cd5702 Jean*0007 
                0008 C     !DESCRIPTION: \bv
                0009 C     *==========================================================*
                0010 C     | SUBROUTINE ATM_IMPORT_FIELDS
                0011 C     | o Routine for importing ocean surface coupling fields
                0012 C     |   from coupling layer.
                0013 C     *==========================================================*
                0014 C     | This version talks to the MIT Coupler. It uses the MIT
                0015 C     | Coupler "checkpoint1" library calls.
                0016 C     *==========================================================*
                0017 C     \ev
                0018 
                0019 C     !USES:
5a2fc21c93 Jean*0020       IMPLICIT NONE
                0021 
                0022 C     == Global variables ==
                0023 #include "SIZE.h"
                0024 #include "EEPARAMS.h"
b93274141a Jean*0025 #include "CPL_PARAMS.h"
5a2fc21c93 Jean*0026 #include "ATMCPL.h"
                0027 #include "ATMIDS.h"
                0028 
4ff1cd5702 Jean*0029 C     !INPUT/OUTPUT PARAMETERS:
5a2fc21c93 Jean*0030 C     == Routine arguments ==
b7bbcb5032 Jean*0031 C     myIter  :: Current timestep number.
                0032 C     myThid  :: my Thread Id number
                0033       INTEGER myIter
5a2fc21c93 Jean*0034       INTEGER myThid
4ff1cd5702 Jean*0035 CEOP
5a2fc21c93 Jean*0036 
                0037 #ifdef COMPONENT_MODULE
49715ba709 Jean*0038 C     !LOCAL VARIABLES:
5a2fc21c93 Jean*0039 C     == Local variables ==
                0040 
                0041 C     Fetch data from coupling layer. Note MIT Coupler checkpoint1
                0042 C     does not allow asynchronous extraction of data, so ordering
                0043 C     has to be consistent with ordering coupling layer.
                0044 
49715ba709 Jean*0045       _BARRIER
                0046       _BEGIN_MASTER( myThid )
                0047 
5a2fc21c93 Jean*0048 C-    Receive ocean mixed-layer thickness from coupling layer.
                0049       CALL COMPRECV_R8TILES( atmMxlDName,
c121b6d611 Jean*0050      I                       sNx, OLx, sNy, OLy, 1, nSx, nSy,
                0051      O                       ocMxlD )
5a2fc21c93 Jean*0052 
                0053 C-    Receive ocean surface temperatures from coupling layer.
                0054       CALL COMPRECV_R8TILES( atmSSTName,
c121b6d611 Jean*0055      I                       sNx, OLx, sNy, OLy, 1, nSx, nSy,
                0056      O                       SSTocn )
5a2fc21c93 Jean*0057 
                0058 C-    Receive ocean surface salinity from coupling layer.
                0059       CALL COMPRECV_R8TILES( atmSSSName,
c121b6d611 Jean*0060      I                       sNx, OLx, sNy, OLy, 1, nSx, nSy,
                0061      O                       SSSocn )
5a2fc21c93 Jean*0062 
                0063 C-    Receive ocean surface velocity square from coupling layer.
                0064       CALL COMPRECV_R8TILES( atmSSVsqName,
c121b6d611 Jean*0065      I                       sNx, OLx, sNy, OLy, 1, nSx, nSy,
                0066      O                       vSqocn )
5a2fc21c93 Jean*0067 
c121b6d611 Jean*0068 #ifdef ALLOW_AIM
4ff1cd5702 Jean*0069 C-    Receive air-sea flux of CO2
b93274141a Jean*0070       IF ( atm_cplExch_DIC ) THEN
                0071         CALL COMPRECV_R8TILES( atmCO2FluxName,
c121b6d611 Jean*0072      I                         sNx, OLx, sNy, OLy, 1, nSx, nSy,
                0073      O                         flxCO2ocn )
4ff1cd5702 Jean*0074       ENDIF
c121b6d611 Jean*0075 #endif /* ALLOW_AIM */
                0076 #ifdef ALLOW_THSICE
                0077       IF ( atm_cplExch2W_sIce ) THEN
                0078 C-    Receive seaice fraction:
                0079         CALL COMPRECV_R8TILES( atmSIceFracName,
                0080      I                         sNx, OLx, sNy, OLy, 1, nSx, nSy,
                0081      O                         sIceFrac_cpl )
                0082 C-    Receive seaice thickness:
                0083         CALL COMPRECV_R8TILES( atmSIceThickName,
                0084      I                         sNx, OLx, sNy, OLy, 1, nSx, nSy,
                0085      O                         sIceThick_cpl )
                0086 C-    Receive snow thickness:
                0087         CALL COMPRECV_R8TILES( atmSIceSnowName,
                0088      I                         sNx, OLx, sNy, OLy, 1, nSx, nSy,
                0089      O                         sIceSnowH_cpl )
                0090 C-    Receive seaice enthalpy (layer 1):
                0091         CALL COMPRECV_R8TILES( atmSIceQ1Name,
                0092      I                         sNx, OLx, sNy, OLy, 1, nSx, nSy,
                0093      O                         sIceQ1_cpl )
                0094 C-    Receive seaice enthalpy (layer 2):
                0095         CALL COMPRECV_R8TILES( atmSIceQ2Name,
                0096      I                         sNx, OLx, sNy, OLy, 1, nSx, nSy,
                0097      O                         sIceQ2_cpl )
                0098       ENDIF
                0099 #endif /* ALLOW_THSICE */
4ff1cd5702 Jean*0100 
49715ba709 Jean*0101       _END_MASTER( myThid )
                0102       _BARRIER
                0103 
5a2fc21c93 Jean*0104 #endif /* COMPONENT_MODULE */
                0105 
                0106       RETURN
                0107       END