*DECK DQPSRT SUBROUTINE DQPSRT (LIMIT, LAST, MAXERR, ERMAX, ELIST, IORD, NRMAX) C***BEGIN PROLOGUE DQPSRT C***SUBSIDIARY C***PURPOSE This routine maintains the descending ordering in the C list of the local error estimated resulting from the C interval subdivision process. At each call two error C estimates are inserted using the sequential search C method, top-down for the largest error estimate and C bottom-up for the smallest error estimate. C***LIBRARY SLATEC C***TYPE DOUBLE PRECISION (QPSRT-S, DQPSRT-D) C***KEYWORDS SEQUENTIAL SORTING C***AUTHOR Piessens, Robert C Applied Mathematics and Programming Division C K. U. Leuven C de Doncker, Elise C Applied Mathematics and Programming Division C K. U. Leuven C***DESCRIPTION C C Ordering routine C Standard fortran subroutine C Double precision version C C PARAMETERS (MEANING AT OUTPUT) C LIMIT - Integer C Maximum number of error estimates the list C can contain C C LAST - Integer C Number of error estimates currently in the list C C MAXERR - Integer C MAXERR points to the NRMAX-th largest error C estimate currently in the list C C ERMAX - Double precision C NRMAX-th largest error estimate C ERMAX = ELIST(MAXERR) C C ELIST - Double precision C Vector of dimension LAST containing C the error estimates C C IORD - Integer C Vector of dimension LAST, the first K elements C of which contain pointers to the error C estimates, such that C ELIST(IORD(1)),..., ELIST(IORD(K)) C form a decreasing sequence, with C K = LAST if LAST.LE.(LIMIT/2+2), and C K = LIMIT+1-LAST otherwise C C NRMAX - Integer C MAXERR = IORD(NRMAX) C C***SEE ALSO DQAGE, DQAGIE, DQAGPE, DQAWSE C***ROUTINES CALLED (NONE) C***REVISION HISTORY (YYMMDD) C 800101 DATE WRITTEN C 890831 Modified array declarations. (WRB) C 890831 REVISION DATE from Version 3.2 C 891214 Prologue converted to Version 4.0 format. (BAB) C 900328 Added TYPE section. (WRB) C***END PROLOGUE DQPSRT