Contents
dlasrt - the numbers in D in increasing order (if ID = 'I')
or in decreasing order (if ID = 'D' )
SUBROUTINE DLASRT(ID, N, D, INFO)
CHARACTER * 1 ID
INTEGER N, INFO
DOUBLE PRECISION D(*)
SUBROUTINE DLASRT_64(ID, N, D, INFO)
CHARACTER * 1 ID
INTEGER*8 N, INFO
DOUBLE PRECISION D(*)
F95 INTERFACE
SUBROUTINE LASRT(ID, [N], D, [INFO])
CHARACTER(LEN=1) :: ID
INTEGER :: N, INFO
REAL(8), DIMENSION(:) :: D
SUBROUTINE LASRT_64(ID, [N], D, [INFO])
CHARACTER(LEN=1) :: ID
INTEGER(8) :: N, INFO
REAL(8), DIMENSION(:) :: D
C INTERFACE
#include <sunperf.h>
void dlasrt(char id, int n, double *d, int *info);
void dlasrt_64(char id, long n, double *d, long *info);
dlasrt the numbers in D in increasing order (if ID = 'I') or
in decreasing order (if ID = 'D' ).
Use Quick Sort, reverting to Insertion sort on arrays of
size <= 20. Dimension of STACK limits N to about 2**32.
ID (input)
= 'I': sort D in increasing order;
= 'D': sort D in decreasing order.
N (input) The length of the array D.
D (input/output)
On entry, the array to be sorted. On exit, D has
been sorted into increasing order (D(1) <= ... <=
D(N) ) or into decreasing order (D(1) >= ... >=
D(N) ), depending on ID.
INFO (output)
= 0: successful exit
< 0: if INFO = -i, the i-th argument had an ille-
gal value