SURFEX v8.1
General documentation of Surfex
Data Types | Functions/Subroutines | Variables
ecsort_mix Module Reference

Data Types

interface  keysort
 
interface  sorting_method
 

Functions/Subroutines

subroutine int_sorting_method (INEW, IOLD)
 
subroutine str_sorting_method (CDNEW, IOLD)
 
subroutine, public init_index (INDEX, INDEX_ADJ)
 
subroutine, public adjust_index (INDEX, INDEX_ADJ)
 
subroutine, public get_rank (INDEX, RANK, INDEX_ADJ)
 

Variables

integer(kind=jpim), parameter nthrds = 64
 
integer(kind=jpim), parameter sizeof_int4 = 4
 
integer(kind=jpim), parameter sizeof_int8 = 8
 
integer(kind=jpim), parameter sizeof_real4 = 4
 
integer(kind=jpim), parameter sizeof_real8 = 8
 
integer(kind=jpim), parameter min_method = 1
 
integer(kind=jpim), parameter max_method = 5
 
integer(kind=jpim), parameter radixsort_method = 1
 
integer(kind=jpim), parameter heapsort_method = 2
 
integer(kind=jpim), parameter quicksort_method = 3
 
integer(kind=jpim), parameter countingsort_method = 4
 
integer(kind=jpim), parameter gnomesort_method = 5
 
character(len=12), dimension(min_method:max_method), parameter method_name = (/ 'RADIXSORT ' ,'HEAPSORT ' ,'QUICKSORT ' ,'COUNTINGSORT' ,'GNOMESORT ' /)
 
integer(kind=jpim) default_method = RADIXSORT_METHOD
 
integer(kind=jpim), dimension(nthrdscurrent_method = RADIXSORT_METHOD
 
integer(kind=jpim) nomp = -1
 
integer(kind=jpim) nsinfo = 0
 

Function/Subroutine Documentation

◆ adjust_index()

subroutine, public ecsort_mix::adjust_index ( integer(kind=jpim), dimension(:), intent(inout)  INDEX,
integer(kind=jpim), intent(in)  INDEX_ADJ 
)

Definition at line 273 of file ecsort_mix.F90.

◆ get_rank()

subroutine, public ecsort_mix::get_rank ( integer(kind=jpim), dimension(:), intent(in)  INDEX,
integer(kind=jpim), dimension(:), intent(out)  RANK,
integer(kind=jpim), intent(in), optional  INDEX_ADJ 
)

Definition at line 289 of file ecsort_mix.F90.

◆ init_index()

subroutine, public ecsort_mix::init_index ( integer(kind=jpim), dimension(:), intent(out)  INDEX,
integer(kind=jpim), intent(in), optional  INDEX_ADJ 
)

Definition at line 253 of file ecsort_mix.F90.

◆ int_sorting_method()

subroutine ecsort_mix::int_sorting_method ( integer(kind=jpim), intent(in), optional  INEW,
integer(kind=jpim), intent(out), optional  IOLD 
)
private

Definition at line 116 of file ecsort_mix.F90.

Here is the call graph for this function:

◆ str_sorting_method()

subroutine ecsort_mix::str_sorting_method ( character(len=*), intent(in)  CDNEW,
integer(kind=jpim), intent(out), optional  IOLD 
)
private

Definition at line 225 of file ecsort_mix.F90.

Here is the call graph for this function:

Variable Documentation

◆ countingsort_method

integer(kind=jpim), parameter ecsort_mix::countingsort_method = 4
private

Definition at line 58 of file ecsort_mix.F90.

◆ current_method

integer(kind=jpim), dimension(nthrds) ecsort_mix::current_method = RADIXSORT_METHOD
private

Definition at line 76 of file ecsort_mix.F90.

◆ default_method

integer(kind=jpim) ecsort_mix::default_method = RADIXSORT_METHOD
private

Definition at line 75 of file ecsort_mix.F90.

◆ gnomesort_method

integer(kind=jpim), parameter ecsort_mix::gnomesort_method = 5
private

Definition at line 59 of file ecsort_mix.F90.

◆ heapsort_method

integer(kind=jpim), parameter ecsort_mix::heapsort_method = 2
private

Definition at line 56 of file ecsort_mix.F90.

◆ max_method

integer(kind=jpim), parameter ecsort_mix::max_method = 5
private

Definition at line 53 of file ecsort_mix.F90.

◆ method_name

character(len=12), dimension(min_method:max_method), parameter ecsort_mix::method_name = (/ 'RADIXSORT ' ,'HEAPSORT ' ,'QUICKSORT ' ,'COUNTINGSORT' ,'GNOMESORT ' /)
private

Definition at line 61 of file ecsort_mix.F90.

◆ min_method

integer(kind=jpim), parameter ecsort_mix::min_method = 1
private

Definition at line 52 of file ecsort_mix.F90.

◆ nomp

integer(kind=jpim) ecsort_mix::nomp = -1
private

Definition at line 85 of file ecsort_mix.F90.

◆ nsinfo

integer(kind=jpim) ecsort_mix::nsinfo = 0
private

Definition at line 91 of file ecsort_mix.F90.

◆ nthrds

integer(kind=jpim), parameter ecsort_mix::nthrds = 64
private

Definition at line 45 of file ecsort_mix.F90.

◆ quicksort_method

integer(kind=jpim), parameter ecsort_mix::quicksort_method = 3
private

Definition at line 57 of file ecsort_mix.F90.

◆ radixsort_method

integer(kind=jpim), parameter ecsort_mix::radixsort_method = 1
private

Definition at line 55 of file ecsort_mix.F90.

◆ sizeof_int4

integer(kind=jpim), parameter ecsort_mix::sizeof_int4 = 4
private

Definition at line 47 of file ecsort_mix.F90.

◆ sizeof_int8

integer(kind=jpim), parameter ecsort_mix::sizeof_int8 = 8
private

Definition at line 48 of file ecsort_mix.F90.

◆ sizeof_real4

integer(kind=jpim), parameter ecsort_mix::sizeof_real4 = 4
private

Definition at line 49 of file ecsort_mix.F90.

◆ sizeof_real8

integer(kind=jpim), parameter ecsort_mix::sizeof_real8 = 8
private

Definition at line 50 of file ecsort_mix.F90.