/[MITgcm]/MITgcm/pkg/atm_compon_interf/atm_export_fields.F
ViewVC logotype

Contents of /MITgcm/pkg/atm_compon_interf/atm_export_fields.F

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


Revision 1.2 - (show annotations) (download)
Wed Jan 6 00:42:51 2016 UTC (8 years, 3 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint66g, checkpoint66f, checkpoint66e, checkpoint66d, checkpoint66c, checkpoint66b, checkpoint66a, checkpoint66o, checkpoint66n, checkpoint66m, checkpoint66l, checkpoint66k, checkpoint66j, checkpoint66i, checkpoint66h, checkpoint65z, checkpoint65x, checkpoint65y, checkpoint65s, checkpoint65v, checkpoint65w, checkpoint65t, checkpoint65u, HEAD
Changes since 1.1: +44 -10 lines
- to save memory space in ATM & OCN comp: add some #ifdef ALLOW_${PKG} around
  optionally exchanged fields (ALLOW_LAND for RunOff, ALLOW_THSICE for seaice,
   ALLOW_AIM for CO2)
- rename:   fracIce     -> sIceFrac_cpl (<- match coupler var name)
  + in ATM: fracIceTime -> sIceFracTime ; seaIceTime -> sIceMassTime.
- add 2-way thSIce vars exchange ; add Salt-Plume flux

1 C $Header: /u/gcmpack/MITgcm/pkg/atm_compon_interf/atm_export_fields.F,v 1.1 2015/12/31 21:20:25 jmc Exp $
2 C $Name: $
3
4 #include "ATM_CPL_OPTIONS.h"
5
6 CBOP
7 C !ROUTINE: ATM_EXPORT_FIELDS
8 C !INTERFACE:
9 SUBROUTINE ATM_EXPORT_FIELDS( myIter, myThid )
10
11 C !DESCRIPTION: \bv
12 C *==========================================================*
13 C | SUBROUTINE ATM_EXPORT_FIELDS
14 C | o Routine for exporting atmos. surface coupling fields
15 C | to coupling layer.
16 C *==========================================================*
17 C | This version talks to the MIT Coupler. It uses the MIT
18 C | Coupler "checkpoint1" library calls.
19 C *==========================================================*
20 C \ev
21
22 C !USES:
23 IMPLICIT NONE
24
25 C == Global variables ==
26 #include "SIZE.h"
27 #include "EEPARAMS.h"
28 #include "CPL_PARAMS.h"
29 #include "ATMCPL.h"
30 #include "ATMIDS.h"
31
32 C !INPUT/OUTPUT PARAMETERS:
33 C == Routine arguments ==
34 C myIter :: Current timestep number.
35 C myThid :: Thread number for this instance of the routine.
36 INTEGER myIter
37 INTEGER myThid
38 CEOP
39
40 #ifdef COMPONENT_MODULE
41 C !LOCAL VARIABLES:
42 C == Local variables ==
43 C msgBuf :: Informational/error message buffer
44 c CHARACTER*(MAX_LEN_MBUF) msgBuf
45
46 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
47
48 C- Send Atmospheric fields to coupling layer
49 C Note: 1) Information is sent on the atmos. model grid.
50 C 2) MIT Coupler checkpoint1 does not allow asynchronous posting of
51 C data, so ordering has to be consistent with coupling layer ordering
52
53 C- export Sea-Level pressure:
54 CALL ATM_EXPORT_FLD( atmSLPrName,
55 U atmSLPr, atmSLPrTime, myThid )
56 C- export Net surface heat flux:
57 CALL ATM_EXPORT_FLD( atmHeatFluxName,
58 U heatFlux, HeatFluxTime, myThid )
59 C- export Net Short-Wave surface heat flux:
60 CALL ATM_EXPORT_FLD( atmQshortWaveName,
61 U qShortWave, qShortWaveTime, myThid )
62 C- export surface wind stress, Zonal & Meridional components:
63 CALL ATM_EXPORT_FLD( atmTauXName,
64 U tauX, tauXTime, myThid )
65 CALL ATM_EXPORT_FLD( atmTauYName,
66 U tauY, tauYTime, myThid )
67 C- export Net fresh water flux (Evap - Precip):
68 CALL ATM_EXPORT_FLD( atmEvMPrName,
69 U EvMPrFlux, EvMPrTime, myThid )
70 #ifdef ALLOW_LAND
71 IF ( atm_cplExch_RunOff ) THEN
72 C- export Run Off fresh water flux:
73 CALL ATM_EXPORT_FLD( atmRunOffName,
74 U RunOffFlux, RunOffTime, myThid )
75 C- export Energy flux associated with Run Off:
76 CALL ATM_EXPORT_FLD( atmROEnFxName,
77 U RunOffEnFx, ROEnFxTime, myThid )
78 ENDIF
79 #endif /* ALLOW_LAND */
80 #ifdef ALLOW_THSICE
81 IF ( atm_cplExch1W_sIce ) THEN
82 C- export Salt flux (related to sea-ice melting/freezing):
83 CALL ATM_EXPORT_FLD( atmSaltFxName,
84 U iceSaltFlx, saltFxTime, myThid )
85 C- export Sea-Ice Mass:
86 CALL ATM_EXPORT_FLD( atmSIceMassName,
87 U seaIceMass, sIceMassTime, myThid )
88 ENDIF
89 IF ( atm_cplExch_SaltPl ) THEN
90 C- export Salt-Plume flux:
91 CALL ATM_EXPORT_FLD( atmSaltPlmFlxName,
92 U saltPlmFlx_cpl, saltPlmFlxTime, myThid )
93 ENDIF
94 #endif /* ALLOW_THSICE */
95
96 #ifdef ALLOW_AIM
97 IF ( atm_cplExch_DIC ) THEN
98 C- export atmospheric CO2:
99 CALL ATM_EXPORT_FLD( atmAirCO2Name,
100 U airCO2, airCO2Time, myThid )
101
102 C- export surface wind speed:
103 CALL ATM_EXPORT_FLD( atmWindSpdName,
104 U sWSpeed, sWSpeedTime, myThid )
105 ENDIF
106 #endif /* ALLOW_AIM */
107
108 #ifdef ALLOW_THSICE
109 IF ( ( atm_cplExch1W_sIce.AND.atm_cplExch_DIC )
110 & .OR. atm_cplExch2W_sIce ) THEN
111 C- export seaice fraction:
112 CALL ATM_EXPORT_FLD( atmSIceFracName,
113 U sIceFrac_cpl, sIceFracTime, myThid )
114 ENDIF
115 IF ( atm_cplExch2W_sIce ) THEN
116 C- export seaice thickness:
117 CALL ATM_EXPORT_FLD( atmSIceThickName,
118 U sIceThick_cpl, sIceThickTime, myThid )
119 C- export snow thickness:
120 CALL ATM_EXPORT_FLD( atmSIceSnowName,
121 U sIceSnowH_cpl, sIceSnowHTime, myThid )
122 C- export seaice enthalpy (layer 1):
123 CALL ATM_EXPORT_FLD( atmSIceQ1Name,
124 U sIceQ1_cpl, sIceQ1Time, myThid )
125 C- export seaice enthalpy (layer 2):
126 CALL ATM_EXPORT_FLD( atmSIceQ2Name,
127 U sIceQ2_cpl, sIceQ2Time, myThid )
128 ENDIF
129 #endif /* ALLOW_THSICE */
130
131 #endif /* COMPONENT_MODULE */
132
133 RETURN
134 END

  ViewVC Help
Powered by ViewVC 1.1.22