blob: b014028024e58163c87352d0a1495db85add9e46 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
*DECK DETRTR
SUBROUTINE DETRTR(DA,A,IA,A1,A2,A3,II1,II2,II3)
*
*----------------------------------------------------------------------
*Purpose:
* Obtain the coordinates of a point where the interpolation is
* performed
*
*Author(s):
* ???
*
*Parameters:
* DA
* A
* IA
* A1
* A2
* A3
* II1
* II2
* II3
*
*----------------------------------------------------------------------
*
DIMENSION A(*)
CHARACTER*6 CLNAME
*
CLNAME = 'SORTR '
DIF1 = 1000000.
DIF2 = 1000001.
DIF3 = 1000002.
II1 = 1000000
II2 = 1000001
II3 = 1000002
*
DO 10 II=1,IA
DIF = ABS(DA-A(II))
IF ( DIF .LE. DIF1 ) THEN
DIF3 = DIF2
DIF2 = DIF1
DIF1 = DIF
II3 = II2
II2 = II1
II1 = II
ELSE IF ( DIF .LE. DIF2 ) THEN
DIF3 = DIF2
DIF2 = DIF
II3 = II2
II2 = II
ELSE IF ( DIF .LE. DIF3 ) THEN
DIF3 = DIF
II3 = II
ENDIF
10 CONTINUE
A1 = A(II1)
A2 = A(II2)
A3 = A(II3)
RETURN
END
|