/[lmdze]/trunk/Sources/phylmd/initrrnpb.f
ViewVC logotype

Contents of /trunk/Sources/phylmd/initrrnpb.f

Parent Directory Parent Directory | Revision Log Revision Log


Revision 134 - (show annotations)
Wed Apr 29 15:47:56 2015 UTC (8 years, 11 months ago) by guez
File size: 3543 byte(s)
Sources inside, compilation outside.
1 module initrrnpb_m
2
3 IMPLICIT NONE
4
5 contains
6
7 SUBROUTINE initrrnpb(pctsrf, masktr, fshtr, hsoltr, tautr, vdeptr, scavtr)
8
9 ! From LMDZ4/libf/phylmd/initrrnpb.F, version 1.2 2004/06/22 11:45:33
10
11 ! Authors: AA + CG (LGGE/CNRS) Date June 24th, 1994
12 ! Objet : initialisation des constantes des traceurs
13
14 use dimens_m, only: nqmx
15 USE dimphy, ONLY: klon
16 USE indicesol, ONLY: nbsrf
17 use nr_util, only: assert
18
19 REAL, intent(in):: pctsrf(klon, nbsrf)
20 ! pourcentage de sol (f(nature du sol))
21 ! Nature de sol (pourcentage de sol)
22
23 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
37 ! Local:
38
39 INTEGER i, it
40 ! it = 1 radon ss controle de ts
41 ! it = 2 plomb ss controle de ts
42 REAL s
43
44 !-------------------------------------------------------------
45
46 PRINT *, 'Call sequence information: initrrnpb'
47 call assert(nqmx >= 4, 'initrrnpb')
48
49 ! Initialisations spécifiques à chaque traceur (pour le moment, Rn222)
50
51 ! Radon
52
53 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

  ViewVC Help
Powered by ViewVC 1.1.21