One-dimensional numerical integration routines.
More...
#include <functional>
#include "lib/Assert.hpp"
#include "FrgCommon.hpp"
Go to the source code of this file.
|
template<class T > |
T | Integrator::integrate (const FrequencyIterator min, const FrequencyIterator max, const std::function< T(float)> &integrand) |
| One-dimensional trapezoidal integration in one-dimensional frequency space. More...
|
|
template<class T > |
T | Integrator::integrateWithObscureLeftBoundary (const float min, const FrequencyIterator max, const std::function< T(float)> &integrand) |
| One-dimensional trapezoidal integration in one-dimensional frequency space. More...
|
|
template<class T > |
T | Integrator::integrateWithObscureRightBoundary (const FrequencyIterator min, const float max, const std::function< T(float)> &integrand) |
| One-dimensional trapezoidal integration in one-dimensional frequency space. More...
|
|
template<class T > |
T | Integrator::integrateWithObscureBoundaries (const float min, const float max, const std::function< T(float)> &integrand) |
| One-dimensional trapezoidal integration in one-dimensional frequency space. More...
|
|
template<class T > |
void | ImplicitIntegrator::integrateWithObscureLeftBoundary (const float min, const FrequencyIterator max, const std::function< void(float, T &)> &integrand, T &integrandBuffer, T &resultBuffer) |
| One-dimensional trapezoidal integration in one-dimensional frequency space. First argument of the integrand function is the frequency value, the second argument is the return value of the integrand, passed by reference. More...
|
|
template<class T > |
void | ImplicitIntegrator::integrateWithObscureRightBoundary (const FrequencyIterator min, const float max, const std::function< void(float, T &)> &integrand, T &integrandBuffer, T &resultBuffer) |
| One-dimensional trapezoidal integration in one-dimensional frequency space. First argument of the integrand function is the frequency value, the second argument is the return value of the integrand, passed by reference. More...
|
|
template<class T > |
void | ImplicitIntegrator::integrateWithObscureBoundaries (const float min, const float max, const std::function< void(float, T &)> &integrand, T &integrandBuffer, T &resultBuffer) |
| One-dimensional trapezoidal integration in one-dimensional frequency space. First argument of the integrand function is the frequency value, the second argument is the return value of the integrand, passed by reference. More...
|
|
One-dimensional numerical integration routines.
- Author
- Finn Lasse Buessen
- Copyright
- Copyright (c) 2020
◆ integrate()
One-dimensional trapezoidal integration in one-dimensional frequency space.
- Template Parameters
-
- Parameters
-
min | Iterator to lower boundary frequency value. |
max | Iterator to upper boundary frequency value. |
integrand | Integrand function. |
- Returns
- T Value of the integral.
◆ integrateWithObscureBoundaries() [1/2]
template<class T >
T Integrator::integrateWithObscureBoundaries |
( |
const float |
min, |
|
|
const float |
max, |
|
|
const std::function< T(float)> & |
integrand |
|
) |
| |
One-dimensional trapezoidal integration in one-dimensional frequency space.
- Template Parameters
-
- Parameters
-
min | Lower boundary frequency value. |
max | Upper boundary frequency value. |
integrand | Integrand function. |
- Returns
- T Value of the integral.
◆ integrateWithObscureBoundaries() [2/2]
template<class T >
void ImplicitIntegrator::integrateWithObscureBoundaries |
( |
const float |
min, |
|
|
const float |
max, |
|
|
const std::function< void(float, T &)> & |
integrand, |
|
|
T & |
integrandBuffer, |
|
|
T & |
resultBuffer |
|
) |
| |
One-dimensional trapezoidal integration in one-dimensional frequency space. First argument of the integrand function is the frequency value, the second argument is the return value of the integrand, passed by reference.
- Template Parameters
-
- Parameters
-
[in] | min | Lower boundary frequency value. |
[in] | max | Upper boundary frequency value. |
[in] | integrand | Integrand function. |
[out] | integrandBuffer | Return value buffer of the integrand. |
[out] | resultBuffer | Value of the integral. |
◆ integrateWithObscureLeftBoundary() [1/2]
template<class T >
T Integrator::integrateWithObscureLeftBoundary |
( |
const float |
min, |
|
|
const FrequencyIterator |
max, |
|
|
const std::function< T(float)> & |
integrand |
|
) |
| |
One-dimensional trapezoidal integration in one-dimensional frequency space.
- Template Parameters
-
- Parameters
-
min | Lower boundary frequency value. |
max | Iterator to upper boundary frequency value. |
integrand | Integrand function. |
- Returns
- T Value of the integral.
◆ integrateWithObscureLeftBoundary() [2/2]
template<class T >
void ImplicitIntegrator::integrateWithObscureLeftBoundary |
( |
const float |
min, |
|
|
const FrequencyIterator |
max, |
|
|
const std::function< void(float, T &)> & |
integrand, |
|
|
T & |
integrandBuffer, |
|
|
T & |
resultBuffer |
|
) |
| |
One-dimensional trapezoidal integration in one-dimensional frequency space. First argument of the integrand function is the frequency value, the second argument is the return value of the integrand, passed by reference.
- Template Parameters
-
- Parameters
-
[in] | min | Lower boundary frequency value. |
[in] | max | Iterator to upper boundary frequency value. |
[in] | integrand | Integrand function. |
[out] | integrandBuffer | Return value buffer of the integrand. |
[out] | resultBuffer | Value of the integral. |
◆ integrateWithObscureRightBoundary() [1/2]
template<class T >
T Integrator::integrateWithObscureRightBoundary |
( |
const FrequencyIterator |
min, |
|
|
const float |
max, |
|
|
const std::function< T(float)> & |
integrand |
|
) |
| |
One-dimensional trapezoidal integration in one-dimensional frequency space.
- Template Parameters
-
- Parameters
-
min | Iterator to lower boundary frequency value. |
max | Upper boundary frequency value. |
integrand | Integrand function. |
- Returns
- T Value of the integral.
◆ integrateWithObscureRightBoundary() [2/2]
template<class T >
void ImplicitIntegrator::integrateWithObscureRightBoundary |
( |
const FrequencyIterator |
min, |
|
|
const float |
max, |
|
|
const std::function< void(float, T &)> & |
integrand, |
|
|
T & |
integrandBuffer, |
|
|
T & |
resultBuffer |
|
) |
| |
One-dimensional trapezoidal integration in one-dimensional frequency space. First argument of the integrand function is the frequency value, the second argument is the return value of the integrand, passed by reference.
- Template Parameters
-
- Parameters
-
[in] | min | Iterator to lower boundary frequency value. |
[in] | max | Upper boundary frequency value. |
[in] | integrand | Integrand function. |
[out] | integrandBuffer | Return value buffer of the integrand. |
[out] | resultBuffer | Value of the integral. |