C $Header: /home/ubuntu/mnt/e9_copy/MITgcm/pkg/ocn_compon_interf/ocn_import_fields.F,v 1.3 2009/12/25 19:45:13 jmc Exp $ C $Name: checkpoint64i $ #include "PACKAGES_CONFIG.h" #include "CPP_OPTIONS.h" CBOP 0 C !ROUTINE: OCN_IMPORT_FIELDS C !INTERFACE: SUBROUTINE OCN_IMPORT_FIELDS( myThid ) C !DESCRIPTION: C *==========================================================* C | SUBROUTINE OCN_IMPORT_FIELDS C | o Routine for importing fields (e.g. surface fluxes) C | from coupling layer. C *==========================================================* C | This version talks to the MIT Coupler. It uses the C | MIT Coupler "checkpoint 1" library calls. C *==========================================================* C !USES: IMPLICIT NONE C == Global variables == #include "SIZE.h" #include "EEPARAMS.h" #include "OCNIDS.h" #include "OCNCPL.h" C !INPUT/OUTPUT PARAMETERS: C == Routine arguments == C myThid :: Thread number for this instance of the routine INTEGER myThid CEOP #ifdef COMPONENT_MODULE C !LOCAL VARIABLES: C Note: 1) all fields will have been gridded onto ocean grid. C 2) MIT Coupler checkpoint1 does not allow asynchronous posting of C data, so ordering has to be consistent with coupling layer ordering _BARRIER _BEGIN_MASTER( myThid ) C- Receive Atmospheric Sea-Level pressure from coupling layer. CALL COMPRECV_R8TILES( ocnSLPrName, I sNx, OLx, sNy, OLy, 1, nSx, nSy, O atmSLPr ) C- Receive surface heatflux from coupling layer. CALL COMPRECV_R8TILES( ocnHeatFluxName, I sNx, OLx, sNy, OLy, 1, nSx, nSy, O HeatFlux ) C- Receive net shortwave radiation from coupling layer. CALL COMPRECV_R8TILES( ocnQshortWaveName, I sNx, OLx, sNy, OLy, 1, nSx, nSy, O qShortWave ) C- Receive Zonal surface wind-stress from coupling layer. CALL COMPRECV_R8TILES( ocnTauXName, I sNx, OLx, sNy, OLy, 1, nSx, nSy, O tauX ) C- Receive Meridional surface wind-stress from coupling layer. CALL COMPRECV_R8TILES( ocnTauYName, I sNx, OLx, sNy, OLy, 1, nSx, nSy, O tauY ) C- Receive fresh water flux from coupling layer. CALL COMPRECV_R8TILES( ocnFWFluxName, I sNx, OLx, sNy, OLy, 1, nSx, nSy, O FWFlux ) C- Receive salt flux (sea-ice model) from coupling layer. CALL COMPRECV_R8TILES( ocnSaltFxName, I sNx, OLx, sNy, OLy, 1, nSx, nSy, O iceSaltFlx ) C- Receive sea-ice mass (sea-ice model) from coupling layer. CALL COMPRECV_R8TILES( ocnSeaIceName, I sNx, OLx, sNy, OLy, 1, nSx, nSy, O seaIceMass ) IF ( ocnCpl_exchange_DIC ) THEN C- Receive atmos CO2 level from coupling layer. CALL COMPRECV_R8TILES( ocnAirCO2Name, I sNx, OLx, sNy, OLy, 1, nSx, nSy, O airCO2 ) C- Receive ground-level windspeed from coupling layer. CALL COMPRECV_R8TILES( ocnWSpdName, I sNx, OLx, sNy, OLy, 1, nSx, nSy, O surfWSpeed ) C- Receive seaice fraction from coupling layer. CALL COMPRECV_R8TILES( ocnFIceName, I sNx, OLx, sNy, OLy, 1, nSx, nSy, O fracIce ) ENDIF _END_MASTER( myThid ) _BARRIER #endif /* COMPONENT_MODULE */ RETURN END