/[lmdze]/trunk/libf/dyn3d/geopot.f90
ViewVC logotype

Contents of /trunk/libf/dyn3d/geopot.f90

Parent Directory Parent Directory | Revision Log Revision Log


Revision 32 - (show annotations)
Tue Apr 6 17:52:58 2010 UTC (14 years, 1 month ago) by guez
File size: 952 byte(s)
Split "stringop.f90" into single-procedure files. Gathered files in directory
"IOIPSL/Stringop".

Split "flincom.f90" into "flincom.f90" and "flinget.f90". Removed
unused procedures from module "flincom". Removed unused argument
"filename" of procedure "flinopen_nozoom".

Removed unused files.

Split "grid_change.f90" into "grid_change.f90" and
"gr_phy_write_3d.f90".

Removed unused procedures from modules "calendar", "ioipslmpp",
"grid_atob", "gath_cpl" and "getincom". Removed unused procedures in
files "ppm3d.f" and "thermcell.f".

Split "mathelp.f90" into "mathelp.f90" and "mathop.f90".

Removed unused variable "dpres" of module "comvert".

Use argument "itau" instead of local variables "iadvtr" and "first" to
control algorithm in procedure "fluxstokenc".

Removed unused arguments of procedure "integrd".

Removed useless computations at the end of procedure "leapfrog".

Merged common block "matrfil" into module "parafilt".

1 SUBROUTINE geopot(ngrid,teta,pk,pks,phis,phi)
2
3 ! From libf/dyn3d/geopot.F, version 1.1.1.1 2004/05/19
4 ! Author: P. Le Van
5 ! Objet : calcul du géopotentiel aux milieux des couches
6 ! L'integration se fait de bas en haut.
7
8 USE dimens_m
9 USE paramet_m
10
11 IMPLICIT NONE
12
13 ! Arguments:
14 INTEGER, INTENT (IN):: ngrid
15 REAL, INTENT (IN):: teta(ngrid,llm), pks(ngrid)
16 REAL, INTENT (IN) :: phis(ngrid)
17 REAL, INTENT (IN) :: pk(ngrid,llm)
18 REAL, INTENT (out):: phi(ngrid,llm)
19
20 ! Local:
21 INTEGER l, ij
22
23 ! -----------------------------------------------------------------------
24
25 ! calcul de phi au niveau 1 pres du sol
26 DO ij = 1, ngrid
27 phi(ij,1) = phis(ij) + teta(ij,1)*(pks(ij)-pk(ij,1))
28 end DO
29
30 ! calcul de phi aux niveaux superieurs
31 DO l = 2, llm
32 DO ij = 1, ngrid
33 phi(ij,l) = phi(ij,l-1) + 0.5 * (teta(ij,l) + teta(ij,l-1)) &
34 * (pk(ij,l-1) - pk(ij,l))
35 END DO
36 END DO
37
38 END SUBROUTINE geopot

  ViewVC Help
Powered by ViewVC 1.1.21