LMDZ
laplacien_gam_loc.F
Go to the documentation of this file.
1  SUBROUTINE laplacien_gam_loc ( klevel, cuvsga, cvusga, unsaigam,
2  * unsapolnga, unsapolsga, teta, divgra )
3 
4 c P. Le Van
5 c
6 c ************************************************************
7 c
8 c .... calcul de (div( grad )) de teta .....
9 c ************************************************************
10 c klevel et teta sont des arguments d'entree pour le s-prog
11 c divgra est un argument de sortie pour le s-prog
12 c
13  USE parallel_lmdz
14  IMPLICIT NONE
15 c
16 #include "dimensions.h"
17 #include "paramet.h"
18 #include "comgeom.h"
19 
20 c
21 c ............ variables en arguments ..........
22 c
23  INTEGER klevel
24  REAL teta( ijb_u:ije_u,klevel ), divgra( ijb_u:ije_u,klevel )
25  REAL cuvsga(ip1jm) , cvusga( ip1jmp1 )
26  REAL unsaigam(ip1jmp1)
27  REAL unsapolnga, unsapolsga
28 c
29 c ........... variables locales .................
30 c
31  REAL ghy(ijb_v:ije_v,llm), ghx(ijb_u:ije_u,llm)
32 c ......................................................
33 
34  INTEGER :: ijb,ije
35  INTEGER :: l
36 c
37 c
38 c ... cvuscugam = ( cvu/ cu ) ** (- gamdissip )
39 c ... cuvscvgam = ( cuv/ cv ) ** (- gamdissip ) calcules dans inigeom ..
40 c ... unsairegam = 1. / aire ** (- gamdissip )
41 c
42 
43 c CALL SCOPY ( ip1jmp1 * klevel, teta, 1, divgra, 1 )
44 
45  ijb=ij_begin-iip1
46  ije=ij_end+iip1
47  if (pole_nord) ijb=ij_begin
48  if (pole_sud ) ije=ij_end
49 
50 c$OMP DO SCHEDULE(STATIC,OMP_CHUNK)
51  DO l=1,klevel
52  divgra(ijb:ije,l)=teta(ijb:ije,l)
53  ENDDO
54 c$OMP END DO NOWAIT
55 
56 c
57  CALL grad_loc ( klevel, divgra, ghx, ghy )
58 c
59  CALL diverg_gam_loc ( klevel, cuvsga, cvusga, unsaigam ,
60  * unsapolnga, unsapolsga, ghx , ghy , divgra )
61 
62 c
63 
64  RETURN
65  END
!$Header llmm1 INTEGER ip1jmp1
Definition: paramet.h:14
subroutine grad_loc(klevel, pg, pgx, pgy)
Definition: grad_loc.F:2
integer, save ij_end
logical, save pole_sud
!$Id Turb_fcg_gcssold get_uvd hqturb_gcssold endif!large scale llm day day1 day day1 *dt_toga endif!time annee_ref dt_toga u_toga vq_toga w_prof vq_prof llm day day1 day day1 *dt_dice endif!time annee_ref dt_dice swup_dice vg_dice omega_dice tg_prof vg_profd w_profd omega_profd!do llm!print llm l llm
integer, save ijb_v
!$Header llmm1 INTEGER ip1jm
Definition: paramet.h:14
logical, save pole_nord
subroutine laplacien_gam_loc(klevel, cuvsga, cvusga, unsaigam, unsapolnga, unsapolsga, teta, divgra)
integer, save ij_begin
integer, save ije_v
subroutine diverg_gam_loc(klevel, cuvscvgam, cvuscugam, unsairegam, unsapolnga, unsapolsga, x, y, div)
Definition: diverg_gam_loc.F:3
integer, save ije_u
integer, save ijb_u