Lattice Builder Manual
Software Package for Constructing Rank-1 Lattices
LatBuilder::ProjDepMerit::CoordUniform< KERNEL > Class Template Reference

Coordinate-uniform projection-dependent figure of merit. More...

#include <CoordUniform.h>

Inherits LatBuilder::ProjDepMerit::Base< CoordUniform< KERNEL > >.

Public Member Functions

 CoordUniform (KERNEL kernel=KERNEL())
 Constructor. More...
 
bool symmetric () const
 
const KERNEL & kernel () const
 
std::string name () const
 
template<LatType LAT, Compress COMPRESS>
Evaluator< CoordUniform, LAT, COMPRESS > evaluator (Storage< LAT, COMPRESS > storage) const
 Creates an evaluator for the projection-dependent figure of merit.
 
- Public Member Functions inherited from LatBuilder::ProjDepMerit::Base< CoordUniform< KERNEL > >
Storage< LAT, COMPRESS >::MeritValue operator() (const Storage< LAT, COMPRESS > &storage, const LatDef< LAT > &lat, const LatCommon::Coordinates &projection) const
 Computes the value of the figure of merit of lattice lat for projection projection.
 
std::string name () const
 Returns the name of the figure of merit.
 
bool symmetric () const
 Returns true if the value of the figure of merit is invariant under a reflection of the generating vector \(\boldsymbol a=(a_1, \dots, a_s)\) along any axis such that \(a_j \mapsto n - a_j\), where \(n\) is the number of points in the lattice point set.
 
Evaluator< CoordUniform< KERNEL >, LAT, COMPRESS > evaluator (const Storage< LAT, COMPRESS > &storage) const
 Creates an evaluator for the projection-dependent figure of merit.
 
CoordUniform< KERNEL > & derived ()
 
const CoordUniform< KERNEL > & derived () const
 

Static Public Member Functions

static constexpr Compress suggestedCompression ()
 

Detailed Description

template<class KERNEL>
class LatBuilder::ProjDepMerit::CoordUniform< KERNEL >

Coordinate-uniform projection-dependent figure of merit.

This type of projection-dependent figure of merit is base on a kernel \(\omega\) such that, for number of points \(n\) and generating vector \(\boldsymbol a = (a_1, \dots, a_s)\), the merit value for a projection on coordinates in \(\mathfrak u\) is

\[ \frac1n \sum_{i=0}^{n-1} \prod_{j \in \mathfrak u} \omega((i a_j / n) \bmod 1) \]

Template Parameters
KERNELKernel \(\omega\).

Constructor & Destructor Documentation

template<class KERNEL >
LatBuilder::ProjDepMerit::CoordUniform< KERNEL >::CoordUniform ( KERNEL  kernel = KERNEL())
inline

Constructor.

Parameters
kernelKernel \(\omega\).

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