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

Annotation of /trunk/phylmd/radiornpb.f90

Parent Directory Parent Directory | Revision Log Revision Log


Revision 328 - (hide annotations)
Thu Jun 13 14:40:06 2019 UTC (4 years, 11 months ago) by guez
File size: 1378 byte(s)
Change all `.f` suffixes to `.f90`. (The opposite was done in revision
82.)  Because of change of philosopy in GNUmakefile: we already had a
rewritten rule for `.f`, so it does not make the makefile longer to
replace it by a rule for `.f90`. And it spares us options of
makedepf90 and of the compiler. Also we prepare the way for a simpler
`CMakeLists.txt`.

1 guez 17 module radiornpb_m
2    
3     IMPLICIT none
4    
5     contains
6    
7     function radiornpb(tr_seri, pdtphys, tautr)
8    
9 guez 266 ! From phylmd/radiornpb.F, version 1.2, 2005/05/25 13:10:09
10 guez 17
11 guez 266 ! Auteurs : AA + Christophe Genthon (LGGE/CNRS)
12     ! Date: June 1994
13     ! Objet: d\'ecroissance radioactive d'un traceur dans l'atmosph\`ere
14 guez 17
15 guez 266 ! Pour un traceur, le radon. Plus un deuxi\`eme traceur, le 210
16     ! Pb. Le radon d\'ecro\^it en plomb. Le pas de temps "pdtphys" est
17     ! suppos\'e beaucoup plus petit que la constante de temps de
18     ! d\'ecroissance.
19 guez 17
20 guez 265 use dimensions, only: llm, nqmx
21 guez 98 use dimphy, only: klon
22 guez 36 use nr_util, only: assert
23 guez 17
24 guez 266 REAL, intent(in):: tr_seri(:, :, :) ! (klon, llm, nqmx - 2)
25     REAL, intent(in):: pdtphys
26     REAL, intent(in):: tautr(:) ! (nqmx - 2)
27 guez 17 real radiornpb(klon, llm, 2)
28    
29 guez 266 ! Local:
30 guez 17 INTEGER it
31    
32     !-----------------------------------------------
33    
34 guez 266 call assert(shape(tr_seri) == [klon, llm, nqmx - 2], "radiornpb tr_seri")
35 guez 98 call assert(size(tautr) == nqmx - 2, "radiornpb tautr")
36 guez 17
37     DO it = 1, 2
38     IF (tautr(it) > 0.) THEN
39     radiornpb(:, :, it) = - tr_seri(:, :, it) * pdtphys / tautr(it)
40     ELSE
41     radiornpb(:, :, it) = 0.
42     END IF
43     END DO
44    
45 guez 266 ! Cas particulier radon 1 => plomb 2
46 guez 17 radiornpb(:, :, 2) = radiornpb(:, :, 2) - radiornpb(:, :, 1)
47    
48     END function radiornpb
49    
50     end module radiornpb_m

  ViewVC Help
Powered by ViewVC 1.1.21