source: LMDZ6/branches/Optimisation_LMDZ/libf/phylmd/initrrnpb.F90 @ 3758

Last change on this file since 3758 was 2320, checked in by Ehouarn Millour, 9 years ago

Physics/dynamics separation: make an infotrac_phy module, which should be used from within the physics, and is initialized from infotrac (dynamics) via iniphysiq.
EM

  • Property copyright set to
    Name of program: LMDZ
    Creation date: 1984
    Version: LMDZ5
    License: CeCILL version 2
    Holder: Laboratoire de m\'et\'eorologie dynamique, CNRS, UMR 8539
    See the license file in the root directory
  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 3.6 KB
Line 
1!
2! $Id: initrrnpb.F90 2320 2015-07-01 13:57:32Z adurocher $
3!
4SUBROUTINE  initrrnpb(ftsol,pctsrf,masktr,fshtr,hsoltr,tautr,vdeptr,scavtr)
5  USE dimphy
6  USE infotrac_phy, ONLY : nbtr
7  USE traclmdz_mod, ONLY : id_rn, id_pb
8  USE indice_sol_mod
9  IMPLICIT NONE
10!======================================================================
11! Auteur(s): AA + CG (LGGE/CNRS) Date 24-06-94
12! Objet: initialisation des constantes des traceurs
13! id_rn : identificateur du traceur radon
14! id_pb : identificateur du traceur plomb
15!======================================================================
16! Arguments:
17! nbtr.............. nombre de vrais traceurs (sans l'eau)
18! ftsol....input-R-  Temperature du sol (Kelvin)
19! pctsrf...input-R-  Nature de sol (pourcentage de sol)
20! masktr...output-R- Masque reservoir de sol traceur (1 = reservoir)
21! fshtr....output-R- Flux surfacique de production dans le reservoir de sol
22! hsoltr...output-R- Epaisseur equivalente du reservoir de sol
23! tautr....output-R- Constante de decroissance radioactive du traceur
24! vdeptr...output-R- Vitesse de depot sec dans la couche Brownienne
25! scavtr...output-R- Coefficient de lessivage
26!======================================================================
27 
28  REAL,DIMENSION(klon,nbsrf),INTENT(IN) :: pctsrf
29  REAL,DIMENSION(klon,nbsrf),INTENT(IN) :: ftsol
30  REAL,DIMENSION(klon,nbtr),INTENT(OUT) :: masktr
31  REAL,DIMENSION(klon,nbtr),INTENT(OUT) :: fshtr
32  REAL,DIMENSION(nbtr),INTENT(OUT)      :: hsoltr
33  REAL,DIMENSION(nbtr),INTENT(OUT)      :: tautr
34  REAL,DIMENSION(nbtr),INTENT(OUT)      :: vdeptr
35  REAL,DIMENSION(nbtr),INTENT(OUT)      :: scavtr
36  INTEGER                               :: i, it
37  REAL                                  :: s
38
39  CHARACTER (LEN=20) :: modname='initrrnpb'
40  CHARACTER (LEN=80) :: abort_message
41
42!
43! Radon it = id_rn
44!----------------
45  IF (id_rn /= 0) THEN
46     it = id_rn
47     s = 1.E4             ! Source: atome par m2
48     hsoltr(it) = 0.1     ! Hauteur equivalente du reservoir :
49                          ! 1 m * porosite 0.1
50     tautr(it) = 4.765E5  ! Decroissance du radon, secondes
51     vdeptr(it) = 0.      ! Pas de depot sec pour le radon
52     scavtr(it) = 0.      ! Pas de lessivage pour le radon
53     
54     WRITE(*,*)'-------------- SOURCE DU RADON ------------------------ '
55     WRITE(*,*)'it = ',it
56     WRITE(*,*)'Source : ', s
57     WRITE(*,*)'Hauteur equivalente du reservoir de sol: ',hsoltr(it)
58     WRITE(*,*)'Decroissance (s): ', tautr(it)
59     WRITE(*,*)'Vitesse de depot sec: ',vdeptr(it)
60     WRITE(*,*)'Facteur de lessivage: ',scavtr(it)
61
62     DO i = 1,klon
63        masktr(i,it) = 0.
64        IF ( NINT(pctsrf(i,1)) .EQ. 1 ) masktr(i,it) = 1.
65        fshtr(i,it) = s * masktr(i,it)
66     END DO
67
68  END IF ! id_rn /= 0
69
70!
71! 210Pb it = id_pb
72!----------------
73  IF (id_pb /= 0) THEN
74     it = id_pb
75     s = 0.                ! Pas de source
76     hsoltr(it) = 10.      ! Hauteur equivalente du reservoir
77                           ! a partir duquel le depot Brownien a lieu
78     tautr(it) = 1.028E9   ! Decroissance du Pb210, secondes
79     vdeptr(it) = 1.E-3    ! 1 mm/s pour le 210Pb
80     scavtr(it) =  .5      ! Lessivage du Pb210
81     DO i = 1,klon
82        masktr(i,it) = 1.  ! Le depot sec peut avoir lieu partout
83        fshtr(i,it) = s * masktr(i,it)
84     END DO
85     WRITE(*,*)'-------------- SOURCE DU PLOMB ------------------------ '
86     WRITE(*,*)'it = ',it
87     WRITE(*,*)'Source : ', s
88     WRITE(*,*)'Hauteur equivalente du reservoir : ',hsoltr(it)
89     WRITE(*,*)'Decroissance (s): ', tautr(it)
90     WRITE(*,*)'Vitesse de depot sec: ',vdeptr(it)
91     WRITE(*,*)'Facteur de lessivage: ',scavtr(it)
92     
93  END IF
94     
95END SUBROUTINE initrrnpb
Note: See TracBrowser for help on using the repository browser.