/[MITgcm]/MITgcm/pkg/atm_ocn_coupler/cpl_send_ocn_fields.F
ViewVC logotype

Contents of /MITgcm/pkg/atm_ocn_coupler/cpl_send_ocn_fields.F

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


Revision 1.5 - (show annotations) (download)
Mon Jun 18 21:20:35 2007 UTC (16 years, 11 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint64y, checkpoint64x, checkpoint64z, checkpoint64q, checkpoint64p, checkpoint64s, checkpoint64r, checkpoint64u, checkpoint64t, checkpoint64w, checkpoint64v, checkpoint64i, checkpoint64h, checkpoint64k, checkpoint64j, checkpoint64m, checkpoint64l, checkpoint64o, checkpoint64n, checkpoint64a, checkpoint64c, checkpoint64b, checkpoint64e, checkpoint64d, checkpoint64g, checkpoint64f, checkpoint63p, checkpoint63q, checkpoint63r, checkpoint63s, checkpoint63l, checkpoint63m, checkpoint63n, checkpoint63o, checkpoint63h, checkpoint63i, checkpoint63j, checkpoint63k, checkpoint63d, checkpoint63e, checkpoint63f, checkpoint63g, checkpoint63a, checkpoint63b, checkpoint63c, checkpoint64, checkpoint65, checkpoint60, checkpoint61, checkpoint62, checkpoint63, checkpoint65p, checkpoint65j, checkpoint65k, checkpoint65h, checkpoint65i, checkpoint65n, checkpoint65o, checkpoint65l, checkpoint65m, checkpoint65b, checkpoint65c, checkpoint65a, checkpoint65f, checkpoint65g, checkpoint65d, checkpoint65e, checkpoint59q, checkpoint59p, checkpoint59r, checkpoint59e, checkpoint59d, checkpoint59g, checkpoint59f, checkpoint59m, checkpoint59l, checkpoint59o, checkpoint59n, checkpoint59i, checkpoint59h, checkpoint59k, checkpoint59j, checkpoint62c, checkpoint62b, checkpoint62a, checkpoint62g, checkpoint62f, checkpoint62e, checkpoint62d, checkpoint62k, checkpoint62j, checkpoint62i, checkpoint62h, checkpoint62o, checkpoint62n, checkpoint62m, checkpoint62l, checkpoint62s, checkpoint62r, checkpoint62q, checkpoint62p, checkpoint62w, checkpoint62v, checkpoint62u, checkpoint62t, checkpoint62z, checkpoint62y, checkpoint62x, checkpoint61f, checkpoint61g, checkpoint61d, checkpoint61e, checkpoint61b, checkpoint61c, checkpoint61a, checkpoint61n, checkpoint61o, checkpoint61l, checkpoint61m, checkpoint61j, checkpoint61k, checkpoint61h, checkpoint61i, checkpoint61v, checkpoint61w, checkpoint61t, checkpoint61u, checkpoint61r, checkpoint61s, checkpoint61p, checkpoint61q, checkpoint61z, checkpoint61x, checkpoint61y
Changes since 1.4: +51 -44 lines
import/export DIC fields from/to Atmospheric component.

1 C $Header: /u/gcmpack/MITgcm/pkg/atm_ocn_coupler/cpl_send_ocn_fields.F,v 1.4 2007/05/10 21:58:12 jscott Exp $
2 C $Name: $
3
4 #include "CPP_OPTIONS.h"
5
6 CBOP
7 C !ROUTINE: CPL_SEND_OCN_FIELDS
8 C !INTERFACE:
9 SUBROUTINE CPL_SEND_OCN_FIELDS
10
11 C !DESCRIPTION: \bv
12 C *==========================================================*
13 C | SUBROUTINE CPL_SEND_OCN_FIELDS
14 C | o Routine for sending surface flux to ocean component
15 C *==========================================================*
16 C | This version talks to the MITgcm general circulation
17 C | model.
18 C *==========================================================*
19 C \ev
20
21 C !USES:
22 IMPLICIT NONE
23
24 C == Global variables ==
25 #include "ATMSIZE.h"
26 #include "ATMVARS.h"
27 #include "OCNSIZE.h"
28 #include "OCNVARS.h"
29 #include "OCNIDS.h"
30
31 C !INPUT/OUTPUT PARAMETERS:
32
33 C !LOCAL VARIABLES:
34
35 CEOP
36
37 C-- Map Sea Level atmos. pressure onto ocean grid
38 CALL ATM_TO_OCN_MAPXYR8(
39 I Nx_atm, Ny_atm, atmSLPr_atm, Nx_ocn, Ny_ocn,
40 O atmSLPr_ocn )
41 C Send Sea Level atmos. pressure to ocean component
42 CALL COUPSEND_R8TILES( ocnCompName, ocnSLPrName,
43 I Nx_ocn, Ny_ocn, atmSLPr_ocn )
44
45 C-- Map heatflux onto ocean grid
46 CALL ATM_TO_OCN_MAPXYR8(
47 I Nx_atm, Ny_atm, HeatFlux_atm, Nx_ocn, Ny_ocn,
48 O HeatFlux_ocn )
49 C Map Energy flux carried by RunOff onto ocean grid and substract it
50 C from previous (direct) FWFlux => total Heat-Flux = Qnet - EnRunOff
51 CALL ATM_TO_OCN_MAPRUNOFF(
52 I ROEnFx_atm,
53 U HeatFlux_ocn)
54 C Send (net) heatflux. to ocean component
55 CALL COUPSEND_R8TILES( ocnCompName, ocnHeatFluxName,
56 I Nx_ocn, Ny_ocn, HeatFlux_ocn )
57
58 C-- Map net shortwave radiation onto ocean grid
59 CALL ATM_TO_OCN_MAPXYR8(
60 I Nx_atm, Ny_atm, qShortWave_atm, Nx_ocn, Ny_ocn,
61 O qShortWave_ocn )
62 C Send net shortwave radiation to ocean component
63 CALL COUPSEND_R8TILES( ocnCompName, ocnQshortWaveName,
64 I Nx_ocn, Ny_ocn, qShortWave_ocn )
65
66 C-- Map Zonal momentum flux onto ocean grid
67 CALL ATM_TO_OCN_MAPXYR8(
68 I Nx_atm, Ny_atm, TauX_atm, Nx_ocn, Ny_ocn,
69 O TauX_ocn )
70 C Send Zonal momentum flux to ocean component
71 CALL COUPSEND_R8TILES( ocnCompName, ocnTauXName,
72 I Nx_ocn, Ny_ocn, TauX_ocn )
73
74 C-- Map Meridional momentum flux onto ocean grid
75 CALL ATM_TO_OCN_MAPXYR8(
76 I Nx_atm, Ny_atm, TauY_atm, Nx_ocn, Ny_ocn,
77 O TauY_ocn )
78 C Send Meridional momentum flux to ocean component
79 CALL COUPSEND_R8TILES( ocnCompName, ocnTauYName,
80 I Nx_ocn, Ny_ocn, TauY_ocn )
81
82 C-- Map atmos. fresh water flux onto ocean grid : Evap - Precip
83 CALL ATM_TO_OCN_MAPXYR8(
84 I Nx_atm, Ny_atm, EvMPr_atm, Nx_ocn, Ny_ocn,
85 O FWFlux_ocn )
86 C Map atmos. runOff from land onto ocean grid and substract it
87 C from previous (direct) FWFlux => total FWFlux = E-P-R
88 CALL ATM_TO_OCN_MAPRUNOFF(
89 I RunOff_atm,
90 U FWFlux_ocn)
91 C Send E-P-R to ocean component
92 CALL COUPSEND_R8TILES( ocnCompName, ocnFWFluxName,
93 I Nx_ocn, Ny_ocn, FWFlux_ocn )
94
95 C-- Map salt flux from sea-ice compon. onto ocean grid
96 CALL ATM_TO_OCN_MAPXYR8(
97 I Nx_atm, Ny_atm, SaltFlx_atm, Nx_ocn, Ny_ocn,
98 O SaltFlx_ocn )
99 C Send salt flux to ocean component
100 CALL COUPSEND_R8TILES( ocnCompName, ocnSaltFxName,
101 I Nx_ocn, Ny_ocn, SaltFlx_ocn )
102
103 C-- Map sea-ice mass onto ocean grid
104 CALL ATM_TO_OCN_MAPXYR8(
105 I Nx_atm, Ny_atm, sIceMass_atm, Nx_ocn, Ny_ocn,
106 O sIceMass_ocn )
107 C Send sea-ice mass to ocean component
108 CALL COUPSEND_R8TILES( ocnCompName, ocnSeaIceName,
109 I Nx_ocn, Ny_ocn, sIceMass_ocn )
110
111 IF ( ocnCpl_exchange_DIC ) THEN
112
113 C-- Map atmos CO2 onto ocean grid
114 CALL ATM_TO_OCN_MAPXYR8(
115 I Nx_atm, Ny_atm, aCO2_atm, Nx_ocn, Ny_ocn,
116 O aCO2_ocn )
117 C Send atmos CO2 to ocean component
118 CALL COUPSEND_R8TILES( ocnCompName, ocnAirCO2Name,
119 I Nx_ocn, Ny_ocn, aCO2_ocn )
120
121 C-- Map surf wind speed onto ocean grid
122 CALL ATM_TO_OCN_MAPXYR8(
123 I Nx_atm, Ny_atm, wSpeed_atm, Nx_ocn, Ny_ocn,
124 O wSpeed_ocn )
125 C Send surface windspeed to ocean component
126 CALL COUPSEND_R8TILES( ocnCompName, ocnWSpdName,
127 I Nx_ocn, Ny_ocn, wSpeed_ocn )
128
129 C-- Map seaice fraction from sea-ice compon. onto ocean grid
130 CALL ATM_TO_OCN_MAPXYR8(
131 I Nx_atm, Ny_atm, SIceFrac_atm, Nx_ocn, Ny_ocn,
132 O SIceFrac_ocn )
133 C Send sea-ice fraction to ocean component
134 CALL COUPSEND_R8TILES( ocnCompName, ocnFIceName,
135 I Nx_ocn, Ny_ocn, SIceFrac_ocn )
136
137 ENDIF
138
139 RETURN
140 END

  ViewVC Help
Powered by ViewVC 1.1.22