|
Lattice Builder Manual
Software Package for Constructing Rank-1 Lattices
|
This class implements the Rogers bounds on the density of sphere packing. More...
#include <NormaRogers.h>
Inherits LatCommon::Normalizer.
Public Member Functions | |
| NormaRogers (const MScal &m, int k, int t, double beta=1) | |
| Constructor for the Rogers bounds. More... | |
| ~NormaRogers () | |
| Destructor. | |
| double | getGamma (int j) const throw (std::out_of_range) |
| Returns the value of the Rogers lattice constant \(\gamma_j\) in dimension \(j\). | |
Public Member Functions inherited from LatCommon::Normalizer | |
| Normalizer (const MScal &m, int k, int t, std::string Name, NormType norm=L2NORM, double beta=1) | |
| virtual | ~Normalizer () |
| Destructor. | |
| void | init (const MScal &m, int k, double beta) |
| Initializes the bounds on the length of the shortest vector. More... | |
| std::string | ToString () const |
| Returns this object as a string. | |
| NormType | getNorm () const |
| Returns the norm associated with this object. | |
| void | setNorm (NormType norm) |
Sets the norm associated with this object to norm. | |
| int | getDim () const |
| Returns the maximal dimension for this object. | |
| double & | getCst (int j) |
| Returns the bound on the length of the shortest nonzero vector in dimension \(j\). More... | |
Additional Inherited Members | |
Static Public Attributes inherited from LatCommon::Normalizer | |
| static const int | MAX_DIM = 48 |
| Constructor for the bounds. More... | |
Protected Attributes inherited from LatCommon::Normalizer | |
| std::string | m_name |
| Name of the normalizer. | |
| NormType | m_norm |
| Norm associated with this object. | |
| MScal | m_m |
| Number of points of the lattice per unit volume. | |
| int | m_rank |
| Rank of the lattice. | |
| int | m_maxDim |
Only elements 1 to m_maxDim (inclusive) of arrays are defined. | |
| double | m_beta |
| Beta factor. | |
| double * | m_cst |
| Contains the bounds on the length of the shortest nonzero vector in the lattice in each dimension. | |
This class implements the Rogers bounds on the density of sphere packing.
The length of vectors is computed using the \({\cal L}_2\) norm. The bounding lengths, for a lattice of rank \(k\) containing \(m\) points per unit volume in dimension \(t\), are given by \(\ell_t^* = \gamma_t m^{k/t}\) for \(t \ge k\), where the \(\gamma_t\) are the Rogers lattice constants.
| LatCommon::NormaRogers::NormaRogers | ( | const MScal & | m, |
| int | k, | ||
| int | t, | ||
| double | beta = 1 |
||
| ) |
Constructor for the Rogers bounds.
The lattices are those of rank \(k\), with \(m\) points per unit volume, in all dimensions \(\le t\). The bias factor beta \(= \beta\) gives more weight to some of the dimensions. There is no restriction on the dimension \(t\) which can be larger than 48.