source: LMDZ6/trunk/libf/dyn3d_common/pression.f90 @ 5274

Last change on this file since 5274 was 5272, checked in by abarral, 8 days ago

Turn paramet.h into a module

File size: 1.4 KB
Line 
1SUBROUTINE pression( ngrid, ap, bp, ps, p )
2!
3!-------------------------------------------------------------------------------
4! Authors: P. Le Van , Fr.Hourdin
5!-------------------------------------------------------------------------------
6! Purpose: Compute pressure p(l) at different levels from l = 1 (ground level)
7!          to l = llm +1. Those levels correspond to the llm layers interfaces,
8!          with p(ij,llm+1) = 0. and  p(ij,1) = ps(ij)  .   
9!-------------------------------------------------------------------------------
10  USE dimensions_mod, ONLY: iim, jjm, llm, ndm
11USE paramet_mod_h, ONLY: iip1, iip2, iip3, jjp1, llmp1, llmp2, llmm1, kftd, ip1jm, ip1jmp1, &
12          ip1jmi1, ijp1llm, ijmllm, mvar, jcfil, jcfllm
13IMPLICIT NONE
14
15
16!===============================================================================
17! Arguments:
18  INTEGER, INTENT(IN)  :: ngrid                 !--- NUMBER OF GRID POINTS
19  REAL,    INTENT(IN)  :: ap(llmp1), bp(llmp1)  !--- HYBRID COEFFICIENTS
20  REAL,    INTENT(IN)  :: ps(ngrid)             !--- SURFACE PRESSURE
21  REAL,    INTENT(OUT) :: p(ngrid,llmp1)        !--- 3D PRESSURE FIELD
22!===============================================================================
23! Local variables:
24  INTEGER :: l
25!===============================================================================
26  DO l=1,llmp1;  p(:,l) = ap(l) + bp(l) * ps(:);  END DO
27
28END SUBROUTINE pression
29
30
Note: See TracBrowser for help on using the repository browser.