/[lmdze]/trunk/dyn3d/caladvtrac.f
ViewVC logotype

Contents of /trunk/dyn3d/caladvtrac.f

Parent Directory Parent Directory | Revision Log Revision Log


Revision 178 - (show annotations)
Fri Mar 11 18:47:26 2016 UTC (8 years, 2 months ago) by guez
Original Path: trunk/Sources/dyn3d/caladvtrac.f
File size: 1392 byte(s)
Moved variables date0, deltat, datasz_max, ncvar_ids, point, buff_pos,
buffer, regular from module histcom_var to modules where they are
defined.

Removed procedure ioipslmpp, useless for a sequential program.

Added argument datasz_max to histwrite_real (to avoid circular
dependency with histwrite).

Removed useless variables and computations everywhere.

Changed real litteral constants from default kind to double precision
in lwb, lwu, lwvn, sw1s, swtt, swtt1, swu.

Removed unused arguments: paer of sw, sw1s, sw2s, swclr; pcldsw of
sw1s, sw2s; pdsig, prayl of swr; co2_ppm of clmain, clqh; tsol of
transp_lay; nsrf of screenp; kcrit and kknu of gwstress; pstd of
orosetup.

Added output of relative humidity.

1 module caladvtrac_m
2
3 IMPLICIT NONE
4
5 contains
6
7 SUBROUTINE caladvtrac(q, pbaru, pbarv, p, masse, teta, pk)
8
9 ! From dyn3d/caladvtrac.F, version 1.3 2005/04/13 08:58:34
10 ! Authors: F. Hourdin, P. Le Van, F. Forget, F. Codron
11 ! F. Codron (10/99) : ajout humidit\'e sp\'ecifique pour eau vapeur
12 ! Sch\'ema de Van Leer
13
14 ! Calcul des tendances advection des traceurs (dont l'humidit\'e)
15
16 use advtrac_m, only: advtrac
17 use conf_gcm_m, only: iapp_tracvl
18 use dimens_m, only: iim, jjm, llm
19 use paramet_m, only: ip1jmp1
20 use qminimum_m, only: qminimum
21
22 real, intent(inout):: q(:, :, :, :) ! (iim + 1, jjm + 1, llm, nqmx)
23 REAL, intent(in):: pbaru(ip1jmp1, llm), pbarv((iim + 1) * jjm, llm)
24 REAL, intent(in):: p(iim + 1, jjm + 1, llm + 1)
25 real, intent(in):: masse(iim + 1, jjm + 1, llm)
26 REAL, intent(in):: teta(ip1jmp1, llm)
27 real, intent(in):: pk(ip1jmp1, llm)
28
29 ! Local:
30 INTEGER l, iapptrac
31 REAL finmasse(iim + 1, jjm + 1, llm)
32
33 !------------------------------------------------
34
35 ! Advection:
36 CALL advtrac(pbaru, pbarv, p, masse, q, iapptrac, teta, pk)
37
38 IF (iapptrac == iapp_tracvl) THEN
39 forall (l = 1:llm) finmasse(:, :, l) = p(:, :, l) - p(:, :, l+1)
40
41 ! Uniquement pour l'eau vapeur et liquide:
42 CALL qminimum(q, 2, finmasse)
43 ENDIF
44
45 END SUBROUTINE caladvtrac
46
47 end module caladvtrac_m

  ViewVC Help
Powered by ViewVC 1.1.21