17#include "quest/include/config.h"
36#define INDEX_TYPE long long int
62#define PAULI_MASK_TYPE long long unsigned int
80#if ! (FLOAT_PRECISION == 1 || FLOAT_PRECISION == 2 || FLOAT_PRECISION == 4)
81 #error "FLOAT_PRECISION must be 1 (float), 2 (double) or 4 (long double)"
85#if FLOAT_PRECISION == 1
86 #define FLOAT_TYPE float
87#elif FLOAT_PRECISION == 2
88 #define FLOAT_TYPE double
89#elif FLOAT_PRECISION == 4
90 #define FLOAT_TYPE long double
116#if COMPILE_CUDA && (FLOAT_PRECISION == 4)
117 #error "A quad floating-point precision (FLOAT_PRECISION=4, i.e. long double) is not supported by GPU deployment"
128#if FLOAT_PRECISION == 1
129 #define UNSPECIFIED_DEFAULT_VALIDATION_EPSILON 1E-5
131#elif FLOAT_PRECISION == 2
132 #define UNSPECIFIED_DEFAULT_VALIDATION_EPSILON 1E-12
134#elif FLOAT_PRECISION == 4
135 #define UNSPECIFIED_DEFAULT_VALIDATION_EPSILON 1E-13
145#if FLOAT_PRECISION == 1
146 #define QREAL_FORMAT_SPECIFIER "%.8g"
148#elif FLOAT_PRECISION == 2
149 #define QREAL_FORMAT_SPECIFIER "%.14g"
151#elif FLOAT_PRECISION == 4
152 #define QREAL_FORMAT_SPECIFIER "%.17Lg"
const char * QREAL_FORMAT_SPECIFIER
const int FLOAT_PRECISION
long long unsigned int PAULI_MASK_TYPE