[3] | 1 | subroutine rdf() |
---|
| 2 | |
---|
| 3 | |
---|
| 4 | |
---|
| 5 | #include "dimensions.h" |
---|
| 6 | #include "microtab.h" |
---|
| 7 | #include "clesphys.h" |
---|
| 8 | |
---|
| 9 | common/part/v,rayon,vrat,dr,dv |
---|
| 10 | |
---|
| 11 | * declaration des variables communes |
---|
| 12 | * ---------------------------------- |
---|
| 13 | |
---|
| 14 | integer xnz,xnrad,xnztop |
---|
| 15 | integer li,lf,h |
---|
| 16 | * nrad dans microtab.h |
---|
| 17 | real v(nrad),rayon(nrad),vrat,dr(nrad),dv(nrad) |
---|
| 18 | |
---|
| 19 | * controles |
---|
| 20 | |
---|
| 21 | |
---|
| 22 | |
---|
| 23 | * definition de la grille de rayon |
---|
| 24 | * -------------------------------- |
---|
| 25 | print*,'NOUVELLE GRILLE RAYON BASEE SUR 40 BINS' |
---|
| 26 | print*,'ATTENTION; TRAVAIL AVEC UN NOUVEAU RAYON' |
---|
| 27 | print*,' DE MONOMER : ' |
---|
| 28 | cbase=nint(40./nrad)*1. |
---|
| 29 | pi=3.1415926 |
---|
| 30 | rayon(1)=13e-10*2**((cbase/2.-.5)/3.) |
---|
| 31 | rayon(1)=13e-10*2.**.3333333333333 !<***** |
---|
| 32 | vrat=2.**cbase |
---|
| 33 | v(1)=4./3.*pi*rayon(1)**3 |
---|
| 34 | |
---|
| 35 | do 9 i=1,nrad-1 |
---|
| 36 | rayon(i+1)=rayon(1)*vrat**(i/3.) |
---|
| 37 | v(i+1)=v(1)*vrat**i |
---|
| 38 | 9 continue |
---|
| 39 | |
---|
| 40 | do 10 i=1,nrad |
---|
| 41 | dv(i)=((vrat-1.)/(vrat+1.))*2.*v(i) |
---|
| 42 | dr(i)=(2./(vrat+1))**(1./3.)*(vrat**(1./3.)-1.)*rayon(i) |
---|
| 43 | 10 continue |
---|
| 44 | |
---|
| 45 | |
---|
| 46 | |
---|
| 47 | |
---|
| 48 | |
---|
| 49 | * parametres fractals : rf & df(h) |
---|
| 50 | *------------------------------------ |
---|
| 51 | |
---|
| 52 | rf0=0.066e-6 !Rayon monomere...OBLIGATOIRE meme en df=3! |
---|
| 53 | !meme si dans ce cas, sa valeur n'a aucune |
---|
| 54 | !importance |
---|
| 55 | do h=1,nrad |
---|
| 56 | rf(h)=rf0 !<********* |
---|
| 57 | enddo |
---|
| 58 | |
---|
| 59 | print*, rf(5),' METRES ' |
---|
| 60 | |
---|
| 61 | do h=1,nrad |
---|
| 62 | df(h)=3. !Df pour petites particules |
---|
| 63 | if(rayon(h).ge.rf(h)) df(h)=df_GP |
---|
| 64 | enddo |
---|
| 65 | |
---|
| 66 | |
---|
| 67 | |
---|
| 68 | aknc=2.92 !<--------Df=3 |
---|
| 69 | aknc=6.86 !<--------Df=2 |
---|
| 70 | |
---|
| 71 | |
---|
| 72 | print*,'tcorrect=',tcorrect,' tx=',tx |
---|
[97] | 73 | print*,'Df aerosols /1 a nqtot/' |
---|
[3] | 74 | write(*,*) (rf(h),h=1,nrad) |
---|
| 75 | write(*,*) (df(h),h=1,nrad) |
---|
| 76 | write(*,*) (rayon(h),h=1,nrad) |
---|
| 77 | |
---|
| 78 | |
---|
| 79 | |
---|
| 80 | return |
---|
| 81 | end |
---|
| 82 | |
---|