/[lmdze]/trunk/phylmd/initrrnpb.f90
ViewVC logotype

Annotation of /trunk/phylmd/initrrnpb.f90

Parent Directory Parent Directory | Revision Log Revision Log


Revision 328 - (hide annotations)
Thu Jun 13 14:40:06 2019 UTC (4 years, 11 months ago) by guez
File size: 3263 byte(s)
Change all `.f` suffixes to `.f90`. (The opposite was done in revision
82.)  Because of change of philosopy in GNUmakefile: we already had a
rewritten rule for `.f`, so it does not make the makefile longer to
replace it by a rule for `.f90`. And it spares us options of
makedepf90 and of the compiler. Also we prepare the way for a simpler
`CMakeLists.txt`.

1 guez 98 module initrrnpb_m
2 guez 3
3 guez 81 IMPLICIT NONE
4 guez 3
5 guez 98 contains
6 guez 3
7 guez 98 SUBROUTINE initrrnpb(pctsrf, masktr, fshtr, hsoltr, tautr, vdeptr, scavtr)
8 guez 81
9 guez 266 ! From LMDZ4/libf/phylmd/initrrnpb.F, version 1.2, 2004/06/22 11:45:33
10 guez 81
11 guez 266 ! Authors: AA + Christophe Genthon (LGGE/CNRS)
12     ! Date: June 1994
13 guez 98 ! Objet : initialisation des constantes des traceurs
14 guez 81
15 guez 98 USE dimphy, ONLY: klon
16 guez 81
17 guez 266 REAL, intent(in):: pctsrf(:, :) ! (klon, nbsrf)
18 guez 98 ! pourcentage de sol (f(nature du sol))
19     ! Nature de sol (pourcentage de sol)
20 guez 81
21 guez 266 REAL masktr(:, :) ! (klon, nqmx - 2)
22     ! Masque de l'echange avec la surface
23 guez 98 ! (possible => 1)
24     ! masktr---output-R- Masque reservoir de sol traceur (1 = reservoir)
25 guez 266
26     REAL fshtr(:, :) ! (klon, nqmx - 2)
27     ! Flux surfacique dans le reservoir de sol
28 guez 98 ! fshtr----output-R- Flux surfacique de production dans le sol
29 guez 266
30     REAL hsoltr(:) ! (nqmx - 2)
31     ! Epaisseur equivalente du reservoir de sol
32 guez 98 ! hsoltr---output-R- Epaisseur du reservoir de sol
33 guez 266
34     REAL tautr(:) ! (nqmx - 2)
35     ! Constante de decroissance radioactive
36 guez 98 ! tautr----output-R- Constante de decroissance du traceur
37 guez 266
38     REAL vdeptr(:) ! (nqmx - 2)
39     ! Vitesse de depot sec dans la couche Brownienne
40 guez 98 ! vdeptr---output-R- Vitesse de depot sec dans la couche Brownienne
41 guez 266
42     REAL scavtr(:) ! (nqmx - 2)
43     ! Coefficient de lessivage
44 guez 98 ! scavtr---output-R- Coefficient de lessivage
45 guez 81
46 guez 98 ! Local:
47 guez 266 INTEGER i
48 guez 98 REAL s
49 guez 81
50 guez 98 !-------------------------------------------------------------
51 guez 81
52 guez 98 PRINT *, 'Call sequence information: initrrnpb'
53 guez 81
54 guez 98 ! Initialisations spécifiques à chaque traceur (pour le moment, Rn222)
55 guez 81
56 guez 98 ! Radon
57 guez 81
58 guez 98 s = 1.E4 ! Source: atome par m2
59    
60 guez 266 hsoltr(1) = 0.1
61 guez 98 ! Hauteur equivalente du reservoir :
62     ! 1 m * porosite 0.1
63    
64 guez 266 tautr(1) = 4.765E5 ! Decroissance du radon, secondes
65     vdeptr(1) = 0. ! Pas de depot sec pour le radon
66     scavtr(1) = 0. ! Pas de lessivage pour le radon
67 guez 98
68 guez 266 PRINT *, 'Source du radon :'
69 guez 98 PRINT *, 'Source : ', s
70 guez 266 PRINT *, 'Hauteur equivalente du reservoir de sol: ', hsoltr(1)
71     PRINT *, 'Decroissance (s): ', tautr(1)
72     PRINT *, 'Vitesse de depot sec: ', vdeptr(1)
73     PRINT *, 'Facteur de lessivage: ', scavtr(1)
74 guez 98
75     DO i = 1, klon
76 guez 266 masktr(i, 1) = 0.
77     IF (nint(pctsrf(i, 1))==1) masktr(i, 1) = 1.
78     fshtr(i, 1) = s*masktr(i, 1)
79 guez 98
80     ! Pour l'instant le pctsrf(i, 3) = 1.
81     ! lorsqu'il y a de la terre mais ne prend aucune autre valeur
82     ! il n'est donc pas nécessaire de multiplier fshtr par pctsrf
83     END DO
84    
85     ! Pb210
86    
87     s = 0. ! pas de source
88    
89 guez 266 hsoltr(2) = 10.
90 guez 98 ! hauteur équivalente du réservoir à partir duquel le dépôt
91     ! Brownien a lieu
92    
93 guez 266 tautr(2) = 1.028E9 ! Decroissance du Pb210, secondes
94     vdeptr(2) = 1.E-3 ! 1 mm/s pour le 210Pb
95     scavtr(2) = .5 ! Lessivage du Pb210
96 guez 98 DO i = 1, klon
97 guez 266 masktr(i, 2) = 1. ! Le depot sec peut avoir lieu partout
98     fshtr(i, 2) = s*masktr(i, 2)
99 guez 98 END DO
100 guez 266 PRINT *, 'Source du plomb :'
101 guez 98 PRINT *, 'Source : ', s
102 guez 266 PRINT *, 'Hauteur equivalente du reservoir : ', hsoltr(2)
103     PRINT *, 'Decroissance (s): ', tautr(2)
104     PRINT *, 'Vitesse de depot sec: ', vdeptr(2)
105     PRINT *, 'Facteur de lessivage: ', scavtr(2)
106 guez 98
107     END SUBROUTINE initrrnpb
108    
109     end module initrrnpb_m

  ViewVC Help
Powered by ViewVC 1.1.21