QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Private Types | Private Attributes | List of all members
MultiCubicSpline< i > Class Template Reference

N-dimensional cubic spline interpolation between discrete points. More...

#include <multicubicspline.hpp>

+ Collaboration diagram for MultiCubicSpline< i >:

Public Types

typedef c_splint::argument_type argument_type
 
typedef c_splint::result_type result_type
 
typedef c_splint::data_table data_table
 
typedef c_splint::return_type return_type
 
typedef c_splint::output_data output_data
 
typedef c_splint::dimensions dimensions
 
typedef c_splint::data data
 

Public Member Functions

 MultiCubicSpline (const SplineGrid &grid, const data_table &y, const std::vector< bool > &ae=std::vector< bool >(20, false))
 
result_type operator() (const argument_type &x) const
 
void set_shared_increments () const
 
void set_shared_coefficients (const argument_type &x) const
 

Private Types

typedef detail::Int2Type< i >::c_spline c_spline
 
typedef detail::Int2Type< i >::c_splint c_splint
 

Private Attributes

const SplineGridgrid_
 
const data_tabley_
 
const std::vector< bool > & ae_
 
return_type a_
 
return_type b_
 
return_type a2_
 
return_type b2_
 
output_data v_
 
output_data v1_
 
output_data v2_
 
result_type res_
 
dimensions i_
 
data d_
 
data d2_
 
data_table y2_
 

Detailed Description

template<Size i>
class QuantLib::MultiCubicSpline< i >

N-dimensional cubic spline interpolation between discrete points.

Tests:
interpolated values are checked against the original function.
Bug:
cannot interpolate at the grid points on the boundary surface of the N-dimensional region

Definition at line 466 of file multicubicspline.hpp.

Member Typedef Documentation

◆ c_spline

typedef detail::Int2Type<i>::c_spline c_spline
private

Definition at line 467 of file multicubicspline.hpp.

◆ c_splint

typedef detail::Int2Type<i>::c_splint c_splint
private

Definition at line 468 of file multicubicspline.hpp.

◆ argument_type

Definition at line 470 of file multicubicspline.hpp.

◆ result_type

Definition at line 471 of file multicubicspline.hpp.

◆ data_table

Definition at line 472 of file multicubicspline.hpp.

◆ return_type

Definition at line 473 of file multicubicspline.hpp.

◆ output_data

Definition at line 474 of file multicubicspline.hpp.

◆ dimensions

Definition at line 475 of file multicubicspline.hpp.

◆ data

Definition at line 476 of file multicubicspline.hpp.

Constructor & Destructor Documentation

◆ MultiCubicSpline()

MultiCubicSpline ( const SplineGrid grid,
const data_table y,
const std::vector< bool > &  ae = std::vector<bool>(20, false) 
)

Definition at line 477 of file multicubicspline.hpp.

+ Here is the call graph for this function:

Member Function Documentation

◆ operator()()

result_type operator() ( const argument_type x) const

Definition at line 485 of file multicubicspline.hpp.

+ Here is the call graph for this function:

◆ set_shared_increments()

void set_shared_increments

Definition at line 508 of file multicubicspline.hpp.

+ Here is the caller graph for this function:

◆ set_shared_coefficients()

void set_shared_coefficients ( const argument_type x) const
+ Here is the caller graph for this function:

Member Data Documentation

◆ grid_

const SplineGrid& grid_
private

Definition at line 494 of file multicubicspline.hpp.

◆ y_

const data_table& y_
private

Definition at line 495 of file multicubicspline.hpp.

◆ ae_

const std::vector<bool>& ae_
private

Definition at line 496 of file multicubicspline.hpp.

◆ a_

return_type a_
mutableprivate

Definition at line 497 of file multicubicspline.hpp.

◆ b_

return_type b_
private

Definition at line 497 of file multicubicspline.hpp.

◆ a2_

return_type a2_
private

Definition at line 497 of file multicubicspline.hpp.

◆ b2_

return_type b2_
private

Definition at line 497 of file multicubicspline.hpp.

◆ v_

output_data v_
mutableprivate

Definition at line 498 of file multicubicspline.hpp.

◆ v1_

output_data v1_
private

Definition at line 498 of file multicubicspline.hpp.

◆ v2_

output_data v2_
private

Definition at line 498 of file multicubicspline.hpp.

◆ res_

result_type res_
mutableprivate

Definition at line 499 of file multicubicspline.hpp.

◆ i_

dimensions i_
mutableprivate

Definition at line 500 of file multicubicspline.hpp.

◆ d_

data d_
mutableprivate

Definition at line 501 of file multicubicspline.hpp.

◆ d2_

data d2_
private

Definition at line 501 of file multicubicspline.hpp.

◆ y2_

data_table y2_
mutableprivate

Definition at line 502 of file multicubicspline.hpp.