LatNet Builder Manual 2.1.3-6
Software Package for Constructing Highly Uniform Point Sets
Loading...
Searching...
No Matches
NetBuilder::NetConstructionTraits< NC > Struct Template Reference

Digital net construction traits. More...

Detailed Description

template<NetConstruction NC>
struct NetBuilder::NetConstructionTraits< NC >

Digital net construction traits.

Specialization of this class must define:
the following types:

  • GenValue: type of the value required to construct a generating matrix (specific to a coordinate)
  • SizeParameter: type of the parameter used to construct a net (shared by all coordinates)
  • GenValueSpaceCoordSeq: type used to represent the sequence of all possible generating values for a coordinate
  • GenValueSpaceSeq: type used to represent the sequence of all the possible combinations of generating values
    the following static variables:
  • isSequenceViewable: a bool indicating whether the net can be viewed as a sequence
  • name: a string naming the specialization
  • hasSpecialFirstCoordinate: a bool indicating whether the first coordinate is a special case and can only take one value
    the following static functions:
  • static bool checkGenValue(const GenValue& genValue) : checks whether a generating value is correct
  • static unsigned int nRows(const GenValue& genValue) : computes the number of rows associated to the size parameter
  • static unsigned int nCols(const GenValue& genValue) : computes the number of columns associated to the size parameter
  • static GeneratingMatrix* createGeneratingMatrix(const GenValue& genValue, const SizeParameter& sizeParameter, const Dimension& dimension_j, const unsigned int nRows): create a generating matrix using the generating value and the size parameter. In some cases the generating matrix may also depend on the coordinate and on the number of rows of the generating matrix.
  • static GenValueSpaceCoordSeq genValueSpaceCoord(Dimension coord, const SizeParameter& sizeParameter): returns the sequence of all the possible generating values for coordinate coord.
  • static GenValueSpaceSeq genValueSpace(Dimension dimension , const SizeParameter& sizeParameter) : returns the sequence of all the possible combinations of generating values for a net in dimension dimension.
    and the following class template:
  • template<EmbeddingType ET, typename RAND = LatBuilder::LFSR258> class RandomGenValueGenerator : a class template where template parameter ET correspond to the embedding type of the point set and template parameter RAND implements a C++11-style PRNG. This is a random generator of generating values. This class template must define a constructor RandomGenValueGenerator(SizeParameter sizeParameter, RAND randomGen = RAND()) and an the member function GenValue operator()(Dimension coord) returning a generating value for coordinate coord.
Examples
tutorial/NetDef.cc, tutorial/NetQuantiles.cc, tutorial/NetSearchCBC.cc, tutorial/NetSearchExhaustive.cc, and tutorial/NetSearchRandom.cc.

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