QuantLib: KernelInterpolation2D Class Reference

A free/open-source library for quantitative finance Reference manual - version 1.20

Public Member Functions | List of all members
KernelInterpolation2D Class Reference
Math tools » 1-D Interpolations and corresponding traits

`#include <ql/math/interpolations/kernelinterpolation2d.hpp>`

Inheritance diagram for KernelInterpolation2D:
[legend]

## Public Member Functions
template<class I1 , class I2 , class M , class Kernel >
| KernelInterpolation2D (const I1 &xBegin, const I1 &xEnd, const I2 &yBegin, const I2 &yEnd, const M &zData, const Kernel &kernel)
Public Member Functions inherited from Interpolation2D
Real | operator() (Real x, Real y, bool allowExtrapolation=false) const
Real | xMin () const
Real | xMax () const
std::vector< Real > | xValues () const
Size | locateX (Real x) const
Real | yMin () const
Real | yMax () const
std::vector< Real > | yValues () const
Size | locateY (Real y) const
const Matrix & | zData () const
bool | isInRange (Real x, Real y) const
void | update ()
Public Member Functions inherited from Extrapolator
void | enableExtrapolation (bool b=true)
| enable extrapolation in subsequent calls
void | disableExtrapolation (bool b=true)
| disable extrapolation in subsequent calls
bool | allowsExtrapolation () const
| tells whether extrapolation is enabled

## Additional Inherited Members
Public Types inherited from Interpolation2D
typedef Real | first_argument_type
typedef Real | second_argument_type
typedef Real | result_type
Protected Member Functions inherited from Interpolation2D
void | checkRange (Real x, Real y, bool extrapolate) const
Protected Attributes inherited from Interpolation2D
ext::shared_ptr< Impl > | impl_

## Detailed Description

Implementation of the 2D kernel interpolation approach, which can be found in "Foreign Exchange Risk" by Hakala, Wystup page 256.

The kernel in the implementation is kept general, although a Gaussian is considered in the cited text.

Warning:
  See the Interpolation class for information about the required lifetime of the underlying data.

## Constructor & Destructor Documentation

## ◆ KernelInterpolation2D()

KernelInterpolation2D | ( | const I1 & | xBegin,
|  | const I1 & | xEnd,
|  | const I2 & | yBegin,
|  | const I2 & | yEnd,
|  | const M & | zData,
|  | const Kernel & | kernel
| ) |  |

Precondition
  the \( x \) values must be sorted.
  kernel needs a Real operator()(Real x) implementation