LatNet Builder Manual  2.0.1-11
Software Package for Constructing Highly Uniform Point Sets
LatBuilder::SizeParam< LR, EmbeddingType::UNILEVEL > Class Template Reference

Ordinary lattice size parameter. More...

#include <SizeParam-SIMPLE.h>

Inherits LatBuilder::BasicSizeParam< SizeParam< LR, EmbeddingType::UNILEVEL > >.

Public Types

typedef self_type::Modulus Modulus
 
typedef self_type::size_type size_type
 
- Public Types inherited from LatBuilder::BasicSizeParam< SizeParam< LR, EmbeddingType::UNILEVEL > >
typedef SizeParamTraits< SizeParam< LR, EmbeddingType::UNILEVEL > >::Modulus Modulus
 
typedef SizeParamTraits< SizeParam< LR, EmbeddingType::UNILEVEL > >::size_type size_type
 

Public Member Functions

 SizeParam (Modulus modulus=(Modulus)(0))
 
template<EmbeddingType L>
 SizeParam (const SizeParam< LR, L > &other)
 
size_t totient () const
 Returns the value of Euler's totient function. More...
 
void normalize (Real &merit) const
 Divides the merit value merit by the number of points.
 
void normalize (RealVector &merit) const
 Divides the each merit value in merit by the number of points.
 
std::ostream & format (std::ostream &os) const
 
- Public Member Functions inherited from LatBuilder::BasicSizeParam< SizeParam< LR, EmbeddingType::UNILEVEL > >
 BasicSizeParam (Modulus modulus)
 
Modulus modulus () const
 
size_type numPoints () const
 
 operator Modulus () const
 
size_t totient () const
 Returns the value of Euler's totient function. More...
 
bool operator== (const BasicSizeParam< D > &other) const
 
bool operator!= (const BasicSizeParam< D > &other) const
 
bool operator< (const BasicSizeParam< D > &other) const
 
void normalize (Real &merit) const
 Divides the merit value merit by the number of points.
 
void normalize (RealVector &merit) const
 Divides the each merit value in merit by the number of points.
 
unsigned int log2NumPoints () const
 

Additional Inherited Members

- Protected Member Functions inherited from LatBuilder::BasicSizeParam< SizeParam< LR, EmbeddingType::UNILEVEL > >
 BasicSizeParam (const BasicSizeParam &)=default
 

Detailed Description

template<LatticeType LR>
class LatBuilder::SizeParam< LR, EmbeddingType::UNILEVEL >

Ordinary lattice size parameter.

Examples:
tutorial/MeritSeqCoordUniform.cc, and tutorial/MeritSeqFastCBC.cc.

Member Function Documentation

◆ totient()

template<LatticeType LR>
size_t LatBuilder::SizeParam< LR, EmbeddingType::UNILEVEL >::totient ( ) const

Returns the value of Euler's totient function.

For ordinary lattices It is the number of positive integers that are smaller than and coprime to the number of points. For polynomial lattices It is the number of polynomials that have smaller degree than and coprime to the modulus polynomial.


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