ParaMonte Fortran 2.0.0
Parallel Monte Carlo and Machine Learning Library
See the latest version documentation.
pm_quadTest::integrand_type Type Reference

This is the base type integrand_type standing abstract integrand type to generate a variety of integration test functions.
More...

Inheritance diagram for pm_quadTest::integrand_type:

Public Member Functions

procedure(get_proc), deferred get
 The function member returning the value of the unweighted integrand (whether Cauchy/sin/cos/algebraically types of weights) at a specified input point x. More...
 

Public Attributes

real(RKH) lb
 The scalar of type real of the highest kind supported by the library RKH, containing the lower limit of integration. More...
 
real(RKH) ub
 The scalar of type real of the highest kind supported by the library RKH, containing the upper limit of integration. More...
 
real(RKH) integral
 The scalar of type real of the highest kind supported by the library RKH, containing the true result of integration. More...
 
real(RKH), dimension(:), allocatable break
 The scalar of type real of the highest kind supported by the library RKH, containing the points of difficulties of integration. More...
 
type(wcauchy_type), allocatable wcauchy
 The scalar of type wcauchy_type, containing the Cauchy singularity of the integrand. More...
 
character(:, SK), allocatable desc
 The scalar allocatable character of default kind SK containing a description of the integrand and integration limits and difficulties. More...
 

Detailed Description

This is the base type integrand_type standing abstract integrand type to generate a variety of integration test functions.

The abstract type minimally contains:

  1. The integration limits and deferred type-bound procedure get().
  2. The locations of points of difficulties within the domain of integration (other than those that appear in function weights such as Cauchy types of singularities).
  3. Information about the Cauchy type singularity and Cauchy weight of the function.
    The Cauchy weight has the form,

    \begin{equation} w(x) = \frac{1}{x - c} \end{equation}

It is primarily meant to be used internally within the ParaMonte library for testing and illustration purposes.
In particular, the implementations may not be ideal for benchmarks and performance tests of the library integrators.
Nevertheless, all relevant types and integration test objects are public in this repository and available to the end user.


Possible calling interfaces

type, extends(integrand_type) :: myint_type
...
end type
This module contains a collection of interesting or challenging integrands for testing or examining t...
Definition: pm_quadTest.F90:54
This is the base type integrand_type standing abstract integrand type to generate a variety of integr...
See also
getQuadErr
Test:
test_pm_quadPack


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.

  1. If you use any parts or concepts from this library to any extent, please acknowledge the usage by citing the relevant publications of the ParaMonte library.
  2. If you regenerate any parts/ideas from this library in a programming environment other than those currently supported by this ParaMonte library (i.e., other than C, C++, Fortran, MATLAB, Python, R), please also ask the end users to cite this original ParaMonte library.

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.

Author:
Amir Shahmoradi, September 1, 2017, 12:00 AM, Institute for Computational Engineering and Sciences (ICES), The University of Texas at Austin

Definition at line 108 of file pm_quadTest.F90.

Member Function/Subroutine Documentation

◆ get()

procedure(get_proc), deferred pm_quadTest::integrand_type::get

The function member returning the value of the unweighted integrand (whether Cauchy/sin/cos/algebraically types of weights) at a specified input point x.

Definition at line 116 of file pm_quadTest.F90.

Member Data Documentation

◆ break

real(RKH), dimension(:), allocatable pm_quadTest::integrand_type::break

The scalar of type real of the highest kind supported by the library RKH, containing the points of difficulties of integration.

Definition at line 112 of file pm_quadTest.F90.

◆ desc

character(:, SK), allocatable pm_quadTest::integrand_type::desc

The scalar allocatable character of default kind SK containing a description of the integrand and integration limits and difficulties.

Definition at line 114 of file pm_quadTest.F90.

◆ integral

real(RKH) pm_quadTest::integrand_type::integral

The scalar of type real of the highest kind supported by the library RKH, containing the true result of integration.

Definition at line 111 of file pm_quadTest.F90.

◆ lb

real(RKH) pm_quadTest::integrand_type::lb

The scalar of type real of the highest kind supported by the library RKH, containing the lower limit of integration.

Definition at line 109 of file pm_quadTest.F90.

◆ ub

real(RKH) pm_quadTest::integrand_type::ub

The scalar of type real of the highest kind supported by the library RKH, containing the upper limit of integration.

Definition at line 110 of file pm_quadTest.F90.

◆ wcauchy

type(wcauchy_type), allocatable pm_quadTest::integrand_type::wcauchy

The scalar of type wcauchy_type, containing the Cauchy singularity of the integrand.

Definition at line 113 of file pm_quadTest.F90.


The documentation for this type was generated from the following file: