Maestro 0.3.11
Unified interface for quantum circuit simulation
Loading...
Searching...
No Matches
Utils::Sampling::Prepared< Probability > Class Template Reference

#include <Sampling.h>

Collaboration diagram for Utils::Sampling::Prepared< Probability >:

Public Member Functions

 Prepared (size_t count, size_t shots, Probability probability, Options options={})
size_t Categories () const
void Draw (const std::vector< double > &uniforms, std::vector< size_t > &out, int threads) const
Family Method () const
size_t Sample (double uniform) const
size_t SampleCategory (double uniform) const
size_t ScratchAvailable () const
const Options & Settings () const
size_t Size () const
size_t SourceRow (size_t category) const

Static Public Member Functions

static size_t MinimumMemoryBytes (size_t count, size_t shots, size_t budget=Options{}.memoryBytes)

Detailed Description

template<class Probability>
class Utils::Sampling::Prepared< Probability >

Definition at line 136 of file Sampling.h.

Constructor & Destructor Documentation

◆ Prepared()

template<class Probability>
Utils::Sampling::Prepared< Probability >::Prepared ( size_t count,
size_t shots,
Probability probability,
Options options = {} )
inline

Definition at line 149 of file Sampling.h.

References Probability().

Member Function Documentation

◆ Categories()

template<class Probability>
size_t Utils::Sampling::Prepared< Probability >::Categories ( ) const
inline

Definition at line 222 of file Sampling.h.

◆ Draw()

template<class Probability>
void Utils::Sampling::Prepared< Probability >::Draw ( const std::vector< double > & uniforms,
std::vector< size_t > & out,
int threads ) const
inline

Definition at line 282 of file Sampling.h.

References Sample().

◆ Method()

template<class Probability>
Family Utils::Sampling::Prepared< Probability >::Method ( ) const
inline

Definition at line 237 of file Sampling.h.

References Utils::Sampling::Alias, and Utils::Sampling::Cdf.

◆ MinimumMemoryBytes()

template<class Probability>
size_t Utils::Sampling::Prepared< Probability >::MinimumMemoryBytes ( size_t count,
size_t shots,
size_t budget = Options{}.memoryBytes )
inlinestatic

Definition at line 141 of file Sampling.h.

◆ Sample()

template<class Probability>
size_t Utils::Sampling::Prepared< Probability >::Sample ( double uniform) const
inline

Definition at line 253 of file Sampling.h.

Referenced by Draw(), and SampleCategory().

◆ SampleCategory()

template<class Probability>
size_t Utils::Sampling::Prepared< Probability >::SampleCategory ( double uniform) const
inline

Definition at line 232 of file Sampling.h.

References Sample().

◆ ScratchAvailable()

template<class Probability>
size_t Utils::Sampling::Prepared< Probability >::ScratchAvailable ( ) const
inline

Definition at line 247 of file Sampling.h.

◆ Settings()

template<class Probability>
const Options & Utils::Sampling::Prepared< Probability >::Settings ( ) const
inline

Definition at line 242 of file Sampling.h.

◆ Size()

template<class Probability>
size_t Utils::Sampling::Prepared< Probability >::Size ( ) const
inline

Definition at line 217 of file Sampling.h.

◆ SourceRow()

template<class Probability>
size_t Utils::Sampling::Prepared< Probability >::SourceRow ( size_t category) const
inline

Definition at line 227 of file Sampling.h.


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