ParaMonte Fortran 2.0.0
Parallel Monte Carlo and Machine Learning Library
See the latest version documentation.
pm_mathSum.F90 File Reference

Go to the source code of this file.

Data Types

type  pm_mathSum::sum_type
 
type  pm_mathSum::fablocked_type
 This is a concrete derived type whose instances are exclusively used to request the Fast Accurate Blocked summation method of Blanchard, Higham, and Mary, 2020 within the generic interfaces of the ParaMonte library.
More...
 
type  pm_mathSum::nablocked_type
 This is a concrete derived type whose instances are exclusively used to request the Naive Blocked summation method of Blanchard, Higham, and Mary, 2020 within the generic interfaces of the ParaMonte library.
More...
 
type  pm_mathSum::kahanbabu_type
 This is a concrete derived type whose instances are exclusively used to request the Kahan-Babuska summation method within the generic interfaces of the ParaMonte library.
More...
 
interface  pm_mathSum::getSum
 Generate and return the expression sum(x) accurately (almost without roundoff error).
More...
 
interface  pm_mathSum::getDot
 Generate and return the expression dot_product(x, y) accurately (almost without roundoff error).
More...
 

Modules

module  pm_mathSum
 This module contains procedures and generic interfaces for computing sum(x) accurately when x is a long array of wildly varying real or complex values.

 

Variables

character(*, SK), parameter pm_mathSum::MODULE_NAME = "@pm_mathSum"
 
type(fablocked_type), parameter pm_mathSum::fablocked = fablocked_type()
 This is a scalar parameter object of type fablocked_type.
More...
 
type(nablocked_type), parameter pm_mathSum::nablocked = nablocked_type()
 This is a scalar parameter object of type nablocked_type.
More...
 
type(kahanbabu_type), parameter pm_mathSum::kahanbabu = kahanbabu_type()
 This is a scalar parameter object of type kahanbabu_type.
More...