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

Contents of /trunk/phylmd/initrrnpb.f90

Parent Directory Parent Directory | Revision Log Revision Log


Revision 81 - (show annotations)
Wed Mar 5 14:38:41 2014 UTC (10 years, 2 months ago) by guez
File size: 4096 byte(s)
 Converted to free source form files which were still in fixed source
form. The conversion was done using the polish mode of the NAG Fortran
Compiler.

In addition to converting to free source form, the processing of the
files also:

-- indented the code (including comments);

-- set Fortran keywords to uppercase, and set all other identifiers
to lower case;

-- added qualifiers to end statements (for example "end subroutine
conflx", instead of "end");

-- changed the terminating statements of all DO loops so that each
loop ends with an ENDDO statement (instead of a labeled continue).

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

  ViewVC Help
Powered by ViewVC 1.1.21