source: LMDZ6/trunk/libf/phylmd/Dust/bcscav_spl.f90 @ 5248

Last change on this file since 5248 was 5246, checked in by abarral, 6 weeks ago

Convert fixed-form to free-form sources .F -> .{f,F}90
(WIP: some .F remain, will be handled in subsequent commits)

File size: 1.7 KB
RevLine 
[5246]1SUBROUTINE bcscav_spl(pdtime,flxr,flxs,alpha_r,alpha_s,x,dx)
[2630]2
[5246]3  USE dimphy
4  IMPLICIT NONE
5  !=====================================================================
6  ! Objet : below-cloud scavenging of tracers
7  ! Date : september 1999
8  ! Auteur: O. Boucher (LOA)
9  !=====================================================================
10  !
11  INCLUDE "dimensions.h"
12  INCLUDE "chem.h"
13  INCLUDE "YOMCST.h"
14  INCLUDE "YOECUMF.h"
15  !
16  REAL :: pdtime, alpha_r, alpha_s, R_r, R_s
17  PARAMETER (R_r=0.001)          !--mean raindrop radius (m)
18  PARAMETER (R_s=0.001)          !--mean snow crystal radius (m)
19  REAL :: flxr(klon,klev)         ! liquid precipitation rate (kg/m2/s)
20  REAL :: flxs(klon,klev)         ! solid  precipitation rate (kg/m2/s)
21  REAL :: flxr_aux(klon,klev+1)
22  REAL :: flxs_aux(klon,klev+1)
23  REAL :: x(klon,klev)              ! q de traceur
24  REAL :: dx(klon,klev)             ! tendance de traceur
25  !
26  !--variables locales
27  INTEGER :: i, k
28  REAL :: pr, ps, ice, water
29  !
30  !------------------------------------------
31  !
32  ! NHL
33  ! Auxiliary variables defined to deal with the fact that precipitation
34  ! fluxes are defined on klev levels only.
35  ! NHL
36  !
37  flxr_aux(:,klev+1)=0.0
38  flxs_aux(:,klev+1)=0.0
39  flxr_aux(:,1:klev)=flxr(:,:)
40  flxs_aux(:,1:klev)=flxs(:,:)
41  !
42  DO k=1, klev
43  DO i=1, klon
44   pr=0.5*(flxr_aux(i,k)+flxr_aux(i,k+1))
45   ps=0.5*(flxs_aux(i,k)+flxs_aux(i,k+1))
46   water=pr*alpha_r/R_r/rho_water
47   ice=ps*alpha_s/R_s/rho_ice
48   dx(i,k)=-3./4.*x(i,k)*pdtime*(water+ice)
49  !tmp       dx(i,k)=-3./4.*x(i,k)*pdtime*
50  !tmp     .         (pr*alpha_r/R_r/rho_water+ps*alpha_s/R_s/rho_ice)
51  ENDDO
52  ENDDO
53  !
54  RETURN
55END SUBROUTINE bcscav_spl
Note: See TracBrowser for help on using the repository browser.