sp_ord_sort Module Subroutine

private module subroutine sp_ord_sort(array, work, reverse)

Arguments

Type IntentOptional Attributes Name
real(kind=sp), intent(inout) :: array(0:)
real(kind=sp), intent(out), optional :: work(0:)
logical, intent(in), optional :: reverse

Calls

proc~~sp_ord_sort~~CallsGraph proc~sp_ord_sort sp_ord_sort interface~pic_optional pic_optional proc~sp_ord_sort->interface~pic_optional proc~sp_decrease_ord_sort sp_decrease_ord_sort proc~sp_ord_sort->proc~sp_decrease_ord_sort proc~sp_increase_ord_sort sp_increase_ord_sort proc~sp_ord_sort->proc~sp_increase_ord_sort proc~optional_char optional_char interface~pic_optional->proc~optional_char proc~optional_dp optional_dp interface~pic_optional->proc~optional_dp proc~optional_int32 optional_int32 interface~pic_optional->proc~optional_int32 proc~optional_int64 optional_int64 interface~pic_optional->proc~optional_int64 proc~optional_logical optional_logical interface~pic_optional->proc~optional_logical proc~optional_sp optional_sp interface~pic_optional->proc~optional_sp none~merge_sort~18 merge_sort proc~sp_decrease_ord_sort->none~merge_sort~18 none~merge_sort~13 merge_sort proc~sp_increase_ord_sort->none~merge_sort~13 none~calc_min_run~13 calc_min_run none~merge_sort~13->none~calc_min_run~13 none~collapse~13 collapse none~merge_sort~13->none~collapse~13 none~insert_head~13 insert_head none~merge_sort~13->none~insert_head~13 none~insertion_sort~23 insertion_sort none~merge_sort~13->none~insertion_sort~23 none~reverse_segment~13 reverse_segment none~merge_sort~13->none~reverse_segment~13 none~calc_min_run~18 calc_min_run none~merge_sort~18->none~calc_min_run~18 none~collapse~18 collapse none~merge_sort~18->none~collapse~18 none~insert_head~18 insert_head none~merge_sort~18->none~insert_head~18 none~insertion_sort~28 insertion_sort none~merge_sort~18->none~insertion_sort~28 none~reverse_segment~18 reverse_segment none~merge_sort~18->none~reverse_segment~18

Source Code

      module subroutine sp_ord_sort(array, work, reverse)
         implicit none
!! `sp_ord_sort( array )` sorts the input `ARRAY` of type `real(sp)`
!! using a hybrid sort based on the `"Rust" sort` algorithm found in `slice.rs`
         real(sp), intent(inout)         :: array(0:)
         real(sp), intent(out), optional :: work(0:)
         logical, intent(in), optional :: reverse
      end subroutine sp_ord_sort