LHAPDF  6.5.5
LogBicubicInterpolator.h
1 // -*- C++ -*-
2 //
3 // This file is part of LHAPDF
4 // Copyright (C) 2012-2024 The LHAPDF collaboration (see AUTHORS for details)
5 //
6 #pragma once
7 #ifndef LHAPDF_LogBicubicInterpolator_H
8 #define LHAPDF_LogBicubicInterpolator_H
9 
10 #include "LHAPDF/Interpolator.h"
11 
12 namespace LHAPDF {
13 
14 
15  /// @brief Implementation of bicubic interpolation
16  ///
17  /// This class will interpolate in 2D using a bicubic hermite spline.
19 
20  public:
21  LogBicubicInterpolator(){ setType("logcubic"); }
22 
23  /// Implementation of (x,Q2) interpolation
24  double _interpolateXQ2(const KnotArray& subgrid, double x, size_t ix, double q2, size_t iq2, int id) const;
25 
26  void _interpolateXQ2(const KnotArray& subgrid, double x, size_t ix, double q2, size_t iq2, std::vector<double>& ret) const;
27 
28 
29  };
30 
31 }
32 
33 #endif