QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
Loading...
Searching...
No Matches
Public Member Functions | List of all members
KernelInterpolation2D Class Reference

#include <kernelinterpolation2d.hpp>

+ Inheritance diagram for KernelInterpolation2D:
+ Collaboration diagram for KernelInterpolation2D:

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
 Interpolation2D ()=default
 
Real operator() (Real x, Real y, bool allowExtrapolation=false) const
 
Real xMin () const
 
Real xMax () const
 
std::vector< RealxValues () const
 
Size locateX (Real x) const
 
Real yMin () const
 
Real yMax () const
 
std::vector< RealyValues () const
 
Size locateY (Real y) const
 
const MatrixzData () const
 
bool isInRange (Real x, Real y) const
 
void update ()
 
- Public Member Functions inherited from Extrapolator
 Extrapolator ()=default
 
virtual ~Extrapolator ()=default
 
void enableExtrapolation (bool b=true)
 enable extrapolation in subsequent calls More...
 
void disableExtrapolation (bool b=true)
 disable extrapolation in subsequent calls More...
 
bool allowsExtrapolation () const
 tells whether extrapolation is enabled More...
 

Additional Inherited Members

- Protected Member Functions inherited from Interpolation2D
void checkRange (Real x, Real y, bool extrapolate) const
 
- Protected Attributes inherited from Interpolation2D
ext::shared_ptr< Implimpl_
 

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.

Definition at line 195 of file kernelinterpolation2d.hpp.

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

Definition at line 201 of file kernelinterpolation2d.hpp.

+ Here is the call graph for this function: