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