Kernel based on the paper by Knab for interpolating band-limited signals [6] [8]. More...
#include <Kernels.h>
Public Types | |
using | view_type = KnabKernel< T > |
A non-owning kernel view type that can be passed to device code. | |
Public Types inherited from isce3::cuda::core::Kernel< T, KnabKernel< T > > | |
using | value_type = T |
Kernel coefficients value type. | |
Public Member Functions | |
constexpr | KnabKernel (double width, double bandwidth) |
Construct a new KnabKernel object. More... | |
KnabKernel (const isce3::core::KnabKernel< T > &other) | |
Construct from corresponding host kernel object. | |
constexpr double | bandwidth () const noexcept |
Get bandwidth of the kernel. More... | |
Public Member Functions inherited from isce3::cuda::core::Kernel< T, KnabKernel< T > > | |
constexpr | Kernel (double width) noexcept |
Construct a new Kernel object. More... | |
constexpr double | halfwidth () const noexcept |
Get the halfwidth of the kernel. More... | |
constexpr double | width () const noexcept |
Get the width of the kernel. More... | |
CUDA_HOSTDEV T | operator() (double t) const |
Evaluate the kernel at a given location in [-halfwidth, halfwidth]. More... | |
Protected Member Functions | |
CUDA_HOSTDEV T | eval (double t) const |
Kernel based on the paper by Knab for interpolating band-limited signals [6] [8].
constexpr isce3::cuda::core::KnabKernel< T >::KnabKernel | ( | double | width, |
double | bandwidth | ||
) |
Construct a new KnabKernel object.
[in] | width | Kernel width |
[in] | bandwidth | Bandwidth of the signal to be interpolated, as a fraction of the sample rate (0 < bandwidth < 1). |
|
inlinenoexcept |
Get bandwidth of the kernel.