/[MITgcm]/MITgcm/pkg/thsice/thsice_get_precip.F
ViewVC logotype

Contents of /MITgcm/pkg/thsice/thsice_get_precip.F

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


Revision 1.1 - (show annotations) (download)
Sun Jan 22 15:58:39 2006 UTC (18 years, 4 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint58l_post, checkpoint58e_post, mitgcm_mapl_00, checkpoint58u_post, checkpoint58w_post, checkpoint58r_post, checkpoint58n_post, checkpoint58x_post, checkpoint58t_post, checkpoint58h_post, checkpoint58q_post, checkpoint58j_post, checkpoint59a, checkpoint59b, checkpoint59, checkpoint58f_post, checkpoint58d_post, checkpoint58c_post, checkpoint58a_post, checkpoint58i_post, checkpoint58g_post, checkpoint58o_post, checkpoint58y_post, checkpoint58k_post, checkpoint58v_post, checkpoint58s_post, checkpoint58p_post, checkpoint58b_post, checkpoint58m_post
no BULKF header files in thsice_main.F (moved to interface S/R THSICE_GET_PRECIP)

1 C $Header: /u/gcmpack/MITgcm/pkg/thsice/thsice_get_bulkf.F,v 1.2 2004/04/07 23:40:34 jmc Exp $
2 C $Name: $
3
4 #include "THSICE_OPTIONS.h"
5 #ifdef ALLOW_BULK_FORCE
6 #include "BULK_FORCE_OPTIONS.h"
7 #endif
8
9 CBOP
10 C !ROUTINE: THSICE_GET_PRECIP
11 C !INTERFACE:
12 SUBROUTINE THSICE_GET_PRECIP(
13 I iceMsk,
14 O precip, snowPrc, flxSW,
15 I iMin,iMax,jMin,jMax, bi,bj, myThid )
16 C !DESCRIPTION: \bv
17 C *==========================================================*
18 C | S/R THSICE_GET_PRECIP
19 C | Interface S/R : get Precip & Snow from pkg BULK_FORCE
20 C *==========================================================*
21 C | note: also get Short-Wave surface flux; this is a
22 C | temporary fix until pkg Bulk-Force fills Qsw directly
23 C *==========================================================*
24 C \ev
25
26 C !USES:
27 IMPLICIT NONE
28
29 C == Global data ==
30 #include "SIZE.h"
31 #include "EEPARAMS.h"
32 #ifdef ALLOW_BULK_FORCE
33 #include "BULKF_PARAMS.h"
34 #include "BULKF.h"
35 #endif
36
37 C !INPUT/OUTPUT PARAMETERS:
38 C === Routine arguments ===
39 C iceMsk :: sea-ice fraction: no ice=0, grid all ice 1 []
40 C precip :: Total Precipitation (including run-off) [kg/m2/s]
41 C snowPrc :: Snow Precipitation [kg/m2/s]
42 C flxSW :: Net short-wave surface flux (+=down) [W/m2]
43 C iMin,iMax :: range of indices of computation domain
44 C jMin,jMax :: range of indices of computation domain
45 C bi,bj :: current tile indices
46 C myThid :: Thread no. that called this routine.
47 _RL iceMsk (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
48 _RL precip (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
49 _RL snowPrc(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
50 _RL flxSW (1-OLx:sNx+OLx,1-OLy:sNy+OLy)
51 INTEGER iMin,iMax
52 INTEGER jMin,jMax
53 INTEGER bi,bj
54 INTEGER myThid
55 CEOP
56
57 #ifdef ALLOW_THSICE
58 #ifdef ALLOW_BULK_FORCE
59
60 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
61 C === Local variables ===
62 C i,j :: current grid point indices
63 INTEGER i,j
64
65 DO j = jMin, jMax
66 DO i = iMin, iMax
67 precip(i,j) = ( rain(i,j,bi,bj)+runoff(i,j,bi,bj) )*rhofw
68 flxSW (i,j) = solar(i,j,bi,bj)
69 IF ( iceMsk(i,j,bi,bj).GT.0. _d 0
70 & .AND. Tair(i,j,bi,bj).LE.Tf0kel ) THEN
71 snowPrc(i,j) = rain(i,j,bi,bj)*rhofw
72 ENDIF
73 ENDDO
74 ENDDO
75
76 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
77
78 #endif /* ALLOW_BULK_FORCE */
79 #endif /* ALLOW_THSICE */
80
81 RETURN
82 END

  ViewVC Help
Powered by ViewVC 1.1.22