C #SORTA V1A 12-DEC-72. C LAST UPDATE: C SUBROUTINE SORTA(A,N) DIMENSION A(N) C C *PURPOSE. C TO SORT IN CORE A REAL ARRAY OF ELEMENTS INTO ALGEBRAICALLY C INCREASING ORDER. C C *PARAMETERS: C C A - THE REAL ARRAY OF DIMENSION "N" OR MORE WHOSE FIRST "N" C ELEMENTS WILL BE SORTED. C N - THE LOGICAL LENGTH OF THE VECTOR TO BE SORTED. C C INPUT PARAMETERS: C A, N C OUTPUT PARAMETERS: C A C C *METHOD. C THE STRAIGHTFORWARD "SINKING SORT" METHOD IS USED. THIS BECOMES C TIME CONSUMING FOR LARGE ARRAYS WHICH ARE POORLY SORTED TO BEGIN C WITH AND IT WILL BE BETTER TO USE "SORTB" IN THESE CASES. C C *ACCURACY. C C *RESTRICTIONS. C C *ERROR CODES. C C *NONSTANDARD ROUTINES CALLED. C C *TYPICAL TIMES. C DEPEND ON THE INITIAL ORDERING OF THE ARRAY. C C *ORIGIN. M.R.MANNING. C C *COMMENTS. C SORTB IS OFTEN SUPERIOR. C C #END C C #START. I= 1 10 IF(I.GE.N) RETURN T=A(I+1) IF(A(I).LE.T) GO TO 30 K=I 20 A(K+1)=A(K) K=K-1 IF(K) 25,25,24 24 IF(T.LT.A(K) ) GO TO 20 25 A(K+1)=T 30 I=I+1 GO TO 10 END