LatNet Builder Manual  2.0.1-11
Software Package for Constructing Highly Uniform Point Sets
NetBuilder::FigureOfMerit::WeightedFigureOfMerit< PROJDEP > Class Template Reference

Class which represents a weighted figure of merit based on a projection dependent merit whose type is the template parameter. More...

#include <WeightedFigureOfMerit.h>

Inherits NetBuilder::FigureOfMerit::CBCFigureOfMerit.

Classes

class  WeightedFigureOfMeritEvaluator
 Template specialization of the evaluator for the weighted figure of merit based on the t-value projection-dependent merit in the case of unilevel nets. More...
 

Public Member Functions

 WeightedFigureOfMerit (Real normType, std::unique_ptr< LatticeTester::Weights > weights, std::unique_ptr< PROJDEP > projDepMerit)
 Constructs a weigthed figure of merit based on the given arguments. More...
 
const LatticeTester::Weightsweights () const
 Returns the weights of the figure.
 
PROJDEP & projDepMerit () const
 Returns the projection-dependent merit of the figure.
 
Real normType () const
 Returns the norm type of the figure .
 
virtual Accumulator accumulator (Real initialValue) const override
 Creates a new accumulator. More...
 
virtual std::unique_ptr< CBCFigureOfMeritEvaluatorevaluator () override
 Returns a std::unique_ptr to an evaluator for the figure of merit.
 
virtual std::string format () const override
 Output information about the figure of merit.
 
Real expNorm () const
 Returns the exponent to use when accumulating merits.
 
- Public Member Functions inherited from NetBuilder::FigureOfMerit::CBCFigureOfMerit
virtual ~CBCFigureOfMerit ()=default
 Virtual default destructor.
 
- Public Member Functions inherited from NetBuilder::FigureOfMerit::FigureOfMerit
virtual ~FigureOfMerit ()=default
 Virtual default destructor.
 
std::unique_ptr< FigureOfMeritEvaluatorevaluator ()
 Returns a std::unique_ptr to an evaluator for the figure of merit.
 

Detailed Description

template<typename PROJDEP>
class NetBuilder::FigureOfMerit::WeightedFigureOfMerit< PROJDEP >

Class which represents a weighted figure of merit based on a projection dependent merit whose type is the template parameter.

Template Parameters
PROJDEPThe type of the projection dependent merit. This type should implement the following methods:
  • container<LatticeTester::Coordinates> projections(Dimension dimension) which returns an iterable container of the projections to consider for the given dimension.
  • Real operator()(const DigitalNet& net, LatticeTester::Coordinates) which returns the projection-dependent merit of the net for the given projection.

Constructor & Destructor Documentation

◆ WeightedFigureOfMerit()

template<typename PROJDEP>
NetBuilder::FigureOfMerit::WeightedFigureOfMerit< PROJDEP >::WeightedFigureOfMerit ( Real  normType,
std::unique_ptr< LatticeTester::Weights weights,
std::unique_ptr< PROJDEP >  projDepMerit 
)
inline

Constructs a weigthed figure of merit based on the given arguments.

Parameters
normTypeNorm type of the figure of merit.
weightsWeights of the subprojections.
projDepMeritProjection-dependent merit.

Member Function Documentation

◆ accumulator()

template<typename PROJDEP>
virtual Accumulator NetBuilder::FigureOfMerit::WeightedFigureOfMerit< PROJDEP >::accumulator ( Real  initialValue) const
inlineoverridevirtual

Creates a new accumulator.

Parameters
initialValueInitial accumulator value.

Implements NetBuilder::FigureOfMerit::CBCFigureOfMerit.


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