My Project
 All Classes Files Functions Variables Macros
initrrnpb.F90
Go to the documentation of this file.
1 !
2 ! $Id: initrrnpb.F90 1409 2010-07-08 11:46:29Z jghattas $
3 !
4 SUBROUTINE initrrnpb(ftsol,pctsrf,masktr,fshtr,hsoltr,tautr,vdeptr,scavtr)
5  USE dimphy
6  USE infotrac, ONLY : nbtr
7  USE traclmdz_mod, ONLY : id_rn, id_pb
8  IMPLICIT NONE
9 !======================================================================
10 ! Auteur(s): AA + CG (LGGE/CNRS) Date 24-06-94
11 ! Objet: initialisation des constantes des traceurs
12 ! id_rn : identificateur du traceur radon
13 ! id_pb : identificateur du traceur plomb
14 !======================================================================
15 ! Arguments:
16 ! nbtr.............. nombre de vrais traceurs (sans l'eau)
17 ! ftsol....input-R- Temperature du sol (Kelvin)
18 ! pctsrf...input-R- Nature de sol (pourcentage de sol)
19 ! masktr...output-R- Masque reservoir de sol traceur (1 = reservoir)
20 ! fshtr....output-R- Flux surfacique de production dans le reservoir de sol
21 ! hsoltr...output-R- Epaisseur equivalente du reservoir de sol
22 ! tautr....output-R- Constante de decroissance radioactive du traceur
23 ! vdeptr...output-R- Vitesse de depot sec dans la couche Brownienne
24 ! scavtr...output-R- Coefficient de lessivage
25 !======================================================================
26  include "indicesol.h"
27 !======================================================================
28 
29  REAL,DIMENSION(klon,nbsrf),INTENT(IN) :: pctsrf
30  REAL,DIMENSION(klon,nbsrf),INTENT(IN) :: ftsol
31  REAL,DIMENSION(klon,nbtr),INTENT(OUT) :: masktr
32  REAL,DIMENSION(klon,nbtr),INTENT(OUT) :: fshtr
33  REAL,DIMENSION(nbtr),INTENT(OUT) :: hsoltr
34  REAL,DIMENSION(nbtr),INTENT(OUT) :: tautr
35  REAL,DIMENSION(nbtr),INTENT(OUT) :: vdeptr
36  REAL,DIMENSION(nbtr),INTENT(OUT) :: scavtr
37  INTEGER :: i, it
38  REAL :: s
39 
40  CHARACTER (LEN=20) :: modname='initrrnpb'
41  CHARACTER (LEN=80) :: abort_message
42 
43 !
44 ! Radon it = id_rn
45 !----------------
46  IF (id_rn /= 0) THEN
47  it = id_rn
48  s = 1.e4 ! Source: atome par m2
49  hsoltr(it) = 0.1 ! Hauteur equivalente du reservoir :
50  ! 1 m * porosite 0.1
51  tautr(it) = 4.765e5 ! Decroissance du radon, secondes
52  vdeptr(it) = 0. ! Pas de depot sec pour le radon
53  scavtr(it) = 0. ! Pas de lessivage pour le radon
54 
55  WRITE(*,*)'-------------- SOURCE DU RADON ------------------------ '
56  WRITE(*,*)'it = ',it
57  WRITE(*,*)'Source : ', s
58  WRITE(*,*)'Hauteur equivalente du reservoir de sol: ',hsoltr(it)
59  WRITE(*,*)'Decroissance (s): ', tautr(it)
60  WRITE(*,*)'Vitesse de depot sec: ',vdeptr(it)
61  WRITE(*,*)'Facteur de lessivage: ',scavtr(it)
62 
63  DO i = 1,klon
64  masktr(i,it) = 0.
65  IF ( nint(pctsrf(i,1)) .EQ. 1 ) masktr(i,it) = 1.
66  fshtr(i,it) = s * masktr(i,it)
67  END DO
68 
69  END IF ! id_rn /= 0
70 
71 !
72 ! 210Pb it = id_pb
73 !----------------
74  IF (id_pb /= 0) THEN
75  it = id_pb
76  s = 0. ! Pas de source
77  hsoltr(it) = 10. ! Hauteur equivalente du reservoir
78  ! a partir duquel le depot Brownien a lieu
79  tautr(it) = 1.028e9 ! Decroissance du Pb210, secondes
80  vdeptr(it) = 1.e-3 ! 1 mm/s pour le 210Pb
81  scavtr(it) = .5 ! Lessivage du Pb210
82  DO i = 1,klon
83  masktr(i,it) = 1. ! Le depot sec peut avoir lieu partout
84  fshtr(i,it) = s * masktr(i,it)
85  END DO
86  WRITE(*,*)'-------------- SOURCE DU PLOMB ------------------------ '
87  WRITE(*,*)'it = ',it
88  WRITE(*,*)'Source : ', s
89  WRITE(*,*)'Hauteur equivalente du reservoir : ',hsoltr(it)
90  WRITE(*,*)'Decroissance (s): ', tautr(it)
91  WRITE(*,*)'Vitesse de depot sec: ',vdeptr(it)
92  WRITE(*,*)'Facteur de lessivage: ',scavtr(it)
93 
94  END IF
95 
96 END SUBROUTINE initrrnpb