13 |
#include "ATMSIZE.h" |
#include "ATMSIZE.h" |
14 |
#include "SIZE.h" |
#include "SIZE.h" |
15 |
#include "EEPARAMS.h" |
#include "EEPARAMS.h" |
16 |
|
#include "THSICE_VARS.h" |
17 |
#include "ATM2D_VARS.h" |
#include "ATM2D_VARS.h" |
18 |
|
|
19 |
#ifdef ATM2D_MPI_ON |
#ifdef ATM2D_MPI_ON |
20 |
# include "OCNSIZE.h" |
# include "OCNSIZE.h" |
21 |
# include "OCNVARS.h" |
# include "OCNVARS.h" |
22 |
|
# include "OCNIDS.h" |
23 |
#else |
#else |
24 |
# include "PARAMS.h" |
# include "PARAMS.h" |
25 |
# include "FFIELDS.h" |
# include "FFIELDS.h" |
26 |
# include "SURFACE.h" |
# include "SURFACE.h" |
27 |
|
# ifdef ALLOW_DIC |
28 |
|
# include "DIC_ABIOTIC.h" |
29 |
|
# endif |
30 |
#endif |
#endif |
31 |
|
|
32 |
C !INPUT/OUTPUT PARAMETERS: |
C !INPUT/OUTPUT PARAMETERS: |
41 |
C LOCAL VARIABLES: |
C LOCAL VARIABLES: |
42 |
INTEGER i,j |
INTEGER i,j |
43 |
|
|
|
#ifdef ATM2D_MPI_ON |
|
44 |
DO j=1,sNy |
DO j=1,sNy |
45 |
DO i=1,sNx |
DO i=1,sNx |
46 |
|
|
47 |
|
#ifdef ATM2D_MPI_ON |
48 |
|
|
49 |
C OCNVARS common set from ATM2D common |
C OCNVARS common set from ATM2D common |
50 |
atmSLPr_ocn(i,j)= pass_slp(i,j) |
atmSLPr_ocn(i,j)= pass_slp(i,j) |
51 |
HeatFlux_ocn(i,j)= pass_qnet(i,j) |
HeatFlux_ocn(i,j)= pass_qnet(i,j) |
55 |
FWFlux_ocn(i,j)= pass_precip(i,j) + pass_evap(i,j) |
FWFlux_ocn(i,j)= pass_precip(i,j) + pass_evap(i,j) |
56 |
& + pass_runoff(i,j) |
& + pass_runoff(i,j) |
57 |
SaltFlx_ocn(i,j) = sFluxFromIce(i,j) |
SaltFlx_ocn(i,j) = sFluxFromIce(i,j) |
58 |
C need to pass seaice mass? |
# ifdef ATMOSPHERIC_LOADING |
59 |
C need to pass wspeed and pCO2 |
sIceMass_ocn(i,j) = pass_sIceLoad(i,j) |
60 |
|
# endif /* ATMOSPHERIC_LOADING */ |
61 |
|
IF ( ocnCpl_exchange_DIC ) THEN |
62 |
|
aCO2_ocn(i,j) = pass_pCO2(i,j) |
63 |
|
wSpeed_ocn(i,j) = pass_wspeed(i,j) |
64 |
|
sIceFrac_ocn(i,j) = iceMask(i,j,1,1) |
65 |
|
ENDIF |
66 |
|
|
|
ENDDO |
|
|
ENDDO |
|
67 |
#else |
#else |
68 |
C FFIELDS.h common block set from ATM2D common |
C FFIELDS.h common block set from ATM2D common |
|
DO j=1,sNy |
|
|
DO i=1,sNx |
|
69 |
|
|
70 |
C pLoad(i,j,1,1)= pass_slp(i,j) |
pLoad(i,j,1,1)= pass_slp(i,j) |
|
C _EXCH_XY_R4(pLoad, myThid ) |
|
71 |
Qnet(i,j,1,1)= pass_qnet(i,j) |
Qnet(i,j,1,1)= pass_qnet(i,j) |
72 |
Qsw(i,j,1,1)= pass_solarnet(i,j) |
Qsw(i,j,1,1)= pass_solarnet(i,j) |
73 |
fu(i,j,1,1)= pass_fu(i,j) |
fu(i,j,1,1)= pass_fu(i,j) |
78 |
|
|
79 |
CALL EXCH_UV_XY_RS(fu,fv,.TRUE.,myThid) |
CALL EXCH_UV_XY_RS(fu,fv,.TRUE.,myThid) |
80 |
_EXCH_XY_R4(EmPmR, myThid ) !for NL Free surf? |
_EXCH_XY_R4(EmPmR, myThid ) !for NL Free surf? |
81 |
|
_EXCH_XY_R4(saltFlux, myThid ) |
82 |
|
_EXCH_XY_R4(Qnet, myThid ) |
83 |
|
_EXCH_XY_R4(Qsw, myThid ) |
84 |
|
|
85 |
# ifdef ATMOSPHERIC_LOADING |
# ifdef ATMOSPHERIC_LOADING |
86 |
Cjrs ask J-M about this |
sIceLoad(i,j,1,1) = pass_sIceLoad(i,j) |
87 |
C phi0surf(i,j,1,1) = pass_slp(i,j)*recip_rhoConst |
_EXCH_XY_R4(pLoad, myThid ) |
88 |
|
_EXCH_XY_R4( sIceLoad, myThid ) |
89 |
|
C phi0surf(i,j,1,1) = pass_slp(i,j)*recip_rhoConst |
90 |
C & + gravity*seaIceMass(i,j,1,1)*recip_rhoConst |
C & + gravity*seaIceMass(i,j,1,1)*recip_rhoConst |
91 |
# endif /* ATMOSPHERIC_LOADING */ |
# endif /* ATMOSPHERIC_LOADING */ |
92 |
|
|
93 |
C need to pass seaice mass? seaIceLoad(i,j,1,1)= |
# ifdef ALLOW_DIC |
94 |
C need to pass wspeed and pCO2 |
C icemask should be imported in DIC code |
95 |
|
AtmospCO2(i,j,1,1)= pass_pCO2(i,j) |
96 |
|
wind(i,j,1,1)= pass_wspeed(i,j) |
97 |
|
_EXCH_XY_R4(AtmospCO2 , myThid ) |
98 |
|
_EXCH_XY_R4(wind , myThid ) |
99 |
|
# endif /* ALLOW_DIC */ |
100 |
|
|
101 |
|
#endif /* ATM2D_MPI_ON */ |
102 |
|
|
103 |
ENDDO |
ENDDO |
104 |
ENDDO |
ENDDO |
105 |
|
|
|
#endif |
|
|
|
|
|
C PRINT *,'***After seaice thicken/extend' |
|
|
C PRINT *,'pass_runoff:',pass_runoff(JBUGI,JBUGJ) |
|
|
C PRINT *,'pass_precip:',pass_precip(JBUGI,JBUGJ) |
|
|
C PRINT *,'pass_evap:', pass_evap(JBUGI,JBUGJ) |
|
|
C PRINT *,'pass_qnet:',pass_qnet(JBUGI,JBUGJ) |
|
|
C PRINT *,'pass_fu:',pass_fu(JBUGI,JBUGJ) |
|
|
C PRINT *,'sFluxFromIce:',sFluxFromIce(JBUGI,JBUGJ) |
|
|
C PRINT *,'slp:',pass_slp(JBUGI,JBUGJ) |
|
|
|
|
106 |
RETURN |
RETURN |
107 |
END |
END |
108 |
|
|