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

Contents of /MITgcm/pkg/aim_v23/phy_suflux_ocean.F

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


Revision 1.1 - (show annotations) (download)
Thu Mar 11 14:33:19 2004 UTC (20 years, 2 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint52n_post, checkpoint53d_post, checkpoint53c_post, checkpoint52l_post, checkpoint53b_pre, checkpoint52m_post, checkpoint53a_post, checkpoint53b_post, checkpoint53, checkpoint53d_pre
a) Treat separately land / ocean / sea-ice surface fluxes
   to allow implicit computation of land & sea-ice surface temp.
b) add snow precipitation
c) other (little) modifications for new land formulation.

1 C $Header: $
2 C $Name: $
3
4 #include "AIM_OPTIONS.h"
5
6 CBOP
7 C !ROUTINE: SUFLUX_OCEAN
8 C !INTERFACE:
9 SUBROUTINE SUFLUX_OCEAN(
10 I PSA, FMASK,
11 I Tsurf, SSR, SLRD,
12 I T0, Q0, CDENVV,
13 O SHF, EVAP, SLRU,
14 I bi,bj,myThid)
15
16 C !DESCRIPTION: \bv
17 C *==========================================================*
18 C | S/R SUFLUX_OCEAN
19 C | o compute surface flux over ocean
20 C *==========================================================*
21 C | o contains part of original S/R SUFLUX (Speedy code)
22 C *==========================================================*
23 C \ev
24
25 C !USES:
26 IMPLICIT NONE
27
28 C Resolution parameters
29
30 C-- size for MITgcm & Physics package :
31 #include "AIM_SIZE.h"
32 #include "EEPARAMS.h"
33
34 C Physical constants + functions of sigma and latitude
35 #include "com_physcon.h"
36
37 C Surface flux constants
38 #include "com_sflcon.h"
39
40 C == Routine Arguments ==
41 C-- Input:
42 C FMASK :: fractional land-sea mask (2-dim)
43 C Tsurf :: surface temperature (2-dim)
44 C SSR :: sfc sw radiation (net flux) (2-dim)
45 C SLRD :: sfc lw radiation (downward flux)(2-dim)
46 C T0 :: near-surface air temperature (2-dim)
47 C Q0 :: near-surface sp. humidity [g/kg](2-dim)
48 C CDENVV :: sensible heat flux coefficient (2-dim)
49 C-- Output:
50 C SHF :: sensible heat flux (2-dim)
51 C EVAP :: evaporation [g/(m^2 s)] (2-dim)
52 C SLRU :: sfc lw radiation (upward flux) (2-dim)
53 C-- Input:
54 C bi,bj :: tile index
55 C myThid :: Thread number for this instance of the routine
56 C--
57 _RL PSA(NGP)
58 _RL FMASK(NGP), Tsurf(NGP)
59 _RL SSR(NGP), SLRD(NGP), T0(NGP), Q0(NGP), CDENVV(NGP)
60
61 _RL SHF(NGP), EVAP(NGP), SLRU(NGP)
62
63 INTEGER bi,bj,myThid
64 CEOP
65
66 #ifdef ALLOW_AIM
67
68 C-- Local variables:
69 _RL QSAT0(NGP)
70 _RL QDUMMY(1), RDUMMY(1), TS4
71 INTEGER J
72
73 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
74
75 C-- 2. Computation of fluxes over land and sea
76
77 C 2.1 Wind stress
78
79 C 2.2 Sensible heat flux (from clim. TS over land)
80
81 DO J=1,NGP
82 SHF(J) = CDENVV(J)*CP*(Tsurf(J)-T0(J))
83 ENDDO
84
85 C 2.3 Evaporation
86
87 CALL SHTORH (0, NGP, Tsurf, PSA, 1. _d 0, QDUMMY, RDUMMY,
88 & QSAT0, myThid)
89
90 DO J=1,NGP
91 EVAP(J) = CDENVV(J)*(QSAT0(J)-Q0(J))
92 ENDDO
93
94 C 2.4 Emission of lw radiation from the surface
95
96 DO J=1,NGP
97 TS4 = Tsurf(J)**4
98 SLRU(J) = SBC*TS4
99 ENDDO
100
101 C-- 3. Adjustment of skin temperature and fluxes over land
102 C-- based on energy balance (to be implemented)
103 C <= done separately for each surface type (land,sea,se-ice)
104
105 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
106 #endif /* ALLOW_AIM */
107
108 RETURN
109 END

  ViewVC Help
Powered by ViewVC 1.1.22