ParaMonte Fortran 2.0.0
Parallel Monte Carlo and Machine Learning Library
See the latest version documentation. |
Sort the input local error estimates list (resulting from the interval subdivision process of the Adaptive Global quadrature procedures of this module) in descending order. More...
Sort the input local error estimates list (resulting from the interval subdivision process of the Adaptive Global quadrature procedures of this module) in descending order.
Two error estimates are inserted using the sequential search method at each call to this interface, top-down for the largest error estimate and bottom-up for the smallest error estimate.
[in] | nintmax | : The input scalar of type integer of default kind IK, containing the maximum number of subintervals allowed in the quadrature. |
[in] | sinfoErr | : The input vector of size (1:nint <= nintmax) , containing the local error estimates from the quadrature subintervals. |
[in,out] | sindex | : The input/output contiguous vector of the same type, kind, and size as sinfoErr(:) , the first k elements of which contain pointers to the error estimates, such that sinfoErr(sindex(1)), ..., sinfoErr(sindex(k)) form a decreasing sequence, with k = nint if nint <= (nintmax / 2 + 2) , and k = nintmax + 1 - nint otherwise. |
[in,out] | nrmax | : The input/output scalar of type integer of default kind IK, containing the index of element of sindex(:) , such that maxErrLoc = sindex(nrmax) number of calls made to the procedure. |
[in,out] | maxErrLoc | : The input/output scalar of type integer of kind IK, containing the nrmax -th largest error estimate currently in the error list. |
[out] | maxErrVal | : The output scalar of the same type and kind as sinfoErr(:) , containing the nrmax -th largest error estimate in the error list. |
Possible calling interfaces ⛓
pure
procedure(s) documented herein become impure
when the ParaMonte library is compiled with preprocessor macro CHECK_ENABLED=1
.pure
in release
build and impure
in debug
and testing
builds.
Final Remarks ⛓
If you believe this algorithm or its documentation can be improved, we appreciate your contribution and help to edit this page's documentation and source file on GitHub.
For details on the naming abbreviations, see this page.
For details on the naming conventions, see this page.
This software is distributed under the MIT license with additional terms outlined below.
This software is available to the public under a highly permissive license.
Help us justify its continued development and maintenance by acknowledging its benefit to society, distributing it, and contributing to it.
Definition at line 4712 of file pm_quadPack.F90.