| 1 | |
|---|
| 2 | ! $Id $ |
|---|
| 3 | |
|---|
| 4 | SUBROUTINE radio_decay(radio,rnpb,dtime,tautr,tr,d_tr) |
|---|
| 5 | |
|---|
| 6 | ! Caluclate radioactive decay for all tracers with radio(it)=true |
|---|
| 7 | |
|---|
| 8 | USE dimphy |
|---|
| 9 | USE infotrac_phy, ONLY: nbtr |
|---|
| 10 | USE traclmdz_mod, ONLY: id_rn, id_pb |
|---|
| 11 | IMPLICIT NONE |
|---|
| 12 | !----------------------------------------------------------------------- |
|---|
| 13 | ! Auteur(s): AA + CG (LGGE/CNRS) Date 24-06-94 |
|---|
| 14 | ! Objet: Calcul de la tendance radioactive des traceurs type radioelements |
|---|
| 15 | ! Cas particulier pour le couple radon-plomb : Le radon decroit en plomb |
|---|
| 16 | !----------------------------------------------------------------------- |
|---|
| 17 | |
|---|
| 18 | ! Entrees |
|---|
| 19 | |
|---|
| 20 | LOGICAL,DIMENSION(nbtr),INTENT(IN) :: radio ! .TRUE. = traceur radioactif |
|---|
| 21 | LOGICAL,INTENT(IN) :: rnpb ! .TRUE. = decroissance RN = source PB |
|---|
| 22 | REAL,INTENT(IN) :: dtime ! Pas de temps physique (secondes) |
|---|
| 23 | REAL,DIMENSION(nbtr),INTENT(IN) :: tautr ! Constante de decroissance radioactive |
|---|
| 24 | REAL,DIMENSION(klon,klev,nbtr),INTENT(IN) :: tr ! Concentrations traceurs U/kgA |
|---|
| 25 | |
|---|
| 26 | ! Sortie |
|---|
| 27 | |
|---|
| 28 | REAL,DIMENSION(klon,klev,nbtr),INTENT(OUT) :: d_tr ! Tendance de decroissance radioactive |
|---|
| 29 | |
|---|
| 30 | ! Locales |
|---|
| 31 | |
|---|
| 32 | INTEGER :: i,k,it |
|---|
| 33 | |
|---|
| 34 | |
|---|
| 35 | DO it = 1,nbtr |
|---|
| 36 | d_tr(:,:,it) = 0. |
|---|
| 37 | IF ( radio(it) ) THEN |
|---|
| 38 | IF (tautr(it) > 0.) THEN |
|---|
| 39 | DO k = 1,klev |
|---|
| 40 | DO i = 1,klon |
|---|
| 41 | d_tr(i,k,it) = - tr(i,k,it) * dtime / tautr(it) |
|---|
| 42 | END DO |
|---|
| 43 | END DO |
|---|
| 44 | END IF |
|---|
| 45 | END IF |
|---|
| 46 | END DO |
|---|
| 47 | |
|---|
| 48 | !------------------------------------------------------- |
|---|
| 49 | ! Cas particulier radon (id_rn) => plomb (id_pb) |
|---|
| 50 | !------------------------------------------------------- |
|---|
| 51 | IF ( rnpb ) THEN |
|---|
| 52 | DO k = 1,klev |
|---|
| 53 | DO i = 1,klon |
|---|
| 54 | d_tr(i,k,id_pb) = d_tr(i,k,id_pb) - d_tr(i,k,id_rn) |
|---|
| 55 | ENDDO |
|---|
| 56 | ENDDO |
|---|
| 57 | ENDIF |
|---|
| 58 | |
|---|
| 59 | END SUBROUTINE radio_decay |
|---|