source: JEM-EUSO/esaf_lal/tags/v1_r0/esaf/packages/simulation/externals/slast/src/atm/mie_r_rint.F @ 117

Last change on this file since 117 was 117, checked in by moretto, 11 years ago

ESAF version compilable on mac OS

File size: 1.4 KB
Line 
1*
2*     ... THIS FUNCTION RETURNS THE MIE TRANSITION FACTOR   ...
3*     ... IN THE ATMOSPHERE BETWEEN THE POINTS WITH         ...
4*     ... RADIUS_VECTORS R1(3) AND R2(3)                    ...
5*     ... DATE: 09.06.2002
6*     ... AUTHOR: D.V. NAUMOV
7*
8      REAL FUNCTION MIE_R_RINT(R1,R2)
9      IMPLICIT NONE
10#include "detector.inc"
11#include "event.inc"
12      INTEGER i_aux_hbk, ID
13      REAL R1(3),R2(3),PI,HALF_PI,Hstar,H_INT,THETA_INT
14      REAL H_R1,H_R2,THETA_R1,THETA_R2
15      REAL MIE_R1,MIE_R2,HXY
16      SAVE i_aux_hbk
17      DATA i_aux_hbk/0/
18      LOGICAL HEXIST
19*
20      PI      = ACOS(-1.)
21      HALF_PI = PI/2
22      ID = 10000
23*     
24         CALL IMPACT(R1,Hstar,H_INT,THETA_INT,H_R1,THETA_R1)
25         CALL IMPACT(R2,Hstar,H_INT,THETA_INT,H_R2,THETA_R2)
26*     ... COMPUTE MIE FACTORS BETWEEN R1 AND INFINITY ...
27         IF(THETA_R1.LE.HALF_PI) THEN
28            MIE_R1 = HXY(ID,THETA_R1,H_R1)
29         ELSE
30            THETA_R1 = PI - THETA_R1
31            MIE_R1 = 2*HXY(ID,Hstar,HALF_PI) - HXY(ID,THETA_R1,H_R1)
32         ENDIF
33*     ... COMPUTE MIE FACTORS BETWEEN R2 AND INFINITY ...
34         IF(THETA_R2.LE.HALF_PI) THEN
35            MIE_R2 = HXY(ID,THETA_R2,H_R2)
36         ELSE
37            THETA_R2 = PI - THETA_R2
38            MIE_R2 = 2*HXY(ID,Hstar,HALF_PI) - HXY(ID,THETA_R2,H_R2)
39         ENDIF
40*     ... COMPUTE MIE FACTOR BETWEEN R1 AND R2 ...
41         MIE_R_RINT = EXP(-ABS(MIE_R1 - MIE_R2))
42         
43 1000 CONTINUE
44      END
Note: See TracBrowser for help on using the repository browser.