QUDA  v1.1.0
A library for QCD on GPUs
enum_quda.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <limits.h>
4 #define QUDA_INVALID_ENUM INT_MIN
5 
6 #ifdef __cplusplus
7 extern "C" {
8 #endif
9 
11 
12 typedef enum QudaMemoryType_s {
18 
19 //
20 // Types used in QudaGaugeParam
21 //
22 
23 typedef enum QudaLinkType_s {
28  QUDA_COARSE_LINKS, // used for coarse-gauge field with multigrid
29  QUDA_SMEARED_LINKS, // used for loading and saving gaugeSmeared in the interface
30  QUDA_WILSON_LINKS = QUDA_SU3_LINKS, // used by wilson, clover, twisted mass, and domain wall
37 
38 typedef enum QudaGaugeFieldOrder_s {
40  QUDA_FLOAT2_GAUGE_ORDER = 2, // no reconstruct and double precision
41  QUDA_FLOAT4_GAUGE_ORDER = 4, // 8 reconstruct single, and 12 reconstruct single, half, quarter
42  QUDA_FLOAT8_GAUGE_ORDER = 8, // 8 reconstruct half and quarter
43  QUDA_NATIVE_GAUGE_ORDER, // used to denote one of the above types in a trait, not used directly
44  QUDA_QDP_GAUGE_ORDER, // expect *gauge[mu], even-odd, spacetime, row-column color
45  QUDA_QDPJIT_GAUGE_ORDER, // expect *gauge[mu], even-odd, complex-column-row-spacetime
46  QUDA_CPS_WILSON_GAUGE_ORDER, // expect *gauge, even-odd, mu, spacetime, column-row color
47  QUDA_MILC_GAUGE_ORDER, // expect *gauge, even-odd, mu, spacetime, row-column order
48  QUDA_MILC_SITE_GAUGE_ORDER, // packed into MILC site AoS [even-odd][spacetime] array, and [dir][row][col] inside
49  QUDA_BQCD_GAUGE_ORDER, // expect *gauge, mu, even-odd, spacetime+halos, column-row order
50  QUDA_TIFR_GAUGE_ORDER, // expect *gauge, mu, even-odd, spacetime, column-row order
51  QUDA_TIFR_PADDED_GAUGE_ORDER, // expect *gauge, mu, parity, t, z+halo, y, x/2, column-row order
54 
55 typedef enum QudaTboundary_s {
60 
61 typedef enum QudaPrecision_s {
68 
69 typedef enum QudaReconstructType_s {
70  QUDA_RECONSTRUCT_NO = 18, // store all 18 real numbers explicitly
71  QUDA_RECONSTRUCT_12 = 12, // reconstruct from 12 real numbers
72  QUDA_RECONSTRUCT_8 = 8, // reconstruct from 8 real numbers
73  QUDA_RECONSTRUCT_9 = 9, // used for storing HISQ long-link variables
74  QUDA_RECONSTRUCT_13 = 13, // used for storing HISQ long-link variables
75  QUDA_RECONSTRUCT_10 = 10, // 10-number parameterization used for storing the momentum field
78 
79 typedef enum QudaGaugeFixed_s {
80  QUDA_GAUGE_FIXED_NO, // no gauge fixing
81  QUDA_GAUGE_FIXED_YES, // gauge field stored in temporal gauge
84 
85 //
86 // Types used in QudaInvertParam
87 //
88 
89 typedef enum QudaDslashType_s {
105 
106 typedef enum QudaInverterType_s {
135 
136 typedef enum QudaEigType_s {
137  QUDA_EIG_TR_LANCZOS, // Thick restarted lanczos solver
138  QUDA_EIG_BLK_TR_LANCZOS, // Block Thick restarted lanczos solver
139  QUDA_EIG_IR_ARNOLDI, // Implicitly Restarted Arnoldi solver
140  QUDA_EIG_BLK_IR_ARNOLDI, // Block Implicitly Restarted Arnoldi solver
143 
146 typedef enum QudaEigSpectrumType_s {
155 
156 typedef enum QudaSolutionType_s {
165 
166 typedef enum QudaSolveType_s {
177 
185 
186 typedef enum QudaSchwarzType_s {
191 
192 typedef enum QudaResidualType_s {
193  QUDA_L2_RELATIVE_RESIDUAL = 1, // L2 relative residual (default)
194  QUDA_L2_ABSOLUTE_RESIDUAL = 2, // L2 absolute residual
195  QUDA_HEAVY_QUARK_RESIDUAL = 4, // Fermilab heavy quark residual
198 
199 // Which basis to use for CA algorithms
200 typedef enum QudaCABasis_s {
205 
206 // Whether the preconditioned matrix is (1-k^2 Deo Doe) or (1-k^2 Doe Deo)
207 //
208 // For the clover-improved Wilson Dirac operator, QUDA_MATPC_EVEN_EVEN
209 // defaults to the "symmetric" form, (1 - k^2 A_ee^-1 D_eo A_oo^-1 D_oe),
210 // and likewise for QUDA_MATPC_ODD_ODD.
211 //
212 // For the "asymmetric" form, (A_ee - k^2 D_eo A_oo^-1 D_oe), select
213 // QUDA_MATPC_EVEN_EVEN_ASYMMETRIC.
214 //
215 typedef enum QudaMatPCType_s {
222 
224 
231 
233  QUDA_DEFAULT_NORMALIZATION, // leave source and solution untouched
234  QUDA_SOURCE_NORMALIZATION // normalize such that || src || = 1
236 
237 typedef enum QudaPreserveSource_s {
238  QUDA_PRESERVE_SOURCE_NO, // use the source for the residual
239  QUDA_PRESERVE_SOURCE_YES, // keep the source intact
242 
243 typedef enum QudaDiracFieldOrder_s {
244  QUDA_INTERNAL_DIRAC_ORDER, // internal dirac order used, varies on precision and dslash type
245  QUDA_DIRAC_ORDER, // even-odd, color inside spin
246  QUDA_QDP_DIRAC_ORDER, // even-odd, spin inside color
247  QUDA_QDPJIT_DIRAC_ORDER, // even-odd, complex-color-spin-spacetime
248  QUDA_CPS_WILSON_DIRAC_ORDER, // odd-even, color inside spin
249  QUDA_LEX_DIRAC_ORDER, // lexicographical order, color inside spin
250  QUDA_TIFR_PADDED_DIRAC_ORDER, // padded z dimension for TIFR RHMC code
253 
255  QUDA_FLOAT_CLOVER_ORDER = 1, // even-odd float ordering
256  QUDA_FLOAT2_CLOVER_ORDER = 2, // even-odd float2 ordering
257  QUDA_FLOAT4_CLOVER_ORDER = 4, // even-odd float4 ordering
258  QUDA_PACKED_CLOVER_ORDER, // even-odd, QDP packed
259  QUDA_QDPJIT_CLOVER_ORDER, // (diagonal / off-diagonal)-chirality-spacetime
260  QUDA_BQCD_CLOVER_ORDER, // even-odd, super-diagonal packed and reordered
263 
264 typedef enum QudaVerbosity_s {
271 
273 
274 typedef enum QudaPreserveDirac_s {
279 
280 //
281 // Type used for "parity" argument to dslashQuda()
282 //
283 
285 
286 //
287 // Types used only internally
288 //
289 
290 typedef enum QudaDiracType_s {
322 
323 // Where the field is stored
324 typedef enum QudaFieldLocation_s {
329 
330 // Which sites are included
331 typedef enum QudaSiteSubset_s {
336 
337 // Site ordering (always t-z-y-x, with rightmost varying fastest)
338 typedef enum QudaSiteOrder_s {
339  QUDA_LEXICOGRAPHIC_SITE_ORDER, // lexicographic ordering
340  QUDA_EVEN_ODD_SITE_ORDER, // QUDA and QDP use this
341  QUDA_ODD_EVEN_SITE_ORDER, // CPS uses this
344 
345 // Degree of freedom ordering
346 typedef enum QudaFieldOrder_s {
347  QUDA_FLOAT_FIELD_ORDER = 1, // spin-color-complex-space
348  QUDA_FLOAT2_FIELD_ORDER = 2, // (spin-color-complex)/2-space-(spin-color-complex)%2
349  QUDA_FLOAT4_FIELD_ORDER = 4, // (spin-color-complex)/4-space-(spin-color-complex)%4
350  QUDA_FLOAT8_FIELD_ORDER = 8, // (spin-color-complex)/8-space-(spin-color-complex)%8
351  QUDA_SPACE_SPIN_COLOR_FIELD_ORDER, // CPS/QDP++ ordering
352  QUDA_SPACE_COLOR_SPIN_FIELD_ORDER, // QLA ordering (spin inside color)
353  QUDA_QDPJIT_FIELD_ORDER, // QDP field ordering (complex-color-spin-spacetime)
354  QUDA_QOP_DOMAIN_WALL_FIELD_ORDER, // QOP domain-wall ordering
358 
359 typedef enum QudaFieldCreate_s {
360  QUDA_NULL_FIELD_CREATE, // create new field
361  QUDA_ZERO_FIELD_CREATE, // create new field and zero it
362  QUDA_COPY_FIELD_CREATE, // create copy to field
363  QUDA_REFERENCE_FIELD_CREATE, // create reference to field
366 
367 typedef enum QudaGammaBasis_s {
373 
374 typedef enum QudaSourceType_s {
382 
383 typedef enum QudaNoiseType_s {
388 
389 // used to select projection method for deflated solvers
390 typedef enum QudaProjectionType_s {
395 
396 // used to select checkerboard preconditioning method
398 
399 typedef enum QudaTwistFlavorType_s {
406 
407 typedef enum QudaTwistDslashType_s {
414 
421 
422 typedef enum QudaTwistGamma5Type_s {
427 
428 typedef enum QudaUseInitGuess_s {
433 
434 typedef enum QudaDeflatedGuess_s {
439 
445 
446 typedef enum QudaSetupType_s {
451 
452 typedef enum QudaTransferType_s {
458 
459 typedef enum QudaBoolean_s {
464 
465 // define these for backwards compatibility
466 #define QUDA_BOOLEAN_NO QUDA_BOOLEAN_FALSE
467 #define QUDA_BOOLEAN_YES QUDA_BOOLEAN_TRUE
468 
469 typedef enum QudaBLASOperation_s {
470  QUDA_BLAS_OP_N = 0, // No transpose
471  QUDA_BLAS_OP_T = 1, // Transpose only
472  QUDA_BLAS_OP_C = 2, // Conjugate transpose
475 
476 typedef enum QudaBLASDataType_s {
477  QUDA_BLAS_DATATYPE_S = 0, // Single
478  QUDA_BLAS_DATATYPE_D = 1, // Double
479  QUDA_BLAS_DATATYPE_C = 2, // Complex(single)
480  QUDA_BLAS_DATATYPE_Z = 3, // Complex(double)
483 
484 typedef enum QudaBLASDataOrder_s {
489 
490 typedef enum QudaDirection_s {
494  QUDA_BOTH_DIRS = 2
496 
498 
499 typedef enum QudaFieldGeometry_s {
506 
507 typedef enum QudaGhostExchange_s {
513 
514 typedef enum QudaStaggeredPhase_s {
521 
522 typedef enum QudaContractType_s {
523  QUDA_CONTRACT_TYPE_OPEN, // Open spin elementals
524  QUDA_CONTRACT_TYPE_DR, // DegrandRossi
527 
528 typedef enum QudaContractGamma_s {
547 
548 typedef enum QudaWFlowType_s {
553 
554 // Allows to choose an appropriate external library
555 typedef enum QudaExtLibType_s {
561 
562 #ifdef __cplusplus
563 }
564 #endif
565 
QudaSolverNormalization_s
Definition: enum_quda.h:232
@ QUDA_SOURCE_NORMALIZATION
Definition: enum_quda.h:234
@ QUDA_DEFAULT_NORMALIZATION
Definition: enum_quda.h:233
QudaDiracType_s
Definition: enum_quda.h:290
@ QUDA_TWISTED_MASSPC_DIRAC
Definition: enum_quda.h:312
@ QUDA_GAUGE_LAPLACE_DIRAC
Definition: enum_quda.h:317
@ QUDA_GAUGE_COVDEV_DIRAC
Definition: enum_quda.h:319
@ QUDA_TWISTED_CLOVERPC_DIRAC
Definition: enum_quda.h:314
@ QUDA_MOBIUS_DOMAIN_WALLPC_EOFA_DIRAC
Definition: enum_quda.h:304
@ QUDA_CLOVER_HASENBUSCH_TWIST_DIRAC
Definition: enum_quda.h:295
@ QUDA_TWISTED_MASS_DIRAC
Definition: enum_quda.h:311
@ QUDA_COARSEPC_DIRAC
Definition: enum_quda.h:316
@ QUDA_STAGGERED_DIRAC
Definition: enum_quda.h:305
@ QUDA_CLOVER_HASENBUSCH_TWISTPC_DIRAC
Definition: enum_quda.h:296
@ QUDA_DOMAIN_WALL_4D_DIRAC
Definition: enum_quda.h:299
@ QUDA_ASQTAD_DIRAC
Definition: enum_quda.h:308
@ QUDA_STAGGEREDPC_DIRAC
Definition: enum_quda.h:306
@ QUDA_MOBIUS_DOMAIN_WALL_EOFA_DIRAC
Definition: enum_quda.h:303
@ QUDA_ASQTADPC_DIRAC
Definition: enum_quda.h:309
@ QUDA_COARSE_DIRAC
Definition: enum_quda.h:315
@ QUDA_GAUGE_LAPLACEPC_DIRAC
Definition: enum_quda.h:318
@ QUDA_MOBIUS_DOMAIN_WALLPC_DIRAC
Definition: enum_quda.h:302
@ QUDA_ASQTADKD_DIRAC
Definition: enum_quda.h:310
@ QUDA_TWISTED_CLOVER_DIRAC
Definition: enum_quda.h:313
@ QUDA_DOMAIN_WALL_4DPC_DIRAC
Definition: enum_quda.h:300
@ QUDA_STAGGEREDKD_DIRAC
Definition: enum_quda.h:307
@ QUDA_CLOVER_DIRAC
Definition: enum_quda.h:293
@ QUDA_MOBIUS_DOMAIN_WALL_DIRAC
Definition: enum_quda.h:301
@ QUDA_DOMAIN_WALLPC_DIRAC
Definition: enum_quda.h:298
@ QUDA_DOMAIN_WALL_DIRAC
Definition: enum_quda.h:297
@ QUDA_WILSONPC_DIRAC
Definition: enum_quda.h:292
@ QUDA_CLOVERPC_DIRAC
Definition: enum_quda.h:294
@ QUDA_WILSON_DIRAC
Definition: enum_quda.h:291
@ QUDA_INVALID_DIRAC
Definition: enum_quda.h:320
QudaMultigridCycleType_s
Definition: enum_quda.h:178
@ QUDA_MG_CYCLE_FCYCLE
Definition: enum_quda.h:180
@ QUDA_MG_CYCLE_WCYCLE
Definition: enum_quda.h:181
@ QUDA_MG_CYCLE_INVALID
Definition: enum_quda.h:183
@ QUDA_MG_CYCLE_VCYCLE
Definition: enum_quda.h:179
@ QUDA_MG_CYCLE_RECURSIVE
Definition: enum_quda.h:182
enum QudaCloverFieldOrder_s QudaCloverFieldOrder
enum QudaSiteOrder_s QudaSiteOrder
QudaCloverFieldOrder_s
Definition: enum_quda.h:254
@ QUDA_BQCD_CLOVER_ORDER
Definition: enum_quda.h:260
@ QUDA_FLOAT_CLOVER_ORDER
Definition: enum_quda.h:255
@ QUDA_FLOAT4_CLOVER_ORDER
Definition: enum_quda.h:257
@ QUDA_FLOAT2_CLOVER_ORDER
Definition: enum_quda.h:256
@ QUDA_QDPJIT_CLOVER_ORDER
Definition: enum_quda.h:259
@ QUDA_PACKED_CLOVER_ORDER
Definition: enum_quda.h:258
@ QUDA_INVALID_CLOVER_ORDER
Definition: enum_quda.h:261
enum QudaSolveType_s QudaSolveType
enum QudaWFlowType_s QudaWFlowType
enum QudaBLASOperation_s QudaBLASOperation
enum QudaPrecision_s QudaPrecision
enum QudaUseInitGuess_s QudaUseInitGuess
enum QudaGaugeFixed_s QudaGaugeFixed
QudaNoiseType_s
Definition: enum_quda.h:383
@ QUDA_NOISE_GAUSS
Definition: enum_quda.h:384
@ QUDA_NOISE_INVALID
Definition: enum_quda.h:386
@ QUDA_NOISE_UNIFORM
Definition: enum_quda.h:385
enum QudaStaggeredPhase_s QudaStaggeredPhase
QudaSourceType_s
Definition: enum_quda.h:374
@ QUDA_INVALID_SOURCE
Definition: enum_quda.h:380
@ QUDA_CONSTANT_SOURCE
Definition: enum_quda.h:377
@ QUDA_SINUSOIDAL_SOURCE
Definition: enum_quda.h:378
@ QUDA_POINT_SOURCE
Definition: enum_quda.h:375
@ QUDA_CORNER_SOURCE
Definition: enum_quda.h:379
@ QUDA_RANDOM_SOURCE
Definition: enum_quda.h:376
enum QudaLinkDirection_s QudaLinkDirection
QudaSetupType_s
Definition: enum_quda.h:446
@ QUDA_TEST_VECTOR_SETUP
Definition: enum_quda.h:448
@ QUDA_INVALID_SETUP_TYPE
Definition: enum_quda.h:449
@ QUDA_NULL_VECTOR_SETUP
Definition: enum_quda.h:447
QudaCABasis_s
Definition: enum_quda.h:200
@ QUDA_CHEBYSHEV_BASIS
Definition: enum_quda.h:202
@ QUDA_INVALID_BASIS
Definition: enum_quda.h:203
@ QUDA_POWER_BASIS
Definition: enum_quda.h:201
QudaStaggeredPhase_s
Definition: enum_quda.h:514
@ QUDA_STAGGERED_PHASE_NO
Definition: enum_quda.h:515
@ QUDA_STAGGERED_PHASE_TIFR
Definition: enum_quda.h:518
@ QUDA_STAGGERED_PHASE_CPS
Definition: enum_quda.h:517
@ QUDA_STAGGERED_PHASE_INVALID
Definition: enum_quda.h:519
@ QUDA_STAGGERED_PHASE_MILC
Definition: enum_quda.h:516
QudaDslashType_s
Definition: enum_quda.h:89
@ QUDA_COVDEV_DSLASH
Definition: enum_quda.h:102
@ QUDA_WILSON_DSLASH
Definition: enum_quda.h:90
@ QUDA_TWISTED_CLOVER_DSLASH
Definition: enum_quda.h:100
@ QUDA_STAGGERED_DSLASH
Definition: enum_quda.h:97
@ QUDA_INVALID_DSLASH
Definition: enum_quda.h:103
@ QUDA_MOBIUS_DWF_DSLASH
Definition: enum_quda.h:95
@ QUDA_CLOVER_WILSON_DSLASH
Definition: enum_quda.h:91
@ QUDA_TWISTED_MASS_DSLASH
Definition: enum_quda.h:99
@ QUDA_DOMAIN_WALL_DSLASH
Definition: enum_quda.h:93
@ QUDA_ASQTAD_DSLASH
Definition: enum_quda.h:98
@ QUDA_MOBIUS_DWF_EOFA_DSLASH
Definition: enum_quda.h:96
@ QUDA_LAPLACE_DSLASH
Definition: enum_quda.h:101
@ QUDA_CLOVER_HASENBUSCH_TWIST_DSLASH
Definition: enum_quda.h:92
@ QUDA_DOMAIN_WALL_4D_DSLASH
Definition: enum_quda.h:94
QudaFieldLocation_s
Definition: enum_quda.h:324
@ QUDA_CUDA_FIELD_LOCATION
Definition: enum_quda.h:326
@ QUDA_CPU_FIELD_LOCATION
Definition: enum_quda.h:325
@ QUDA_INVALID_FIELD_LOCATION
Definition: enum_quda.h:327
QudaTwistDslashType_s
Definition: enum_quda.h:407
@ QUDA_DEG_DSLASH_TWIST_INV
Definition: enum_quda.h:409
@ QUDA_DEG_DSLASH_TWIST_XPAY
Definition: enum_quda.h:410
@ QUDA_DSLASH_INVALID
Definition: enum_quda.h:412
@ QUDA_DEG_TWIST_INV_DSLASH
Definition: enum_quda.h:408
@ QUDA_NONDEG_DSLASH
Definition: enum_quda.h:411
enum QudaTwistFlavorType_s QudaTwistFlavorType
enum QudaDirection_s QudaDirection
QudaMassNormalization_s
Definition: enum_quda.h:225
@ QUDA_KAPPA_NORMALIZATION
Definition: enum_quda.h:226
@ QUDA_ASYMMETRIC_MASS_NORMALIZATION
Definition: enum_quda.h:228
@ QUDA_INVALID_NORMALIZATION
Definition: enum_quda.h:229
@ QUDA_MASS_NORMALIZATION
Definition: enum_quda.h:227
QudaDagType_s
Definition: enum_quda.h:223
@ QUDA_DAG_INVALID
Definition: enum_quda.h:223
@ QUDA_DAG_NO
Definition: enum_quda.h:223
@ QUDA_DAG_YES
Definition: enum_quda.h:223
QudaUseInitGuess_s
Definition: enum_quda.h:428
@ QUDA_USE_INIT_GUESS_NO
Definition: enum_quda.h:429
@ QUDA_USE_INIT_GUESS_INVALID
Definition: enum_quda.h:431
@ QUDA_USE_INIT_GUESS_YES
Definition: enum_quda.h:430
QudaVerbosity_s
Definition: enum_quda.h:264
@ QUDA_SILENT
Definition: enum_quda.h:265
@ QUDA_INVALID_VERBOSITY
Definition: enum_quda.h:269
@ QUDA_DEBUG_VERBOSE
Definition: enum_quda.h:268
@ QUDA_SUMMARIZE
Definition: enum_quda.h:266
@ QUDA_VERBOSE
Definition: enum_quda.h:267
QudaBLASDataType_s
Definition: enum_quda.h:476
@ QUDA_BLAS_DATATYPE_INVALID
Definition: enum_quda.h:481
@ QUDA_BLAS_DATATYPE_Z
Definition: enum_quda.h:480
@ QUDA_BLAS_DATATYPE_D
Definition: enum_quda.h:478
@ QUDA_BLAS_DATATYPE_C
Definition: enum_quda.h:479
@ QUDA_BLAS_DATATYPE_S
Definition: enum_quda.h:477
QudaSiteSubset_s
Definition: enum_quda.h:331
@ QUDA_INVALID_SITE_SUBSET
Definition: enum_quda.h:334
@ QUDA_FULL_SITE_SUBSET
Definition: enum_quda.h:333
@ QUDA_PARITY_SITE_SUBSET
Definition: enum_quda.h:332
QudaProjectionType_s
Definition: enum_quda.h:390
@ QUDA_GALERKIN_PROJECTION
Definition: enum_quda.h:392
@ QUDA_INVALID_PROJECTION
Definition: enum_quda.h:393
@ QUDA_MINRES_PROJECTION
Definition: enum_quda.h:391
enum QudaDagType_s QudaDagType
QudaLinkDirection_s
Definition: enum_quda.h:497
@ QUDA_LINK_BIDIRECTIONAL
Definition: enum_quda.h:497
@ QUDA_LINK_FORWARDS
Definition: enum_quda.h:497
@ QUDA_LINK_BACKWARDS
Definition: enum_quda.h:497
enum QudaTransferType_s QudaTransferType
QudaBoolean_s
Definition: enum_quda.h:459
@ QUDA_BOOLEAN_FALSE
Definition: enum_quda.h:460
@ QUDA_BOOLEAN_INVALID
Definition: enum_quda.h:462
@ QUDA_BOOLEAN_TRUE
Definition: enum_quda.h:461
enum QudaMultigridCycleType_s QudaMultigridCycleType
enum QudaGaugeFieldOrder_s QudaGaugeFieldOrder
enum QudaBLASDataOrder_s QudaBLASDataOrder
enum QudaPreserveSource_s QudaPreserveSource
enum QudaTboundary_s QudaTboundary
QudaGammaBasis_s
Definition: enum_quda.h:367
@ QUDA_CHIRAL_GAMMA_BASIS
Definition: enum_quda.h:370
@ QUDA_DEGRAND_ROSSI_GAMMA_BASIS
Definition: enum_quda.h:368
@ QUDA_UKQCD_GAMMA_BASIS
Definition: enum_quda.h:369
@ QUDA_INVALID_GAMMA_BASIS
Definition: enum_quda.h:371
QudaReconstructType_s
Definition: enum_quda.h:69
@ QUDA_RECONSTRUCT_NO
Definition: enum_quda.h:70
@ QUDA_RECONSTRUCT_INVALID
Definition: enum_quda.h:76
@ QUDA_RECONSTRUCT_12
Definition: enum_quda.h:71
@ QUDA_RECONSTRUCT_13
Definition: enum_quda.h:74
@ QUDA_RECONSTRUCT_8
Definition: enum_quda.h:72
@ QUDA_RECONSTRUCT_10
Definition: enum_quda.h:75
@ QUDA_RECONSTRUCT_9
Definition: enum_quda.h:73
enum QudaTwistGamma5Type_s QudaTwistGamma5Type
enum QudaProjectionType_s QudaProjectionType
QudaTboundary_s
Definition: enum_quda.h:55
@ QUDA_INVALID_T_BOUNDARY
Definition: enum_quda.h:58
@ QUDA_ANTI_PERIODIC_T
Definition: enum_quda.h:56
@ QUDA_PERIODIC_T
Definition: enum_quda.h:57
enum QudaTwistDslashType_s QudaTwistDslashType
QudaTwistCloverDslashType_s
Definition: enum_quda.h:415
@ QUDA_DEG_DSLASH_CLOVER_TWIST_XPAY
Definition: enum_quda.h:418
@ QUDA_DEG_DSLASH_CLOVER_TWIST_INV
Definition: enum_quda.h:417
@ QUDA_DEG_CLOVER_TWIST_INV_DSLASH
Definition: enum_quda.h:416
@ QUDA_TC_DSLASH_INVALID
Definition: enum_quda.h:419
enum QudaDiracType_s QudaDiracType
enum QudaPCType_s QudaPCType
QudaParity_s
Definition: enum_quda.h:284
@ QUDA_EVEN_PARITY
Definition: enum_quda.h:284
@ QUDA_ODD_PARITY
Definition: enum_quda.h:284
@ QUDA_INVALID_PARITY
Definition: enum_quda.h:284
#define QUDA_INVALID_ENUM
Definition: enum_quda.h:4
QudaMemoryType_s
Definition: enum_quda.h:12
@ QUDA_MEMORY_MAPPED
Definition: enum_quda.h:15
@ QUDA_MEMORY_PINNED
Definition: enum_quda.h:14
@ QUDA_MEMORY_DEVICE
Definition: enum_quda.h:13
@ QUDA_MEMORY_INVALID
Definition: enum_quda.h:16
QudaDiracFieldOrder_s
Definition: enum_quda.h:243
@ QUDA_QDPJIT_DIRAC_ORDER
Definition: enum_quda.h:247
@ QUDA_LEX_DIRAC_ORDER
Definition: enum_quda.h:249
@ QUDA_INTERNAL_DIRAC_ORDER
Definition: enum_quda.h:244
@ QUDA_TIFR_PADDED_DIRAC_ORDER
Definition: enum_quda.h:250
@ QUDA_DIRAC_ORDER
Definition: enum_quda.h:245
@ QUDA_QDP_DIRAC_ORDER
Definition: enum_quda.h:246
@ QUDA_CPS_WILSON_DIRAC_ORDER
Definition: enum_quda.h:248
@ QUDA_INVALID_DIRAC_ORDER
Definition: enum_quda.h:251
QudaResidualType_s
Definition: enum_quda.h:192
@ QUDA_HEAVY_QUARK_RESIDUAL
Definition: enum_quda.h:195
@ QUDA_L2_ABSOLUTE_RESIDUAL
Definition: enum_quda.h:194
@ QUDA_INVALID_RESIDUAL
Definition: enum_quda.h:196
@ QUDA_L2_RELATIVE_RESIDUAL
Definition: enum_quda.h:193
QudaFieldGeometry_s
Definition: enum_quda.h:499
@ QUDA_SCALAR_GEOMETRY
Definition: enum_quda.h:500
@ QUDA_VECTOR_GEOMETRY
Definition: enum_quda.h:501
@ QUDA_INVALID_GEOMETRY
Definition: enum_quda.h:504
@ QUDA_TENSOR_GEOMETRY
Definition: enum_quda.h:502
@ QUDA_COARSE_GEOMETRY
Definition: enum_quda.h:503
enum QudaContractGamma_s QudaContractGamma
enum QudaNoiseType_s QudaNoiseType
enum QudaDslashType_s QudaDslashType
enum QudaFieldGeometry_s QudaFieldGeometry
enum QudaFieldOrder_s QudaFieldOrder
QudaTransferType_s
Definition: enum_quda.h:452
@ QUDA_TRANSFER_COARSE_KD
Definition: enum_quda.h:454
@ QUDA_TRANSFER_AGGREGATE
Definition: enum_quda.h:453
@ QUDA_TRANSFER_OPTIMIZED_KD
Definition: enum_quda.h:455
@ QUDA_TRANSFER_INVALID
Definition: enum_quda.h:456
enum QudaSiteSubset_s QudaSiteSubset
enum QudaBoolean_s QudaBoolean
enum QudaSolutionType_s QudaSolutionType
QudaContractGamma_s
Definition: enum_quda.h:528
@ QUDA_CONTRACT_GAMMA_S12
Definition: enum_quda.h:539
@ QUDA_CONTRACT_GAMMA_INVALID
Definition: enum_quda.h:545
@ QUDA_CONTRACT_GAMMA_G1G5
Definition: enum_quda.h:535
@ QUDA_CONTRACT_GAMMA_G2
Definition: enum_quda.h:531
@ QUDA_CONTRACT_GAMMA_G3
Definition: enum_quda.h:532
@ QUDA_CONTRACT_GAMMA_I
Definition: enum_quda.h:529
@ QUDA_CONTRACT_GAMMA_S21
Definition: enum_quda.h:542
@ QUDA_CONTRACT_GAMMA_G2G5
Definition: enum_quda.h:536
@ QUDA_CONTRACT_GAMMA_G1
Definition: enum_quda.h:530
@ QUDA_CONTRACT_GAMMA_G4
Definition: enum_quda.h:533
@ QUDA_CONTRACT_GAMMA_S23
Definition: enum_quda.h:543
@ QUDA_CONTRACT_GAMMA_G3G5
Definition: enum_quda.h:537
@ QUDA_CONTRACT_GAMMA_G4G5
Definition: enum_quda.h:538
@ QUDA_CONTRACT_GAMMA_G5
Definition: enum_quda.h:534
@ QUDA_CONTRACT_GAMMA_S14
Definition: enum_quda.h:541
@ QUDA_CONTRACT_GAMMA_S13
Definition: enum_quda.h:540
@ QUDA_CONTRACT_GAMMA_S34
Definition: enum_quda.h:544
enum QudaEigSpectrumType_s QudaEigSpectrumType
enum QudaInverterType_s QudaInverterType
QudaDeflatedGuess_s
Definition: enum_quda.h:434
@ QUDA_DEFLATED_GUESS_NO
Definition: enum_quda.h:435
@ QUDA_DEFLATED_GUESS_INVALID
Definition: enum_quda.h:437
@ QUDA_DEFLATED_GUESS_YES
Definition: enum_quda.h:436
QudaEigType_s
Definition: enum_quda.h:136
@ QUDA_EIG_BLK_IR_ARNOLDI
Definition: enum_quda.h:140
@ QUDA_EIG_INVALID
Definition: enum_quda.h:141
@ QUDA_EIG_IR_ARNOLDI
Definition: enum_quda.h:139
@ QUDA_EIG_BLK_TR_LANCZOS
Definition: enum_quda.h:138
@ QUDA_EIG_TR_LANCZOS
Definition: enum_quda.h:137
enum QudaDeflatedGuess_s QudaDeflatedGuess
enum QudaFieldLocation_s QudaFieldLocation
QudaDirection_s
Definition: enum_quda.h:490
@ QUDA_BOTH_DIRS
Definition: enum_quda.h:494
@ QUDA_FORWARDS
Definition: enum_quda.h:493
@ QUDA_BACKWARDS
Definition: enum_quda.h:491
@ QUDA_IN_PLACE
Definition: enum_quda.h:492
QudaGhostExchange_s
Definition: enum_quda.h:507
@ QUDA_GHOST_EXCHANGE_EXTENDED
Definition: enum_quda.h:510
@ QUDA_GHOST_EXCHANGE_NO
Definition: enum_quda.h:508
@ QUDA_GHOST_EXCHANGE_INVALID
Definition: enum_quda.h:511
@ QUDA_GHOST_EXCHANGE_PAD
Definition: enum_quda.h:509
enum QudaMassNormalization_s QudaMassNormalization
enum QudaBLASDataType_s QudaBLASDataType
enum QudaFieldCreate_s QudaFieldCreate
enum QudaExtLibType_s QudaExtLibType
enum QudaEigType_s QudaEigType
QudaGaugeFixed_s
Definition: enum_quda.h:79
@ QUDA_GAUGE_FIXED_NO
Definition: enum_quda.h:80
@ QUDA_GAUGE_FIXED_INVALID
Definition: enum_quda.h:82
@ QUDA_GAUGE_FIXED_YES
Definition: enum_quda.h:81
QudaMatPCType_s
Definition: enum_quda.h:215
@ QUDA_MATPC_ODD_ODD_ASYMMETRIC
Definition: enum_quda.h:219
@ QUDA_MATPC_EVEN_EVEN_ASYMMETRIC
Definition: enum_quda.h:218
@ QUDA_MATPC_ODD_ODD
Definition: enum_quda.h:217
@ QUDA_MATPC_EVEN_EVEN
Definition: enum_quda.h:216
@ QUDA_MATPC_INVALID
Definition: enum_quda.h:220
enum QudaMatPCType_s QudaMatPCType
enum QudaSetupType_s QudaSetupType
enum QudaComputeNullVector_s QudaComputeNullVector
QudaBLASDataOrder_s
Definition: enum_quda.h:484
@ QUDA_BLAS_DATAORDER_COL
Definition: enum_quda.h:486
@ QUDA_BLAS_DATAORDER_ROW
Definition: enum_quda.h:485
@ QUDA_BLAS_DATAORDER_INVALID
Definition: enum_quda.h:487
enum QudaResidualType_s QudaResidualType
enum QudaTune_s QudaTune
QudaInverterType_s
Definition: enum_quda.h:106
@ QUDA_CA_CGNE_INVERTER
Definition: enum_quda.h:130
@ QUDA_GCR_INVERTER
Definition: enum_quda.h:109
@ QUDA_CGNE_INVERTER
Definition: enum_quda.h:124
@ QUDA_GMRESDR_PROJ_INVERTER
Definition: enum_quda.h:119
@ QUDA_INC_EIGCG_INVERTER
Definition: enum_quda.h:117
@ QUDA_FGMRESDR_INVERTER
Definition: enum_quda.h:121
@ QUDA_MR_INVERTER
Definition: enum_quda.h:110
@ QUDA_CA_CG_INVERTER
Definition: enum_quda.h:129
@ QUDA_MPCG_INVERTER
Definition: enum_quda.h:115
@ QUDA_CG3NE_INVERTER
Definition: enum_quda.h:127
@ QUDA_BICGSTABL_INVERTER
Definition: enum_quda.h:123
@ QUDA_CGNR_INVERTER
Definition: enum_quda.h:125
@ QUDA_GMRESDR_SH_INVERTER
Definition: enum_quda.h:120
@ QUDA_CG3NR_INVERTER
Definition: enum_quda.h:128
@ QUDA_PCG_INVERTER
Definition: enum_quda.h:114
@ QUDA_CA_GCR_INVERTER
Definition: enum_quda.h:132
@ QUDA_SD_INVERTER
Definition: enum_quda.h:112
@ QUDA_MPBICGSTAB_INVERTER
Definition: enum_quda.h:111
@ QUDA_CG_INVERTER
Definition: enum_quda.h:107
@ QUDA_CA_CGNR_INVERTER
Definition: enum_quda.h:131
@ QUDA_INVALID_INVERTER
Definition: enum_quda.h:133
@ QUDA_CG3_INVERTER
Definition: enum_quda.h:126
@ QUDA_EIGCG_INVERTER
Definition: enum_quda.h:116
@ QUDA_XSD_INVERTER
Definition: enum_quda.h:113
@ QUDA_MG_INVERTER
Definition: enum_quda.h:122
@ QUDA_BICGSTAB_INVERTER
Definition: enum_quda.h:108
@ QUDA_GMRESDR_INVERTER
Definition: enum_quda.h:118
QudaTune_s
Definition: enum_quda.h:272
@ QUDA_TUNE_YES
Definition: enum_quda.h:272
@ QUDA_TUNE_INVALID
Definition: enum_quda.h:272
@ QUDA_TUNE_NO
Definition: enum_quda.h:272
QudaPreserveSource_s
Definition: enum_quda.h:237
@ QUDA_PRESERVE_SOURCE_NO
Definition: enum_quda.h:238
@ QUDA_PRESERVE_SOURCE_YES
Definition: enum_quda.h:239
@ QUDA_PRESERVE_SOURCE_INVALID
Definition: enum_quda.h:240
enum QudaGhostExchange_s QudaGhostExchange
QudaTwistGamma5Type_s
Definition: enum_quda.h:422
@ QUDA_TWIST_GAMMA5_INVERSE
Definition: enum_quda.h:424
@ QUDA_TWIST_GAMMA5_DIRECT
Definition: enum_quda.h:423
@ QUDA_TWIST_GAMMA5_INVALID
Definition: enum_quda.h:425
QudaSiteOrder_s
Definition: enum_quda.h:338
@ QUDA_EVEN_ODD_SITE_ORDER
Definition: enum_quda.h:340
@ QUDA_LEXICOGRAPHIC_SITE_ORDER
Definition: enum_quda.h:339
@ QUDA_INVALID_SITE_ORDER
Definition: enum_quda.h:342
@ QUDA_ODD_EVEN_SITE_ORDER
Definition: enum_quda.h:341
enum QudaMemoryType_s QudaMemoryType
QudaBLASOperation_s
Definition: enum_quda.h:469
@ QUDA_BLAS_OP_C
Definition: enum_quda.h:472
@ QUDA_BLAS_OP_N
Definition: enum_quda.h:470
@ QUDA_BLAS_OP_T
Definition: enum_quda.h:471
@ QUDA_BLAS_OP_INVALID
Definition: enum_quda.h:473
enum QudaReconstructType_s QudaReconstructType
QudaSolutionType_s
Definition: enum_quda.h:156
@ QUDA_MATPCDAG_MATPC_SHIFT_SOLUTION
Definition: enum_quda.h:162
@ QUDA_MATPC_DAG_SOLUTION
Definition: enum_quda.h:160
@ QUDA_MATPC_SOLUTION
Definition: enum_quda.h:159
@ QUDA_MATDAG_MAT_SOLUTION
Definition: enum_quda.h:158
@ QUDA_MATPCDAG_MATPC_SOLUTION
Definition: enum_quda.h:161
@ QUDA_MAT_SOLUTION
Definition: enum_quda.h:157
@ QUDA_INVALID_SOLUTION
Definition: enum_quda.h:163
QudaPrecision_s
Definition: enum_quda.h:61
@ QUDA_DOUBLE_PRECISION
Definition: enum_quda.h:65
@ QUDA_SINGLE_PRECISION
Definition: enum_quda.h:64
@ QUDA_INVALID_PRECISION
Definition: enum_quda.h:66
@ QUDA_QUARTER_PRECISION
Definition: enum_quda.h:62
@ QUDA_HALF_PRECISION
Definition: enum_quda.h:63
QudaPreserveDirac_s
Definition: enum_quda.h:274
@ QUDA_PRESERVE_DIRAC_NO
Definition: enum_quda.h:275
@ QUDA_PRESERVE_DIRAC_YES
Definition: enum_quda.h:276
@ QUDA_PRESERVE_DIRAC_INVALID
Definition: enum_quda.h:277
QudaPCType_s
Definition: enum_quda.h:397
@ QUDA_5D_PC
Definition: enum_quda.h:397
@ QUDA_4D_PC
Definition: enum_quda.h:397
@ QUDA_PC_INVALID
Definition: enum_quda.h:397
enum QudaSourceType_s QudaSourceType
QudaSchwarzType_s
Definition: enum_quda.h:186
@ QUDA_ADDITIVE_SCHWARZ
Definition: enum_quda.h:187
@ QUDA_MULTIPLICATIVE_SCHWARZ
Definition: enum_quda.h:188
@ QUDA_INVALID_SCHWARZ
Definition: enum_quda.h:189
QudaGaugeFieldOrder_s
Definition: enum_quda.h:38
@ QUDA_FLOAT2_GAUGE_ORDER
Definition: enum_quda.h:40
@ QUDA_BQCD_GAUGE_ORDER
Definition: enum_quda.h:49
@ QUDA_TIFR_GAUGE_ORDER
Definition: enum_quda.h:50
@ QUDA_FLOAT_GAUGE_ORDER
Definition: enum_quda.h:39
@ QUDA_QDP_GAUGE_ORDER
Definition: enum_quda.h:44
@ QUDA_FLOAT4_GAUGE_ORDER
Definition: enum_quda.h:41
@ QUDA_MILC_SITE_GAUGE_ORDER
Definition: enum_quda.h:48
@ QUDA_CPS_WILSON_GAUGE_ORDER
Definition: enum_quda.h:46
@ QUDA_NATIVE_GAUGE_ORDER
Definition: enum_quda.h:43
@ QUDA_FLOAT8_GAUGE_ORDER
Definition: enum_quda.h:42
@ QUDA_INVALID_GAUGE_ORDER
Definition: enum_quda.h:52
@ QUDA_TIFR_PADDED_GAUGE_ORDER
Definition: enum_quda.h:51
@ QUDA_MILC_GAUGE_ORDER
Definition: enum_quda.h:47
@ QUDA_QDPJIT_GAUGE_ORDER
Definition: enum_quda.h:45
enum QudaCABasis_s QudaCABasis
QudaExtLibType_s
Definition: enum_quda.h:555
@ QUDA_EXTLIB_INVALID
Definition: enum_quda.h:559
@ QUDA_EIGEN_EXTLIB
Definition: enum_quda.h:557
@ QUDA_MAGMA_EXTLIB
Definition: enum_quda.h:558
@ QUDA_CUSOLVE_EXTLIB
Definition: enum_quda.h:556
enum QudaContractType_s QudaContractType
QudaEigSpectrumType_s
Definition: enum_quda.h:146
@ QUDA_SPECTRUM_INVALID
Definition: enum_quda.h:153
@ QUDA_SPECTRUM_LM_EIG
Definition: enum_quda.h:147
@ QUDA_SPECTRUM_SM_EIG
Definition: enum_quda.h:148
@ QUDA_SPECTRUM_LR_EIG
Definition: enum_quda.h:149
@ QUDA_SPECTRUM_SR_EIG
Definition: enum_quda.h:150
@ QUDA_SPECTRUM_SI_EIG
Definition: enum_quda.h:152
@ QUDA_SPECTRUM_LI_EIG
Definition: enum_quda.h:151
enum QudaSchwarzType_s QudaSchwarzType
QudaFieldOrder_s
Definition: enum_quda.h:346
@ QUDA_INVALID_FIELD_ORDER
Definition: enum_quda.h:356
@ QUDA_FLOAT2_FIELD_ORDER
Definition: enum_quda.h:348
@ QUDA_SPACE_COLOR_SPIN_FIELD_ORDER
Definition: enum_quda.h:352
@ QUDA_FLOAT4_FIELD_ORDER
Definition: enum_quda.h:349
@ QUDA_QOP_DOMAIN_WALL_FIELD_ORDER
Definition: enum_quda.h:354
@ QUDA_FLOAT8_FIELD_ORDER
Definition: enum_quda.h:350
@ QUDA_FLOAT_FIELD_ORDER
Definition: enum_quda.h:347
@ QUDA_QDPJIT_FIELD_ORDER
Definition: enum_quda.h:353
@ QUDA_PADDED_SPACE_SPIN_COLOR_FIELD_ORDER
Definition: enum_quda.h:355
@ QUDA_SPACE_SPIN_COLOR_FIELD_ORDER
Definition: enum_quda.h:351
enum QudaVerbosity_s QudaVerbosity
enum QudaDiracFieldOrder_s QudaDiracFieldOrder
enum QudaGammaBasis_s QudaGammaBasis
QudaFieldCreate_s
Definition: enum_quda.h:359
@ QUDA_ZERO_FIELD_CREATE
Definition: enum_quda.h:361
@ QUDA_COPY_FIELD_CREATE
Definition: enum_quda.h:362
@ QUDA_INVALID_FIELD_CREATE
Definition: enum_quda.h:364
@ QUDA_REFERENCE_FIELD_CREATE
Definition: enum_quda.h:363
@ QUDA_NULL_FIELD_CREATE
Definition: enum_quda.h:360
enum QudaSolverNormalization_s QudaSolverNormalization
QudaTwistFlavorType_s
Definition: enum_quda.h:399
@ QUDA_TWIST_SINGLET
Definition: enum_quda.h:400
@ QUDA_TWIST_NO
Definition: enum_quda.h:403
@ QUDA_TWIST_INVALID
Definition: enum_quda.h:404
@ QUDA_TWIST_NONDEG_DOUBLET
Definition: enum_quda.h:401
@ QUDA_TWIST_DEG_DOUBLET
Definition: enum_quda.h:402
QudaSolveType_s
Definition: enum_quda.h:166
@ QUDA_NORMEQ_SOLVE
Definition: enum_quda.h:173
@ QUDA_INVALID_SOLVE
Definition: enum_quda.h:175
@ QUDA_NORMEQ_PC_SOLVE
Definition: enum_quda.h:174
@ QUDA_DIRECT_SOLVE
Definition: enum_quda.h:167
@ QUDA_NORMERR_SOLVE
Definition: enum_quda.h:171
@ QUDA_NORMERR_PC_SOLVE
Definition: enum_quda.h:172
@ QUDA_NORMOP_PC_SOLVE
Definition: enum_quda.h:170
@ QUDA_DIRECT_PC_SOLVE
Definition: enum_quda.h:169
@ QUDA_NORMOP_SOLVE
Definition: enum_quda.h:168
enum QudaParity_s QudaParity
QudaContractType_s
Definition: enum_quda.h:522
@ QUDA_CONTRACT_TYPE_OPEN
Definition: enum_quda.h:523
@ QUDA_CONTRACT_TYPE_INVALID
Definition: enum_quda.h:525
@ QUDA_CONTRACT_TYPE_DR
Definition: enum_quda.h:524
QudaLinkType_s
Definition: enum_quda.h:23
@ QUDA_SU3_LINKS
Definition: enum_quda.h:24
@ QUDA_ASQTAD_MOM_LINKS
Definition: enum_quda.h:33
@ QUDA_ASQTAD_LONG_LINKS
Definition: enum_quda.h:32
@ QUDA_GENERAL_LINKS
Definition: enum_quda.h:25
@ QUDA_COARSE_LINKS
Definition: enum_quda.h:28
@ QUDA_INVALID_LINKS
Definition: enum_quda.h:35
@ QUDA_THREE_LINKS
Definition: enum_quda.h:26
@ QUDA_WILSON_LINKS
Definition: enum_quda.h:30
@ QUDA_MOMENTUM_LINKS
Definition: enum_quda.h:27
@ QUDA_SMEARED_LINKS
Definition: enum_quda.h:29
@ QUDA_ASQTAD_FAT_LINKS
Definition: enum_quda.h:31
@ QUDA_ASQTAD_GENERAL_LINKS
Definition: enum_quda.h:34
enum QudaLinkType_s QudaLinkType
qudaError_t
Definition: enum_quda.h:10
@ QUDA_ERROR_UNINITIALIZED
Definition: enum_quda.h:10
@ QUDA_SUCCESS
Definition: enum_quda.h:10
@ QUDA_ERROR
Definition: enum_quda.h:10
QudaWFlowType_s
Definition: enum_quda.h:548
@ QUDA_WFLOW_TYPE_SYMANZIK
Definition: enum_quda.h:550
@ QUDA_WFLOW_TYPE_INVALID
Definition: enum_quda.h:551
@ QUDA_WFLOW_TYPE_WILSON
Definition: enum_quda.h:549
QudaComputeNullVector_s
Definition: enum_quda.h:440
@ QUDA_COMPUTE_NULL_VECTOR_INVALID
Definition: enum_quda.h:443
@ QUDA_COMPUTE_NULL_VECTOR_NO
Definition: enum_quda.h:441
@ QUDA_COMPUTE_NULL_VECTOR_YES
Definition: enum_quda.h:442
enum QudaPreserveDirac_s QudaPreserveDirac
enum QudaTwistCloverDslashType_s QudaTwistCloverDslashType