ldsgen::Sphere3 class

3-Sphere sequence generator

Generates points on a 3-sphere using a combination of Van der Corput and Sphere generators.

Base classes

class SphereGen
Base class for sphere generators.

Constructors, destructors, conversion operators

Sphere3(std::span<const unsigned long> base) explicit
Construct a new Sphere3 object.

Public functions

auto pop() -> std::vector<double> override
Generate the next point on the 3-sphere.
void reseed(unsigned long seed) override
Reset the state of the Sphere3 generator.

Function documentation

ldsgen::Sphere3::Sphere3(std::span<const unsigned long> base) explicit

Construct a new Sphere3 object.

Parameters
base in span of uint64_t values representing the bases for the generators

Constructs a 3-sphere sequence generator with the specified bases.

std::vector<double> ldsgen::Sphere3::pop() override

Generate the next point on the 3-sphere.

Returns std::vector<double> the next point on the 3-sphere

Returns the next point on the 3-sphere as a vector of double values.

void ldsgen::Sphere3::reseed(unsigned long seed) override

Reset the state of the Sphere3 generator.

Parameters
seed in the seed value to reset the sequence generator to

Resets the state of the sequence generator to a specific seed value.