/[MITgcm]/MITgcm/pkg/aim_v23/aim_aim2land.F
ViewVC logotype

Annotation of /MITgcm/pkg/aim_v23/aim_aim2land.F

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


Revision 1.3 - (hide annotations) (download)
Fri May 21 17:43:04 2004 UTC (20 years, 1 month ago) by jmc
Branch: MAIN
CVS Tags: checkpoint64y, checkpoint64x, checkpoint58l_post, checkpoint64z, checkpoint57t_post, checkpoint64q, checkpoint64p, checkpoint64s, checkpoint64r, checkpoint64u, checkpoint64t, checkpoint64w, checkpoint64v, checkpoint64i, checkpoint64h, checkpoint64k, checkpoint64j, checkpoint64m, checkpoint64l, checkpoint64o, checkpoint64n, checkpoint64a, checkpoint57o_post, checkpoint64c, checkpoint64b, checkpoint64e, checkpoint64d, checkpoint64g, checkpoint64f, checkpoint58e_post, checkpoint57v_post, checkpoint53d_post, checkpoint58u_post, checkpoint58w_post, checkpoint54a_pre, checkpoint57m_post, checkpoint55c_post, checkpoint54e_post, checkpoint57s_post, checkpoint54a_post, checkpoint63p, checkpoint63q, checkpoint63r, checkpoint63s, checkpoint63l, checkpoint63m, checkpoint63n, checkpoint63o, checkpoint63h, checkpoint63i, checkpoint63j, checkpoint63k, checkpoint63d, checkpoint63e, checkpoint63f, checkpoint63g, checkpoint53c_post, checkpoint63a, checkpoint63b, checkpoint63c, checkpoint57k_post, checkpoint55d_pre, checkpoint57d_post, checkpoint57g_post, checkpoint64, checkpoint65, checkpoint60, checkpoint61, checkpoint62, checkpoint63, checkpoint57b_post, checkpoint57c_pre, checkpoint58r_post, checkpoint55j_post, checkpoint56b_post, checkpoint57i_post, checkpoint57y_post, checkpoint57e_post, checkpoint66g, checkpoint66f, checkpoint66e, checkpoint66d, checkpoint66c, checkpoint66b, checkpoint66a, checkpoint66o, checkpoint66n, checkpoint66m, checkpoint66l, checkpoint66k, checkpoint66j, checkpoint66i, checkpoint66h, checkpoint55h_post, checkpoint58n_post, checkpoint58x_post, checkpoint57g_pre, checkpoint54b_post, checkpoint55b_post, checkpoint58t_post, checkpoint58h_post, checkpoint65z, checkpoint65x, checkpoint65y, checkpoint54d_post, checkpoint65r, checkpoint65s, checkpoint65p, checkpoint65q, checkpoint65v, checkpoint65w, checkpoint65t, checkpoint65u, checkpoint65j, checkpoint65k, checkpoint65h, checkpoint65i, checkpoint65n, checkpoint65o, checkpoint65l, checkpoint65m, checkpoint65b, checkpoint65c, checkpoint65a, checkpoint65f, checkpoint65g, checkpoint65d, checkpoint65e, checkpoint56c_post, checkpoint57y_pre, checkpoint55, checkpoint57f_pre, checkpoint57a_post, checkpoint54, checkpoint58q_post, checkpoint54f_post, checkpoint59q, checkpoint59p, checkpoint55g_post, checkpoint59r, checkpoint58j_post, checkpoint59e, checkpoint59d, checkpoint59g, checkpoint59f, checkpoint59a, checkpoint55f_post, checkpoint59c, checkpoint59b, checkpoint59m, checkpoint59l, checkpoint59o, checkpoint59n, checkpoint59i, checkpoint59h, checkpoint59k, checkpoint59j, checkpoint57r_post, checkpoint59, checkpoint58, checkpoint57a_pre, checkpoint55i_post, checkpoint57, checkpoint56, eckpoint57e_pre, checkpoint57h_done, checkpoint58f_post, checkpoint53g_post, checkpoint57x_post, checkpoint57n_post, checkpoint58d_post, checkpoint58c_post, checkpoint57w_post, checkpoint57p_post, checkpint57u_post, checkpoint57f_post, checkpoint58a_post, checkpoint58i_post, checkpoint57q_post, checkpoint58g_post, checkpoint58o_post, checkpoint57z_post, checkpoint62c, checkpoint62b, checkpoint62a, checkpoint62g, checkpoint62f, checkpoint62e, checkpoint62d, checkpoint62k, checkpoint62j, checkpoint62i, checkpoint62h, checkpoint62o, checkpoint62n, checkpoint62m, checkpoint62l, checkpoint62s, checkpoint62r, checkpoint62q, checkpoint62p, checkpoint62w, checkpoint62v, checkpoint62u, checkpoint62t, checkpoint57c_post, checkpoint62z, checkpoint62y, checkpoint62x, checkpoint58y_post, checkpoint55e_post, checkpoint58k_post, checkpoint58v_post, checkpoint53f_post, checkpoint55a_post, checkpoint53d_pre, checkpoint54c_post, checkpoint58s_post, checkpoint61f, checkpoint61g, checkpoint61d, checkpoint61e, checkpoint61b, checkpoint61c, checkpoint58p_post, checkpoint61a, checkpoint61n, checkpoint61o, checkpoint61l, checkpoint61m, checkpoint61j, checkpoint61k, checkpoint61h, checkpoint61i, checkpoint61v, checkpoint61w, checkpoint61t, checkpoint61u, checkpoint61r, checkpoint61s, checkpoint61p, checkpoint61q, checkpoint57j_post, checkpoint61z, checkpoint61x, checkpoint61y, checkpoint58b_post, checkpoint57h_pre, checkpoint58m_post, checkpoint57l_post, checkpoint57h_post, checkpoint56a_post, checkpoint55d_post, HEAD
Changes since 1.2: +41 -36 lines
decide to evaporate snow (rather than liq.W) independently of snow precip

1 jmc 1.3 C $Header: /u/gcmpack/MITgcm/pkg/aim_v23/aim_aim2land.F,v 1.2 2004/03/11 14:33:19 jmc Exp $
2 jmc 1.1 C $Name: $
3    
4     #include "AIM_OPTIONS.h"
5     #ifdef ALLOW_LAND
6     #include "LAND_OPTIONS.h"
7     #endif
8    
9     CBOP
10     C !ROUTINE: AIM_AIM2LAND
11     C !INTERFACE:
12     SUBROUTINE AIM_AIM2LAND(
13     I land_frc, bi, bj, myTime, myIter, myThid)
14    
15     C !DESCRIPTION: \bv
16     C *==========================================================*
17     C | S/R AIM_AIM2LAND
18     C | o Export land surface fluxes to Land package
19     C *==========================================================*
20     C \ev
21    
22     C !USES:
23     IMPLICIT NONE
24    
25     C == Global variables ===
26     C-- size for MITgcm & Physics package :
27     #include "AIM_SIZE.h"
28    
29     #include "EEPARAMS.h"
30     #include "PARAMS.h"
31    
32 jmc 1.2 C-- Physics package
33     #include "AIM_PARAMS.h"
34 jmc 1.1 #include "com_physcon.h"
35     #include "com_physvar.h"
36    
37     #ifdef ALLOW_LAND
38     #include "LAND_SIZE.h"
39     #include "LAND_PARAMS.h"
40     #include "LAND_VARS.h"
41     #endif
42    
43     C !INPUT/OUTPUT PARAMETERS:
44     C == Routine arguments ==
45     C land_frc :: land fraction [0-1]
46     C bi,bj :: Tile index
47     C myTime :: Current time of simulation ( s )
48     C myIter :: Current iteration number in simulation
49     C myThid :: Number of this instance of the routine
50     _RS land_frc(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
51     INTEGER bi, bj, myIter, myThid
52     _RL myTime
53     CEOP
54    
55     #ifdef ALLOW_AIM
56     #ifdef ALLOW_LAND
57     C == Local variables ==
58 jmc 1.2 C i,j,k,I2 :: loop counters
59     C conv_precip :: conversion factor for precip: from g/m2/s to kg/m2/s
60 jmc 1.1 _RL conv_precip
61 jmc 1.2 INTEGER i,j,k,I2
62 jmc 1.1
63 jmc 1.2 C-- Initialisation :
64     IF ( .NOT.land_impl_grT ) THEN
65     DO j=1,sNy
66     DO i=1,sNx
67     land_Pr_m_Ev(i,j,bi,bj) = 0. _d 0
68 jmc 1.3 land_EnWFlux(i,j,bi,bj) = 0. _d 0
69 jmc 1.2 ENDDO
70     ENDDO
71     ENDIF
72    
73     C-- Atmospheric Physics Fluxes
74 jmc 1.1
75     c IF ( useLand ) THEN
76    
77 jmc 1.2 C from g/m2/s to kg/m2/s :
78     conv_Precip = 1. _d -3
79 jmc 1.1
80 jmc 1.3 IF ( land_calc_grT .AND. .NOT.land_impl_grT ) THEN
81     C-- Surface heat flux to compute ground temperature explicitely:
82 jmc 1.2 k = 0
83     IF (aim_splitSIOsFx) k = 1
84     DO j=1,sNy
85     DO i=1,sNx
86     I2 = i+(j-1)*sNx
87    
88     C- total surface downward heat flux :
89 jmc 1.3 land_HeatFlx(i,j,bi,bj) =
90 jmc 1.2 & SSR(I2,k,myThid)
91     & - SLR(I2,k,myThid)
92     & - SHF(I2,1,myThid)
93     & - EVAP(I2,1,myThid)*ALHC
94     ENDDO
95     ENDDO
96    
97 jmc 1.3 IF ( land_calc_snow ) THEN
98 jmc 1.2 C- Evap of snow: substract Latent Heat of freezing from heatFlux
99     DO j=1,sNy
100     DO i=1,sNx
101     I2 = i+(j-1)*sNx
102 jmc 1.3 IF ( land_skinT(i,j,bi,bj).LT. 0. _d 0 .OR.
103     & land_hSnow(i,j,bi,bj).GT. 0. _d 0 ) THEN
104     land_HeatFlx(i,j,bi,bj) = land_HeatFlx(i,j,bi,bj)
105 jmc 1.2 & - EVAP(I2,1,myThid)*ALHF
106 jmc 1.3 land_EnWFlux(i,j,bi,bj) =
107     & EVAP(I2,1,myThid)*ALHF
108     ENDIF
109 jmc 1.2 ENDDO
110     ENDDO
111     ENDIF
112    
113     C-- to compute ground temperature explicitely: end
114     ENDIF
115    
116 jmc 1.3 C-- Fresh water fluxes
117     DO j=1,sNy
118     DO i=1,sNx
119     I2 = i+(j-1)*sNx
120    
121     C- total Precip minus Evap surface flux :
122     C convert from g.m-2.s-1 to kg/m2/s
123     land_Pr_m_Ev(i,j,bi,bj) = land_Pr_m_Ev(i,j,bi,bj)
124     & + conv_precip*( PRECNV(I2,myThid)
125     & + PRECLS(I2,myThid)
126     & - EVAP(I2,1,myThid)
127     & )
128    
129     ENDDO
130     ENDDO
131    
132     IF ( aim_energPrecip ) THEN
133     C- Compute energy flux related to Precip. (snow, T_rain)
134     C Evap of snow: add Latent Heat of freezing
135     DO j=1,sNy
136     DO i=1,sNx
137     I2 = i+(j-1)*sNx
138     land_EnWFlux(i,j,bi,bj) = land_EnWFlux(i,j,bi,bj)
139     & + EnPrec(I2,myThid)*( PRECNV(I2,myThid)
140     & +PRECLS(I2,myThid) )
141     ENDDO
142     ENDDO
143     ENDIF
144    
145 jmc 1.1 C- end (if useLand)
146     c ENDIF
147    
148     #endif /* ALLOW_LAND */
149     #endif /* ALLOW_AIM */
150    
151     RETURN
152     END

  ViewVC Help
Powered by ViewVC 1.1.22