source: LMDZ5/branches/IPSLCM5A2.1_ISO/libf/phyiso/rrtm/gppreh.F90 @ 5308

Last change on this file since 5308 was 3331, checked in by acozic, 6 years ago

Add modification for isotopes

  • Property svn:executable set to *
File size: 2.3 KB
RevLine 
[3331]1SUBROUTINE GPPREH(KPROMA,KSTART,KPROF,KFLEV,PVAH,PVBH,PRESH)
2
3!**** *GPPREH* - Computes half and full level pressure
4
5!     Purpose.
6!     --------
7!           Computes pressures at half and full model levels.
8
9!**   Interface.
10!     ----------
11!        *CALL* *GPPREH(KPROMA,KSTART,KPROF,KFLEV,PVAH,PVBH,PRESH)
12
13!        Explicit arguments :
14!        --------------------
15!                              KPROMA :  dimensioning
16!                              KSTART :  start of work
17!                              KPROF  :  depth of work
18!                              KFLEV     : vert. dimensioning
19!                              PRESH(KPROMA,0:KFLEV) - HALF LEVEL PRESSURE
20!                              PVAH(KFLEV),PVBH(KFLEV)- vertical coordinate
21!        Implicit arguments :  NONE.
22!        --------------------
23
24!     Method.
25!     -------
26!        See documentation
27
28!     Externals.  None.
29!     ----------
30
31!     Reference.
32!     ----------
33!        ECMWF Research Department documentation of the IFS
34!     Half level P:     PHk = Ak + Bk * Ps
35
36!     Author.
37!     -------
38!        Erik Andersson, Mats Hamrud and Philippe Courtier  *ECMWF*
39
40!     Modifications.
41!     --------------
42!        Original : 92-11-23
43!        M.Hamrud      01-Oct-2003 CY28 Cleaning
44!     ------------------------------------------------------------------
45
46USE PARKIND1  ,ONLY : JPIM     ,JPRB
47USE YOMHOOK   ,ONLY : LHOOK,   DR_HOOK
48
49IMPLICIT NONE
50
51INTEGER(KIND=JPIM),INTENT(IN)    :: KPROMA
52INTEGER(KIND=JPIM),INTENT(IN)    :: KFLEV
53INTEGER(KIND=JPIM),INTENT(IN)    :: KSTART
54INTEGER(KIND=JPIM),INTENT(IN)    :: KPROF
55REAL(KIND=JPRB)   ,INTENT(IN)    :: PVAH(0:KFLEV)
56REAL(KIND=JPRB)   ,INTENT(IN)    :: PVBH(0:KFLEV)
57REAL(KIND=JPRB)   ,INTENT(INOUT) :: PRESH(KPROMA,0:KFLEV)
58INTEGER(KIND=JPIM) :: JLEV, JLON
59REAL(KIND=JPRB) :: ZHOOK_HANDLE
60
61!     ------------------------------------------------------------------
62
63!*       1.    COMPUTES HALF LEVEL PRESSURES.
64!              ------------------------------
65
66IF (LHOOK) CALL DR_HOOK('GPPREH',0,ZHOOK_HANDLE)
67DO JLEV=0,KFLEV-1
68  DO JLON=KSTART,KPROF
69    PRESH(JLON,JLEV)=PVAH(JLEV)+PVBH(JLEV)*PRESH(JLON,KFLEV)
70  ENDDO
71ENDDO
72
73!     ------------------------------------------------------------------
74
75IF (LHOOK) CALL DR_HOOK('GPPREH',1,ZHOOK_HANDLE)
76END SUBROUTINE GPPREH
Note: See TracBrowser for help on using the repository browser.