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

Implements a regulator given by. More...

#include <regulators.hh>

Static Public Member Functions

static __forceinline__ __device__ __host__ auto get_f (const auto x)
 
static __forceinline__ __device__ __host__ auto get_df (const auto x)
 
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 RBdot (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 RF (const NT1 k2, const NT2 q2)
 
template<typename NT1 , typename NT2 >
static __forceinline__ __device__ __host__ auto RFdot (const NT1 k2, const NT2 q2)
 
template<typename NT1 , typename NT2 >
static __forceinline__ __device__ __host__ auto dq2RF (const NT1 k2, const NT2 q2)
 

Static Public Attributes

static constexpr int order = OPTS::order
 
static constexpr double c = OPTS::c
 
static constexpr double b0 = OPTS::b0
 

Detailed Description

template<class OPTS = RationalExpRegulatorOpts>
struct DiFfRG::RationalExpRegulator< OPTS >

Implements a regulator given by.

\[R_B(x) = k^2 e^{-f(x)}\,,\]

where \(f(x)\) is a rational function chosen such that the propagator gets a pole of order order at x = 0 if the mass becomes negative (convexity restoration).

Provides the following functions:

  • RB(k2, q2) = \( k^2 e^{-f(x)} \)
  • RBdot(k2, q2) = \( \partial_t R_B(k^2,p^2) \)
  • dq2RB(k2, q2) = \( \frac{\partial}{\partial q^2} R_B(k^2,p^2) \)
  • RF(k2, q2) = \( \sqrt{R_B(k^2,p^2) + p^2} - p \)
  • RFdot(k2, q2) = \( p \partial_ t R_F(k^2,p^2) \)
  • dq2RF(k2, q2) = \( \frac{\partial}{\partial q^2} R_F(k^2,p^2) \)
Template Parameters
orderorder of the pole.

Member Function Documentation

◆ dq2RB()

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

◆ dq2RF()

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

◆ get_df()

template<class OPTS = RationalExpRegulatorOpts>
static __forceinline__ __device__ __host__ auto DiFfRG::RationalExpRegulator< OPTS >::get_df ( const auto x)
inlinestatic

◆ get_f()

template<class OPTS = RationalExpRegulatorOpts>
static __forceinline__ __device__ __host__ auto DiFfRG::RationalExpRegulator< OPTS >::get_f ( const auto x)
inlinestatic

◆ RB()

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

◆ RBdot()

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

◆ RF()

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

◆ RFdot()

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

Member Data Documentation

◆ b0

template<class OPTS = RationalExpRegulatorOpts>
double DiFfRG::RationalExpRegulator< OPTS >::b0 = OPTS::b0
staticconstexpr

◆ c

template<class OPTS = RationalExpRegulatorOpts>
double DiFfRG::RationalExpRegulator< OPTS >::c = OPTS::c
staticconstexpr

◆ order

template<class OPTS = RationalExpRegulatorOpts>
int DiFfRG::RationalExpRegulator< OPTS >::order = OPTS::order
staticconstexpr

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