(t, m, s)-nets generator  3.0.1
DigitalNet Class Reference

#include <digital_net.hpp>

Inheritance diagram for DigitalNet:
[legend]

Public Member Functions

 DigitalNet (DigitalNet const &)=default
 
 DigitalNet (DigitalNet &&)=default
 
DigitalNetoperator= (DigitalNet const &)=default
 
DigitalNetoperator= (DigitalNet &&)=default
 
 DigitalNet (void)
 Creates empty object.
 
 DigitalNet (std::vector< GenNum > const &generating_numbers)
 Creates digital net with given generating numbers.
 
 DigitalNet (std::vector< GenMat > const &generating_matrices)
 Creates digital net with given generating matrices.
 
BasicInt m (void) const
 Returns \(m\) parameter of the net.
 
BasicInt s (void) const
 Returns \(s\) parameter of the net.
 
GenNum generating_numbers (BasicInt dim) const
 
GenMat generating_matrix (BasicInt dim) const
 
Point generate_point_classical (CountInt pos) const
 
Point generate_point (CountInt pos) const
 
IntPoint generate_int_point (CountInt pos) const
 
void for_each_point (std::function< void(Point const &, CountInt)> handler, CountInt amount, CountInt pos=0) const
 
void for_each_int_point (std::function< void(IntPoint const &, CountInt)> handler, CountInt amount, CountInt pos=0) const
 
Point cast_int_point_to_real (IntPoint const &int_point) const
 

Protected Member Functions

 DigitalNet (BasicInt nbits, BasicInt dim, std::vector< GenNum > const &generating_numbers)
 
void store_int_point (IntPoint &point, CountInt pos) const
 
void store_next_int_point (IntPoint &point, CountInt pos, IntPoint const &prev_point) const
 

Protected Attributes

BasicInt m_nbits
 \(m\) parameter of the digital net
 
BasicInt m_dim
 \(s\) parameter of the digital net
 
Real m_recip
 Coefficient equal to \(2^{-m}\).
 
std::vector< GenNumm_generating_numbers
 Vector of a generating numbers of the digital net.
 

Detailed Description

Represents digital \((t, m, s)\)-net over \(\mathbb{F}_2\)

Member Function Documentation

◆ generating_numbers()

GenNum generating_numbers ( BasicInt  dim) const
inline

Returns generating numbers corresponging to certain dimension

Parameters
dim– dimension

◆ generating_matrix()

GenMat generating_matrix ( BasicInt  dim) const
inline

Returns generating matrix corresponding to certain dimetnsion

Parameters
dim– dimension

◆ generate_point_classical()

Point generate_point_classical ( CountInt  pos) const

Generates point of a digital net with the certain number

Parameters
pos- number of generated point

◆ generate_point()

Point generate_point ( CountInt  pos) const

Generates point of a digital net with certain Gray's code number

Parameters
pos- sequence number of generated point

◆ generate_int_point()

IntPoint generate_int_point ( CountInt  pos) const

Generates scaled point of a digital net with certain Gray's code number

Parameters
pos- sequence number of scaled generated point

◆ for_each_point()

void for_each_point ( std::function< void(Point const &, CountInt)>  handler,
CountInt  amount,
CountInt  pos = 0 
) const

Sequentially generates a section of reordered net points and applies the handler function to each pair: (point, point's number)

Parameters
handler- handler function to apply
amount- amount of points in the section of the net
pos- number of the first point in the section of the net

◆ for_each_int_point()

void for_each_int_point ( std::function< void(IntPoint const &, CountInt)>  handler,
CountInt  amount,
CountInt  pos = 0 
) const

Sequentially generates a section of reordered scaled net points and applies the handler function to each pair: (point, point's number)

Parameters
handler- handler function to apply
amount- amount of points in the section of the net
pos- number of the first point in the section of the net

◆ cast_int_point_to_real()

Point cast_int_point_to_real ( IntPoint const &  int_point) const

Casts scaled integer point to a point by multiplying it by \(2^{-m}\)

Parameters
int_point- point to cast

◆ store_int_point()

void store_int_point ( IntPoint point,
CountInt  pos 
) const
protected

Stores into the integer vector scaled (t,m,s)-net point with certain number, enumerated according to Gray's code.

Parameters
[out]point- storage vector
[in]pos- generated scaled (t,m,s)-net point number

◆ store_next_int_point()

void store_next_int_point ( IntPoint point,
CountInt  pos,
IntPoint const &  prev_point 
) const
protected

Stores into the integer vector scaled (t,m,s)-net point with certain number, enumerated according to Gray's code, computed using the previous point.

Parameters
[out]point- storage vector
[in]pos- generated scaled net point number (should be greater then 0)
[in]prev_point- scaled net point with the previous point number