/[MITgcm]/MITgcm_contrib/jscott/pkg_atm2d/put_ocnvars.F
ViewVC logotype

Contents of /MITgcm_contrib/jscott/pkg_atm2d/put_ocnvars.F

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


Revision 1.1 - (show annotations) (download)
Fri Aug 11 18:55:50 2006 UTC (19 years, 4 months ago) by jscott
Branch: MAIN
new 2d atm package

1 #include "ctrparam.h"
2 #include "ATM2D_OPTIONS.h"
3
4 C !INTERFACE:
5 SUBROUTINE PUT_OCNVARS( myTime, myIter, myThid )
6 C *==========================================================*
7 C | |
8 c | |
9 C *==========================================================*
10 IMPLICIT NONE
11
12 C === Global Atmosphere Variables ===
13 #include "ATMSIZE.h"
14 #include "SIZE.h"
15 #include "EEPARAMS.h"
16 #include "ATM2D_VARS.h"
17
18 Cnext line debugging only
19 #include "THSICE_VARS.h"
20
21 #ifdef MPI_ON
22 # include "OCNSIZE.h"
23 # include "OCNVARS.h"
24 #else
25 # include "PARAMS.h"
26 # include "FFIELDS.h"
27 # include "SURFACE.h"
28 #endif
29
30 C !INPUT/OUTPUT PARAMETERS:
31 C === Routine arguments ===
32 C myTime - current simulation time (ocean model time)
33 C myIter - iteration number (ocean model)
34 C myThid - Thread no. that called this routine.
35 _RL myTime
36 INTEGER myIter
37 INTEGER myThid
38
39 C LOCAL VARIABLES:
40 INTEGER i,j
41
42 #ifdef MPI_ON
43 DO j=1,sNy
44 DO i=1,sNx
45
46 C OCNVARS common set from ATM2D common
47 atmSLPr_ocn(i,j)= pass_slp(i,j)
48 HeatFlux_ocn(i,j)= pass_qnet(i,j)
49 qShortWave_ocn(i,j)= pass_solarnet(i,j)
50 TauX_ocn(i,j)= pass_fu(i,j)
51 TauY_ocn(i,j)= pass_fv(i,j)
52 FWFlux_ocn(i,j)= pass_precip(i,j) + pass_evap(i,j)
53 & + pass_runoff(i,j)
54 SaltFlx_ocn(i,j) = sFluxFromIce(i,j)
55 C need to pass seaice mass?
56 C need to pass wspeed and pCO2
57
58 ENDDO
59 ENDDO
60 #else
61 C FFIELDS.h common block set from ATM2D common
62 DO j=1,sNy
63 DO i=1,sNx
64
65 C pLoad(i,j,1,1)= pass_slp(i,j)
66 C _EXCH_XY_R4(pLoad, myThid )
67 Qnet(i,j,1,1)= pass_qnet(i,j)
68 Qsw(i,j,1,1)= pass_solarnet(i,j)
69 fu(i,j,1,1)= pass_fu(i,j)
70 fv(i,j,1,1)= pass_fv(i,j)
71 EmPmR(i,j,1,1)= pass_precip(i,j) + pass_evap(i,j)
72 & + pass_runoff(i,j)
73 saltFlux(i,j,1,1)= sFluxFromIce(i,j)
74
75 CALL EXCH_UV_XY_RS(fu,fv,.TRUE.,myThid)
76 _EXCH_XY_R4(EmPmR, myThid ) !for NL Free surf?
77
78 # ifdef ATMOSPHERIC_LOADING
79 Cjrs ask J-M
80 C phi0surf(i,j,1,1) = pass_slp(i,j)*recip_rhoConst
81 C & + gravity*seaIceMass(i,j,1,1)*recip_rhoConst
82 # endif /* ATMOSPHERIC_LOADING */
83
84 C need to pass seaice mass? seaIceLoad(i,j,1,1)=
85 C need to pass wspeed and pCO2
86
87 ENDDO
88 ENDDO
89
90 #endif
91 PRINT *,'***After seaice thicken/extend'
92 PRINT *,'Icemask: ',icemask(JBUGI,JBUGJ,1,1)
93 PRINT *,'Iceheight: ',iceheight(JBUGI,JBUGJ,1,1)
94 PRINT *,'pass_runoff:',pass_runoff(JBUGI,JBUGJ)
95 PRINT *,'pass_precip:',pass_precip(JBUGI,JBUGJ)
96 PRINT *,'pass_evap:', pass_evap(JBUGI,JBUGJ)
97 PRINT *,'pass_qnet:',pass_qnet(JBUGI,JBUGJ)
98 PRINT *,'pass_fu:',pass_fu(JBUGI,JBUGJ)
99 PRINT *,'sFluxFromIce:',sFluxFromIce(JBUGI,JBUGJ)
100 PRINT *,'slp:',pass_slp(JBUGI,JBUGJ)
101
102 RETURN
103 END
104

  ViewVC Help
Powered by ViewVC 1.1.22