Directory: | ./ |
---|---|
File: | dyn3d_common/geopot.f |
Date: | 2022-01-11 19:19:34 |
Exec | Total | Coverage | |
---|---|---|---|
Lines: | 8 | 8 | 100.0% |
Branches: | 6 | 6 | 100.0% |
Line | Branch | Exec | Source |
---|---|---|---|
1 | ! | ||
2 | ! $Header$ | ||
3 | ! | ||
4 | 6241 | SUBROUTINE geopot (ngrid, teta, pk, pks, phis, phi ) | |
5 | IMPLICIT NONE | ||
6 | |||
7 | c======================================================================= | ||
8 | c | ||
9 | c Auteur: P. Le Van | ||
10 | c ------- | ||
11 | c | ||
12 | c Objet: | ||
13 | c ------ | ||
14 | c | ||
15 | c ******************************************************************* | ||
16 | c .... calcul du geopotentiel aux milieux des couches ..... | ||
17 | c ******************************************************************* | ||
18 | c | ||
19 | c .... l'integration se fait de bas en haut .... | ||
20 | c | ||
21 | c .. ngrid,teta,pk,pks,phis sont des argum. d'entree pour le s-pg .. | ||
22 | c phi est un argum. de sortie pour le s-pg . | ||
23 | c | ||
24 | c======================================================================= | ||
25 | c----------------------------------------------------------------------- | ||
26 | c Declarations: | ||
27 | c ------------- | ||
28 | |||
29 | include "dimensions.h" | ||
30 | include "paramet.h" | ||
31 | |||
32 | c Arguments: | ||
33 | c ---------- | ||
34 | |||
35 | INTEGER ngrid | ||
36 | REAL teta(ngrid,llm),pks(ngrid),phis(ngrid),pk(ngrid,llm) , | ||
37 | * phi(ngrid,llm) | ||
38 | |||
39 | |||
40 | c Local: | ||
41 | c ------ | ||
42 | |||
43 | INTEGER l, ij | ||
44 | |||
45 | |||
46 | c----------------------------------------------------------------------- | ||
47 | c calcul de phi au niveau 1 pres du sol ..... | ||
48 | |||
49 |
2/2✓ Branch 0 taken 6241 times.
✓ Branch 1 taken 6796449 times.
|
6802690 | DO 1 ij = 1, ngrid |
50 | 6796449 | phi( ij,1 ) = phis( ij ) + teta(ij,1) * ( pks(ij) - pk(ij,1) ) | |
51 | 6241 | 1 CONTINUE | |
52 | |||
53 | c calcul de phi aux niveaux superieurs ....... | ||
54 | |||
55 |
2/2✓ Branch 0 taken 237158 times.
✓ Branch 1 taken 6241 times.
|
243399 | DO l = 2,llm |
56 |
2/2✓ Branch 0 taken 258265062 times.
✓ Branch 1 taken 237158 times.
|
258508461 | DO ij = 1,ngrid |
57 | phi(ij,l) = phi(ij,l-1) + 0.5 * ( teta(ij,l) + teta(ij,l-1) ) | ||
58 | 258502220 | * * ( pk(ij,l-1) - pk(ij,l) ) | |
59 | ENDDO | ||
60 | ENDDO | ||
61 | |||
62 | 6241 | RETURN | |
63 | END | ||
64 |