1 |
! |
|
2 |
! $Header: /home/cvsroot/LMDZ4/libf/phylmd/initrrnpb.F,v 1.2 2004/06/22 11:45:33 lmdzadmin Exp $ |
! $Header: /home/cvsroot/LMDZ4/libf/phylmd/initrrnpb.F,v 1.2 2004/06/22 |
3 |
! |
! 11:45:33 lmdzadmin Exp $ |
4 |
SUBROUTINE initrrnpb(ftsol,pctsrf,masktr,fshtr,hsoltr,tautr |
|
5 |
. ,vdeptr,scavtr) |
SUBROUTINE initrrnpb(ftsol, pctsrf, masktr, fshtr, hsoltr, tautr, vdeptr, & |
6 |
use dimens_m |
scavtr) |
7 |
use indicesol |
USE dimens_m |
8 |
use dimphy |
USE indicesol |
9 |
IMPLICIT none |
USE dimphy |
10 |
c====================================================================== |
IMPLICIT NONE |
11 |
c Auteur(s): AA + CG (LGGE/CNRS) Date 24-06-94 |
! ====================================================================== |
12 |
c Objet: initialisation des constantes des traceurs |
! Auteur(s): AA + CG (LGGE/CNRS) Date 24-06-94 |
13 |
CAA Revison pour le controle avec la temperature du sol |
! Objet: initialisation des constantes des traceurs |
14 |
cAA |
! AA Revison pour le controle avec la temperature du sol |
15 |
CAA it = 1 radon ss controle de ts |
! AA |
16 |
cAA it = 2 plomb ss controle de ts |
! AA it = 1 radon ss controle de ts |
17 |
c====================================================================== |
! AA it = 2 plomb ss controle de ts |
18 |
c Arguments: |
! ====================================================================== |
19 |
c nbtr------input-I- nombre de vrais traceurs (sans l'eau) |
! Arguments: |
20 |
c ftsol-------input-R- Temperature du sol (Kelvin) |
! nbtr------input-I- nombre de vrais traceurs (sans l'eau) |
21 |
c pctsrf-----input-R- Nature de sol (pourcentage de sol) |
! ftsol-------input-R- Temperature du sol (Kelvin) |
22 |
c masktr---output-R- Masque reservoir de sol traceur (1 = reservoir) |
! pctsrf-----input-R- Nature de sol (pourcentage de sol) |
23 |
c fshtr----output-R- Flux surfacique de production dans le sol |
! masktr---output-R- Masque reservoir de sol traceur (1 = reservoir) |
24 |
c hsoltr---output-R- Epaisseur du reservoir de sol |
! fshtr----output-R- Flux surfacique de production dans le sol |
25 |
c tautr----output-R- Constante de decroissance du traceur |
! hsoltr---output-R- Epaisseur du reservoir de sol |
26 |
c vdeptr---output-R- Vitesse de depot sec dans la couche Brownienne |
! tautr----output-R- Constante de decroissance du traceur |
27 |
c scavtr---output-R- Coefficient de lessivage |
! vdeptr---output-R- Vitesse de depot sec dans la couche Brownienne |
28 |
c====================================================================== |
! scavtr---output-R- Coefficient de lessivage |
29 |
c====================================================================== |
! ====================================================================== |
30 |
C |
! ====================================================================== |
31 |
INTEGER i, it |
|
32 |
REAL pctsrf(klon,nbsrf) !Pourcentage de sol (f(nature du sol)) |
INTEGER i, it |
33 |
REAL ftsol(klon,nbsrf) ! Temperature du sol pour le controle Rn |
REAL pctsrf(klon, nbsrf) !Pourcentage de sol (f(nature du sol)) |
34 |
c ! le cas echeant |
REAL ftsol(klon, nbsrf) ! Temperature du sol pour le controle Rn |
35 |
REAL masktr(klon,nbtr) ! Masque de l'echange avec la surface |
! ! le cas echeant |
36 |
c (possible => 1 ) |
REAL masktr(klon, nbtr) ! Masque de l'echange avec la surface |
37 |
REAL fshtr(klon,nbtr) ! Flux surfacique dans le reservoir de sol |
! (possible => 1 ) |
38 |
REAL hsoltr(nbtr) ! Epaisseur equivalente du reservoir de sol |
REAL fshtr(klon, nbtr) ! Flux surfacique dans le reservoir de sol |
39 |
REAL tautr(nbtr) ! Constante de decroissance radioactive |
REAL hsoltr(nbtr) ! Epaisseur equivalente du reservoir de sol |
40 |
REAL vdeptr(nbtr) ! Vitesse de depot sec dans la couche Brownienne |
REAL tautr(nbtr) ! Constante de decroissance radioactive |
41 |
REAL scavtr(nbtr) ! Coefficient de lessivage |
REAL vdeptr(nbtr) ! Vitesse de depot sec dans la couche Brownienne |
42 |
REAL s |
REAL scavtr(nbtr) ! Coefficient de lessivage |
43 |
C |
REAL s |
44 |
print *, "Call sequence information: initrrnpb" |
|
45 |
print*,'nbtr= ',nbtr |
PRINT *, 'Call sequence information: initrrnpb' |
46 |
print*,'nbsrf= ',nbsrf |
PRINT *, 'nbtr= ', nbtr |
47 |
print*,'klon= ',klon |
PRINT *, 'nbsrf= ', nbsrf |
48 |
C |
PRINT *, 'klon= ', klon |
49 |
C Puis les initialisation specifiques a chaque traceur (pour le moment, Rn222) |
|
50 |
C |
! Puis les initialisation specifiques a chaque traceur (pour le moment, |
51 |
C |
! Rn222) |
52 |
C Radon it = 1 |
|
53 |
c |
|
54 |
IF ( nbtr .LE. 0 ) STOP 'initrrnpb pas glop pas glop' |
! Radon it = 1 |
55 |
it = 1 |
|
56 |
s = 1.E4 ! Source: atome par m2 |
IF (nbtr<=0) STOP 'initrrnpb pas glop pas glop' |
57 |
hsoltr(it) = 0.1 ! Hauteur equivalente du reservoir : |
it = 1 |
58 |
c 1 m * porosite 0.1 |
s = 1.E4 ! Source: atome par m2 |
59 |
tautr(it) = 4.765E5 ! Decroissance du radon, secondes |
hsoltr(it) = 0.1 ! Hauteur equivalente du reservoir : |
60 |
cAA |
! 1 m * porosite 0.1 |
61 |
c tautr(it) = 4.765E55 ! Decroissance du radon,infinie |
tautr(it) = 4.765E5 ! Decroissance du radon, secondes |
62 |
cAA |
! AA |
63 |
vdeptr(it) = 0. ! Pas de depot sec pour le radon |
! tautr(it) = 4.765E55 ! Decroissance du radon,infinie |
64 |
scavtr(it) = 0. ! Pas de lessivage pour le radon |
! AA |
65 |
|
vdeptr(it) = 0. ! Pas de depot sec pour le radon |
66 |
print*, '-------------- SOURCE DU RADON ------------------------ ' |
scavtr(it) = 0. ! Pas de lessivage pour le radon |
67 |
print*,'it = ',it |
|
68 |
print*,'Source : ', s |
PRINT *, '-------------- SOURCE DU RADON ------------------------ ' |
69 |
print*,'Hauteur equivalente du reservoir de sol: ',hsoltr(it) |
PRINT *, 'it = ', it |
70 |
print*,'Decroissance (s): ', tautr(it) |
PRINT *, 'Source : ', s |
71 |
print*,'Vitesse de depot sec: ',vdeptr(it) |
PRINT *, 'Hauteur equivalente du reservoir de sol: ', hsoltr(it) |
72 |
print*,'Facteur de lessivage: ',scavtr(it) |
PRINT *, 'Decroissance (s): ', tautr(it) |
73 |
|
PRINT *, 'Vitesse de depot sec: ', vdeptr(it) |
74 |
DO i = 1,klon |
PRINT *, 'Facteur de lessivage: ', scavtr(it) |
75 |
masktr(i,it) = 0. |
|
76 |
IF ( NINT(pctsrf(i,1)) .EQ. 1 ) masktr(i,it) = 1. |
DO i = 1, klon |
77 |
fshtr(i,it) = s * masktr(i,it) |
masktr(i, it) = 0. |
78 |
|
IF (nint(pctsrf(i,1))==1) masktr(i, it) = 1. |
79 |
cAA |
fshtr(i, it) = s*masktr(i, it) |
80 |
cAA POur l'instant le pctsrf(i,3) = 1.0 |
|
81 |
cAA lorsqu'il ya de la terre mias ne prend aucune autre valeur |
! AA |
82 |
cAA il n'est donc pas necessaire de multiplier fshtr par pctsrf |
! AA POur l'instant le pctsrf(i,3) = 1.0 |
83 |
cAA |
! AA lorsqu'il ya de la terre mias ne prend aucune autre valeur |
84 |
|
! AA il n'est donc pas necessaire de multiplier fshtr par pctsrf |
85 |
END DO |
! AA |
86 |
C |
|
87 |
C 210Pb it = 2 |
END DO |
88 |
C |
|
89 |
IF ( nbtr .LE. 1 ) STOP 'initrrnpb pas glop pas glop' |
! 210Pb it = 2 |
90 |
it = 2 |
|
91 |
s = 0. ! Pas de source !!! |
IF (nbtr<=1) STOP 'initrrnpb pas glop pas glop' |
92 |
hsoltr(it) = 10. ! Hauteur equivalente du reservoir |
it = 2 |
93 |
c a partir duquel le |
s = 0. ! Pas de source !!! |
94 |
c depot Brownien a lieu |
hsoltr(it) = 10. ! Hauteur equivalente du reservoir |
95 |
tautr(it) = 1.028E9 ! Decroissance du Pb210, secondes |
! a partir duquel le |
96 |
vdeptr(it) = 1.E-3 ! 1 mm/s pour le 210Pb |
! depot Brownien a lieu |
97 |
scavtr(it) = .5 ! Lessivage du Pb210 |
tautr(it) = 1.028E9 ! Decroissance du Pb210, secondes |
98 |
DO i = 1,klon |
vdeptr(it) = 1.E-3 ! 1 mm/s pour le 210Pb |
99 |
masktr(i,it) = 1. ! Le depot sec peut avoir lieu partout |
scavtr(it) = .5 ! Lessivage du Pb210 |
100 |
fshtr(i,it) = s * masktr(i,it) |
DO i = 1, klon |
101 |
END DO |
masktr(i, it) = 1. ! Le depot sec peut avoir lieu partout |
102 |
print*, '-------------- SOURCE DU PLOMB ------------------------ ' |
fshtr(i, it) = s*masktr(i, it) |
103 |
print*,'it = ',it |
END DO |
104 |
print*,'Source : ', s |
PRINT *, '-------------- SOURCE DU PLOMB ------------------------ ' |
105 |
print*,'Hauteur equivalente du reservoir : ',hsoltr(it) |
PRINT *, 'it = ', it |
106 |
print*,'Decroissance (s): ', tautr(it) |
PRINT *, 'Source : ', s |
107 |
print*,'Vitesse de depot sec: ',vdeptr(it) |
PRINT *, 'Hauteur equivalente du reservoir : ', hsoltr(it) |
108 |
print*,'Facteur de lessivage: ',scavtr(it) |
PRINT *, 'Decroissance (s): ', tautr(it) |
109 |
c |
PRINT *, 'Vitesse de depot sec: ', vdeptr(it) |
110 |
WRITE(*,*) 'initialisation rnpb ok' |
PRINT *, 'Facteur de lessivage: ', scavtr(it) |
111 |
c |
|
112 |
RETURN |
WRITE (*, *) 'initialisation rnpb ok' |
113 |
END |
|
114 |
|
RETURN |
115 |
|
END SUBROUTINE initrrnpb |