SUBROUTINE ORDERI(N,NUM,L) C C NUMERICALLY ORDERS AN INTEGER ARRAY IN INCREASING ORDER. C ALSO GENERATES AN ARRAY OF POINTERS RELATING THE RE-ORDERED C LOCATION TO THE ORIGINAL LOCATION. C C R. FRENCH SEPTEMBER,1974 C C CALLING SEQUENCE C C CALL ORDERI(N,NUM,L) C C N = INTEGER ARRAY TO BE RE-ORDERED C NUM = NUMBER OF VALUES IN N C L = ARRAY OF POINTERS TO ORIGINAL LOCATION C DIMENSION N(1),L(1) DO 10 I=1,NUM 10 L(I)=I J=NUM+1 20 K=0 J=J-1 DO 30 I=2,J IF (N(I).GE.N(I-1)) GO TO 30 M=N(I) N(I)=N(I-1) N(I-1)=M M=L(I) L(I)=L(I-1) L(I-1)=M K=1 30 CONTINUE IF (K.EQ.1) GO TO 20 RETURN END