File: /nfs/home/0/users/jenkins/mfix.git/model/des/des_functions.f
1
2
3
4
5
6
7
8
9
10
11
12 INTEGER FUNCTION DES_GETINDEXFROMPOS(LIM1,LIM2,PART_POS,&
13 GRID_POS,AXIS,AXIS_INDEX)
14
15
16
17
18 USE compar
19 USE funits
20 IMPLICIT NONE
21
22
23
24
25
26 INTEGER, INTENT (IN) :: LIM1, LIM2
27
28 DOUBLE PRECISION, INTENT (IN) :: PART_POS
29
30
31 DOUBLE PRECISION, DIMENSION(:), INTENT (IN) :: GRID_POS
32
33 CHARACTER(LEN=1), INTENT (IN) :: AXIS, AXIS_INDEX
34
35
36
37
38 INTEGER IND
39
40
41
42 = -1
43
44 IF (LIM1 <= LIM2) THEN
45 DO IND = LIM1, LIM2
46 IF (PART_POS >= GRID_POS(IND-1) .AND. &
47 PART_POS < GRID_POS(IND)) EXIT
48 ENDDO
49 ELSEIF (LIM1 > LIM2) THEN
50 DO IND = LIM1, LIM2, -1
51 IF (PART_POS >= GRID_POS(IND-1) .AND. &
52 PART_POS < GRID_POS(IND)) EXIT
53 ENDDO
54 ENDIF
55
56 IF (IND == -1) THEN
57 WRITE (UNIT_LOG, 1001) AXIS_INDEX, AXIS, PART_POS, &
58 AXIS_INDEX, LIM1, AXIS_INDEX, LIM2
59 WRITE (*,1001) AXIS_INDEX, AXIS, PART_POS, &
60 AXIS_INDEX, LIM1, AXIS_INDEX, LIM2
61
62 ENDIF
63
64 DES_GETINDEXFROMPOS = IND
65
66 RETURN
67
68 1001 FORMAT(/1X,70('*')//,' From: DES_GETINDEXFROMPOS',/,' Message: ',&
69 'Could not identify the ', A, ' index associated with the ',&
70 'particles ',/10X,A, '-position= ',ES15.5,' between the ',&
71 'limits ',A,'=',I5,/10X,' and ',A,'=',I5,'.',/1X,70('*')/)
72
73 END FUNCTION DES_GETINDEXFROMPOS
74
75
76
77
78