24#ifndef quantlib_transformed_grid_hpp
25#define quantlib_transformed_grid_hpp
37 class [[deprecated(
"Part of the old FD framework; copy this function in your codebase if needed")]]
TransformedGrid {
40 grid_(grid), transformedGrid_(grid),
41 dxm_(grid.size()), dxp_(grid.size()),
43 for (
Size i=1; i < transformedGrid_.size() -1 ; i++) {
44 dxm_[i] = transformedGrid_[i] - transformedGrid_[i-1];
45 dxp_[i] = transformedGrid_[i+1] - transformedGrid_[i];
46 dx_[i] = dxm_[i] + dxp_[i];
50#if defined(__GNUC__) && (__GNUC__ >= 7)
51#pragma GCC diagnostic push
52#pragma GCC diagnostic ignored "-Wnoexcept-type"
57 grid_(grid), transformedGrid_(grid.size()),
58 dxm_(grid.size()), dxp_(grid.size()),
60 std::transform(grid_.begin(),
62 transformedGrid_.begin(),
64 for (
Size i=1; i < transformedGrid_.size() -1 ; i++) {
65 dxm_[i] = transformedGrid_[i] - transformedGrid_[i-1];
66 dxp_[i] = transformedGrid_[i+1] - transformedGrid_[i];
67 dx_[i] = dxm_[i] + dxp_[i];
71#if defined(__GNUC__) && (__GNUC__ >= 7)
72#pragma GCC diagnostic pop
103 class [[deprecated(
"Part of the old FD framework; copy this function in your codebase if needed")]]
LogGrid :
public TransformedGrid {
1-D array used in linear algebra.
1-D array used in linear algebra.
LogGrid(const Array &grid)
Real logGrid(Size i) const
const Array & logGridArray() const
std::size_t Size
size of a container
#define QL_DEPRECATED_DISABLE_WARNING
#define QL_DEPRECATED_ENABLE_WARNING