Mantid
Loading...
Searching...
No Matches
Classes | Namespaces | Typedefs | Functions | Variables
GSL_Helpers.h File Reference
#include <gsl/gsl_errno.h>
#include <gsl/gsl_fft_halfcomplex.h>
#include <gsl/gsl_fft_real.h>
#include <gsl/gsl_spline.h>
#include "MantidKernel/Strings.h"
#include <memory>
#include <span>
#include <vector>

Go to the source code of this file.

Classes

struct  Mantid::Kernel::fft::GSLFree
 Functor to free GSL objects in a unique pointer. More...
 
struct  Mantid::Kernel::spline::GSLFree
 Functor to free a GSL objects in a unique pointer. More...
 

Namespaces

namespace  Mantid
 Helper class which provides the Collimation Length for SANS instruments.
 
namespace  Mantid::Kernel
 
namespace  Mantid::Kernel::fft
 
namespace  Mantid::Kernel::spline
 

Typedefs

using Mantid::Kernel::spline::accel_uptr = std::unique_ptr< gsl_interp_accel, GSLFree >
 
using Mantid::Kernel::fft::hc_wt_uptr = std::unique_ptr< gsl_fft_halfcomplex_wavetable, GSLFree >
 
using Mantid::Kernel::fft::real_ws_uptr = std::unique_ptr< gsl_fft_real_workspace, GSLFree >
 
using Mantid::Kernel::fft::real_wt_uptr = std::unique_ptr< gsl_fft_real_wavetable, GSLFree >
 
using Mantid::Kernel::spline::spline_uptr = std::unique_ptr< gsl_spline, GSLFree >
 

Functions

template<typename X , typename Y >
spline_uptr Mantid::Kernel::spline::make_cubic_spline (std::span< X const > x, std::span< Y const > y)
 
hc_wt_uptr Mantid::Kernel::fft::make_gsl_hc_wavetable (std::size_t dn)
 
real_wt_uptr Mantid::Kernel::fft::make_gsl_real_wavetable (std::size_t dn)
 
real_ws_uptr Mantid::Kernel::fft::make_gsl_real_workspace (std::size_t dn)
 
accel_uptr Mantid::Kernel::spline::make_interp_accel ()
 
template<typename X , typename Y >
spline_uptr Mantid::Kernel::spline::make_spline (std::span< X const > x, std::span< Y const > y, gsl_interp_type const *type)
 

Variables

constexpr unsigned int Mantid::Kernel::spline::MIN_CSPLINE_POINTS {3}
 Minimum number of points needed to fit a cubic spline in GSL.