/[lmdze]/trunk/libf/dyn3d/Dissipation/divgrad.f
ViewVC logotype

Annotation of /trunk/libf/dyn3d/Dissipation/divgrad.f

Parent Directory Parent Directory | Revision Log Revision Log


Revision 55 - (hide annotations)
Mon Dec 12 13:25:01 2011 UTC (12 years, 6 months ago) by guez
File size: 1405 byte(s)
-- In procedure "bilan_dyn", replaced average of "zvq" by integral of
"zvq", following a comment of Francis Codron :

Le calcul actuel donne des unités peu pratiques : transports de
chaleur en K m / s par exemple. C'est bien pour les sorties à 2
dimensions, latitude et pression, car alors le transport ne dépend pas
de l'espacement des niveaux, mieux pour comparer ou tracer en latitude
et pression. Par contre, quand on somme sur la verticale, on
préfèrerait avoir des transports d'énergie en watts, ou au moins an K
kg / s (à multiplier par "Cp" ou "L"). On doit pouvoir recalculer le
transport intégré à partir des fichiers de sortie, mais c'est embêtant
(calcul de "cv").

-- Gathered files in directory Dissipation.

1 guez 3 !
2     ! $Header: /home/cvsroot/LMDZ4/libf/dyn3d/divgrad.F,v 1.1.1.1 2004/05/19 12:53:05 lmdzadmin Exp $
3     !
4 guez 54 SUBROUTINE divgrad (klevel,h, lh, divgra, cdivh )
5 guez 3 use dimens_m
6     use paramet_m
7     use logic
8     use comgeom
9 guez 27 use filtreg_m, only: filtreg
10 guez 3 IMPLICIT NONE
11     c
12     c=======================================================================
13     c
14     c Auteur : P. Le Van
15     c ----------
16     c
17     c lh
18     c calcul de (div( grad )) de h .....
19     c h et lh sont des arguments d'entree pour le s-prog
20     c divgra est un argument de sortie pour le s-prog
21     c
22     c=======================================================================
23     c
24     c declarations:
25     c -------------
26     c
27     c
28     INTEGER klevel
29 guez 55 REAL, intent(in):: h( ip1jmp1,klevel )
30     real divgra( ip1jmp1,klevel )
31 guez 54 real, intent(in):: cdivh
32 guez 3 c
33     REAL ghy(ip1jm,llm), ghx(ip1jmp1,llm)
34    
35 guez 26 INTEGER l,ij,iter
36     integer, intent(in):: lh
37 guez 3 c
38     c
39     c
40 guez 55 divgra = h
41 guez 3 c
42     DO 10 iter = 1,lh
43    
44     CALL filtreg ( divgra,jjp1,klevel,2,1,.true.,1 )
45    
46     CALL grad (klevel,divgra, ghx , ghy )
47     CALL diverg (klevel, ghx , ghy , divgra )
48    
49     CALL filtreg ( divgra,jjp1,klevel,2,1,.true.,1)
50    
51     DO 5 l = 1,klevel
52     DO 4 ij = 1, ip1jmp1
53     divgra( ij,l ) = - cdivh * divgra( ij,l )
54     4 CONTINUE
55     5 CONTINUE
56     c
57     10 CONTINUE
58     RETURN
59     END

  ViewVC Help
Powered by ViewVC 1.1.21