source: LMDZ5/branches/LMDZ5-DOFOCO/libf/dyn3dmem/bernoui_loc.F @ 3575

Last change on this file since 3575 was 1632, checked in by Laurent Fairhead, 12 years ago

Import initial du répertoire dyn3dmem

Attention! ceci n'est qu'une version préliminaire du code "basse mémoire":
le code contenu dans ce répertoire est basé sur la r1320 et a donc besoin
d'être mis à jour par rapport à la dynamique parallèle d'aujourd'hui.
Ce code est toutefois mis à disposition pour circonvenir à des problèmes
de mémoire que certaines configurations du modèle pourraient rencontrer.
Dans l'état, il compile et tourne sur vargas et au CCRT


Initial import of dyn3dmem

Warning! this is just a preliminary version of the memory light code:
it is based on r1320 of the code and thus needs to be updated before
it can replace the present dyn3dpar code. It is nevertheless put at your
disposal to circumvent some memory problems some LMDZ configurations may
encounter. In its present state, it will compile and run on vargas and CCRT

File size: 1.8 KB
Line 
1      SUBROUTINE bernoui_loc (ngrid,nlay,pphi,pecin,pbern)
2      USE parallel
3      USE mod_filtreg_p
4      IMPLICIT NONE
5
6c=======================================================================
7c
8c   Auteur:   P. Le Van
9c   -------
10c
11c   Objet:
12c   ------
13c     calcul de la fonction de Bernouilli aux niveaux s  .....
14c     phi  et  ecin  sont des arguments d'entree pour le s-pg .......
15c          bern       est un  argument de sortie pour le s-pg  ......
16c
17c    fonction de Bernouilli = bern = filtre de( geopotentiel +
18c                              energ.cinet.)
19c
20c=======================================================================
21c
22c-----------------------------------------------------------------------
23c   Decalrations:
24c   -------------
25c
26#include "dimensions.h"
27#include "paramet.h"
28#include "logic.h"
29c
30c   Arguments:
31c   ----------
32c
33      INTEGER nlay,ngrid
34      REAL pphi(ijb_u:ije_u,nlay),pecin(ijb_u:ije_u,nlay)
35      REAL pbern(ijb_u:ije_u,nlay)
36c
37c   Local:
38c   ------
39c
40      INTEGER   ij,l,ijb,ije,jjb,jje
41c
42c-----------------------------------------------------------------------
43c   calcul de Bernouilli:
44c   ---------------------
45c
46      ijb=ij_begin
47      ije=ij_end+iip1
48      if (pole_sud) ije=ij_end
49
50      jjb=jj_begin
51      jje=jj_end+1
52      if (pole_sud) jje=jj_end
53
54c$OMP DO SCHEDULE(STATIC,OMP_CHUNK)               
55      DO l=1,llm
56   
57        DO 4 ij = ijb,ije
58          pbern( ij,l ) =  pphi( ij,l ) + pecin( ij,l )
59   4    CONTINUE
60       
61       ENDDO
62c$OMP END DO NOWAIT
63c
64c-----------------------------------------------------------------------
65c   filtre:
66c   -------
67c
68
69       
70        CALL filtreg_p( pbern,jjb_u,jje_u,jjb,jje, jjp1, llm,
71     &                  2,1, .true., 1 )
72c
73c-----------------------------------------------------------------------
74     
75     
76      RETURN
77      END
Note: See TracBrowser for help on using the repository browser.