qsort_m Module

Implements quicksort for a sequence of integers and reals, in combination with insertion sort for very short sequences.

  • Quick sort routine from Brainerd, W.S., Goldberg, C.H. & Adams, J.C. (1990) "Programmer's Guide to Fortran 90", McGraw-Hill ISBN 0-07-000248-7, pages 149-150.
  • Modified by Alan Miller to include an associated integer array which gives the positions of the elements in the original order.
  • Modified for integer array by Sarit Dutta

Uses

  • module~~qsort_m~~UsesGraph module~qsort_m qsort_m module~constants_m constants_m module~qsort_m->module~constants_m iso_fortran_env iso_fortran_env module~constants_m->iso_fortran_env

Used by

  • module~~qsort_m~~UsedByGraph module~qsort_m qsort_m module~vector_m vector_m module~vector_m->module~qsort_m module~connectivity_m connectivity_m module~connectivity_m->module~vector_m module~table_m table_m module~connectivity_m->module~table_m module~table_m->module~vector_m module~pairtab_m pairtab_m module~pairtab_m->module~vector_m module~pairtab_m->module~connectivity_m module~pairtab_m->module~table_m module~cell_list_m cell_list_m module~pairtab_m->module~cell_list_m module~aabbtree_m aabbtree_m module~pairtab_m->module~aabbtree_m module~cell_list_m->module~vector_m module~aabbtree_m->module~vector_m module~aabbtree_sm aabbtree_sm module~aabbtree_sm->module~aabbtree_m module~interaction_m interaction_m module~interaction_m->module~table_m module~interaction_m->module~pairtab_m module~bd_solver_m bd_solver_m module~bd_solver_m->module~interaction_m module~setup_m setup_m module~setup_m->module~interaction_m module~setup_m->module~bd_solver_m program~main main program~main->module~setup_m

Contents


Subroutines

public subroutine iqsort(list, order)

Sorts a sequence of integers

Arguments

Type IntentOptional AttributesName
integer, intent(inout), DIMENSION (:):: list

Sequence of integers to be sorted

integer, intent(out), optional DIMENSION (:):: order

Indices of the sorted sequence

public subroutine dqsort(list, order)

Sorts a sequence of reals

Arguments

Type IntentOptional AttributesName
real(kind=RP), intent(inout), DIMENSION (:):: list

Sequence of reals to be sorted

integer, intent(out), optional DIMENSION (:):: order

Indices of the sorted sequence