D. \underline{Temporal Coordination of the Fluxes}

The Flux Coupler contains two nested loops. For each outer loop iteration, the coupler sends one message to the ocean and receives one message from the ocean model. As part of the initial information exchange, the ocean model passes to the coupler a positive integer, ncpl o, which is the number of times per day that the ocean model will exchange messages with the coupler. Thus, the longest interval possible at present is one day, and this is the most common value used in coupled integrations to date. The ocean model determines from ncpl o how many timesteps are needed between message passing based on its own internal timestep.

The atmosphere, land, and sea-ice models also send the coupler a positive integer, which is the number of times per day that these models will exchange messages with the coupler. In theory, the coupler could communicate with these models over different time periods, but at present all three models receive and send messages over the same interval. Thus the communication between the atmosphere, land, and sea-ice models occurs in the inner loop in the coupler. For each inner loop iteration, the coupler sends and receives one message to and from the atmosphere, sea-ice, and land models. The Flux Coupler checks that the integers sent by the atmosphere, land, and sea-ice models are the same, and then calculates the number of inner loop iterations per outer loop iteration as ncpl a / ncpl o, which must be an integer. ncpl a is the number of times per day that the atmosphere will communicate with the coupler and is passed to the coupler in the initial information exchange. The atmosphere model determines from ncpl a how many timesteps are needed between message passing based on its own internal timestep. The land and sea-ice models also do this based on their own internal timesteps.

Input flux means fluxes given by the coupler to a model. Output flux means fluxes computed within a model and given to the coupler. All input fluxes for one model were either computed by the coupler or were the output flux of another model. In general, a given flux field between any two component models may have been computed in one of three places: within either of the two models or within the coupler.

One function of the coupler is to gather, merge, sum, and/or time-average various flux fields from various sources and form a complete set of input fluxes for each component model. This gathering and merging process will generally involve mapping flux fields between various model grids and combining like fields from several grids onto one grid. A summation might be required, e.g., net heat flux = solar + latent + sensible + longwave (see encircled crosses in Fig. 1). Also, for some flux fields the coupler might be required to form time-averaged quantities. Thus component fluxes are mapped, merged, summed, and/or time-averaged by the coupler in order to form complete input fluxes for the models. Component fluxes that are gathered, merged, summed, and/or time–averaged to form the complete input fluxes are:

D-1

(Section C)

o F aid = atm/ice flux, computed by the drv (F_{1}d) o F aia = atm/ice flux, computed by the atm model (an atm output flux) (F_{1}a) o F ald = atm/lnd flux, computed by the drv (F_{2}d) o F ala = atm/lnd flux, computed by the atm model (an atm output flux) (F_{2}a) o F all = atm/lnd flux, computed by the lnd model (a lnd output flux) (F_{2}l) o F aod = atm/ocn flux, computed by the drv (F_{3}d) o F aoa = atm/ocn flux, computed by the atm model (an atm output flux) (F_{3}a) o F iod = ice/ocn flux, computed by the drv (F_{4}d) o F ioo = ice/ocn flux, computed by the ocn model (an ocn output flux) (F_{4}o) o F ioi = ice/ocn flux, computed by the ice model (an ice output flux) (F_{4}l) o F lol = lnd/ocn flux, computed by the lnd model (a lnd output flux) (F_{5}l)

Examples: (Section C) o F aid: momentum flux between the atm and ice (τ⃗_{1}) o F aia: net shortwave radiation between the atm and ice (S_{1}) o F ald: momentum flux between the atm and lnd (τ⃗_{2}) o F ala: net shortwave radiation between the atm and lnd (S_{2}) o F aod: momentum flux between the atm and ocn (τ⃗_{3}) o F aoa: net shortwave radiation between the atm and ocn (S_{3}) o F iod: momentum flux between the ocn and ice (τ⃗_{4}) o F ioi: net shortwave radiation between the ocn and ice (S_{4}) o F ioo: ice formed within the ocn (Q_{H}) o F lol: ocean runoff formed within the lnd (F_{S})

Complete input fluxes (an overbar denotes a daily average): o F axx = all atm model input fluxes: a mapping/merging/summation of: F aod, F aid,

F ald, F all o F lxx = all lnd model input fluxes: a mapping/merging/summation of: F ald, F ala o F oxx = all ocn model input fluxes: a mapping/merging/summation/time-averaging

of: \overline{F aod}, \overline{F aoa}, \overline{F ioi}, \overline{F iod}, \overline{F lol} o F ixx = all ice model input fluxes: a mapping/merging/summation/time-averaging of:

F aid, F aia, \overline{F ioo}, F iod

These time-average fluxes will need to be formed: o \overline{F aid} = atm/ice fluxes, computed by the driver, time averaged by the driver o \overline{F aia} = atm/ice fluxes, computed by the atm model, time averaged by the driver o \overline{F aoa} = atm/ocn fluxes, computed by the atm model, time averaged by the driver o \overline{F aod} = atm/ocn fluxes, computed by the driver, time averaged by the driver o \overline{F ioo} = ice/ocn fluxes, computed by the ocn model, time averaged by the ocn o \overline{F ioi} = ice/ocn fluxes, computed by the ice model, time averaged by the ice

D-2