DiFfRG
Loading...
Searching...
No Matches
DiFfRG::ExponentialRegulator< OPTS > Struct Template Reference

Implements one of the standard exponential regulators, i.e. More...

#include <regulators.hh>

Static Public Member Functions

template<typename NT1 , typename NT2 >
static __forceinline__ __device__ __host__ auto RB (const NT1 k2, const NT2 q2)
 
template<typename NT1 , typename NT2 >
static __forceinline__ __device__ __host__ auto dq2RB (const NT1 k2, const NT2 q2)
 
template<typename NT1 , typename NT2 >
static __forceinline__ __device__ __host__ auto RBdot (const NT1 k2, const NT2 q2)
 
template<typename NT1 , typename NT2 >
static __forceinline__ __device__ __host__ auto RF (const NT1 k2, const NT2 q2)
 
template<typename NT1 , typename NT2 >
static __forceinline__ __device__ __host__ auto dq2RF (const NT1 k2, const NT2 q2)
 
template<typename NT1 , typename NT2 >
static __forceinline__ __device__ __host__ auto RFdot (const NT1 k2, const NT2 q2)
 

Static Public Attributes

static constexpr double b = OPTS::b
 

Detailed Description

template<class OPTS = ExponentialRegulatorOpts>
struct DiFfRG::ExponentialRegulator< OPTS >

Implements one of the standard exponential regulators, i.e.

\[ R_B(k^2,q^2) = k^2 \exp(-(q^2/k^2)^b) \]

Provides the following functions:

  • RB(k2, q2) = \( p^2 r_B(k^2,p^2) \)
  • dq2RB(k2, q2) = \( \frac{\partial}{\partial q^2} R_B(k^2,p^2) \)
  • RBdot(k2, q2) = \( \partial_t R_B(k^2,p^2) \)
  • RF(k2, q2) = \( p r_F(k^2,p^2) \)
  • dq2RF(k2, q2) = \( \frac{\partial}{\partial q^2} R_F(k^2,p^2) \)
  • RFdot(k2, q2) = \( p \partial_ t R_F(k^2,p^2) \)
Template Parameters
bThe exponent in the regulator.

Member Function Documentation

◆ dq2RB()

template<class OPTS = ExponentialRegulatorOpts>
template<typename NT1 , typename NT2 >
static __forceinline__ __device__ __host__ auto DiFfRG::ExponentialRegulator< OPTS >::dq2RB ( const NT1 k2,
const NT2 q2 )
inlinestatic

◆ dq2RF()

template<class OPTS = ExponentialRegulatorOpts>
template<typename NT1 , typename NT2 >
static __forceinline__ __device__ __host__ auto DiFfRG::ExponentialRegulator< OPTS >::dq2RF ( const NT1 k2,
const NT2 q2 )
inlinestatic

◆ RB()

template<class OPTS = ExponentialRegulatorOpts>
template<typename NT1 , typename NT2 >
static __forceinline__ __device__ __host__ auto DiFfRG::ExponentialRegulator< OPTS >::RB ( const NT1 k2,
const NT2 q2 )
inlinestatic

◆ RBdot()

template<class OPTS = ExponentialRegulatorOpts>
template<typename NT1 , typename NT2 >
static __forceinline__ __device__ __host__ auto DiFfRG::ExponentialRegulator< OPTS >::RBdot ( const NT1 k2,
const NT2 q2 )
inlinestatic

◆ RF()

template<class OPTS = ExponentialRegulatorOpts>
template<typename NT1 , typename NT2 >
static __forceinline__ __device__ __host__ auto DiFfRG::ExponentialRegulator< OPTS >::RF ( const NT1 k2,
const NT2 q2 )
inlinestatic

◆ RFdot()

template<class OPTS = ExponentialRegulatorOpts>
template<typename NT1 , typename NT2 >
static __forceinline__ __device__ __host__ auto DiFfRG::ExponentialRegulator< OPTS >::RFdot ( const NT1 k2,
const NT2 q2 )
inlinestatic

Member Data Documentation

◆ b

template<class OPTS = ExponentialRegulatorOpts>
double DiFfRG::ExponentialRegulator< OPTS >::b = OPTS::b
staticconstexpr

The documentation for this struct was generated from the following file: