50template <
int XBits,
int YBits,
int ZBits>
53 const std::uint32_t keyTable[],
const std::uint32_t rankTable[])
74 "Optimisation tables have equal resolution in x and y");
82#if defined(OQMC_ENABLE_BINARY)
94#include "data/pmj/keys.txt"
99#include "data/pmj/ranks.txt"
109#if defined(OQMC_ENABLE_BINARY)
121#include "data/sobol/keys.txt"
126#include "data/sobol/ranks.txt"
136#if defined(OQMC_ENABLE_BINARY)
148#include "data/lattice/keys.txt"
153#include "data/lattice/ranks.txt"
#define OQMC_HOST_DEVICE
Definition gpu.h:13
int y
y axis coordinate.
Definition encode.h:27
int z
z axis coordinate.
Definition encode.h:28
int x
x axis coordinate.
Definition encode.h:26
EncodeKey decodeBits16(std::uint16_t value)
Decode a value back into a key.
Definition encode.h:81
constexpr std::uint32_t rankTable[]
Optimised blue noise rank table for lattice.
Definition bntables.h:152
constexpr std::uint32_t keyTable[]
Optimised blue noise key table for lattice.
Definition bntables.h:147
constexpr std::uint32_t keyTable[]
Optimised blue noise key table for pmj.
Definition bntables.h:93
constexpr std::uint32_t rankTable[]
Optimised blue noise rank table for pmj.
Definition bntables.h:98
constexpr std::uint32_t rankTable[]
Optimised blue noise rank table for sobol.
Definition bntables.h:125
constexpr std::uint32_t keyTable[]
Optimised blue noise key table for sobol.
Definition bntables.h:120
constexpr auto size
2^16 table size.
Definition bntables.h:71
constexpr auto yBits
256 pixels in y.
Definition bntables.h:70
constexpr auto xBits
256 pixels in x.
Definition bntables.h:69
constexpr TableReturnValue tableValue(std::uint16_t pixel, std::uint16_t shift, const std::uint32_t keyTable[], const std::uint32_t rankTable[])
Lookup value pair from table.
Definition bntables.h:52
Return type for table value.
Definition bntables.h:31
std::uint32_t rank
rank value to shuffle.
Definition bntables.h:33
std::uint32_t key
key value to randomise.
Definition bntables.h:32