Skip to content
/ qex Public

Quantum EXpressions lattice field theory framework

License

Notifications You must be signed in to change notification settings

jcosborn/qex

Repository files navigation

QEX: Quantum EXpressions lattice field theory framework

QEX is a high-level framework for lattice field operations written in the language Nim.

It provides optimized lattice field operations, including SIMD support, for CPU architectures (native GPU support is currently experimental). Since Nim compiles to native C/C++, directly calling any C/C++ lattice code or library from QEX is relatively easy to do.

Some simple code examples are here ex0.nim ex1.nim.

It currently supports

  • U(1), SU(2..4) gauge fields in any dimension
  • SciDAC I/O
  • Gauge fixing
  • Staggered solver and forces (Asqtad, HISQ, nHYP)
  • Wilson solver (no clover yet)
  • Interface for Chroma, Grid, QUDA interoperability

Installation guide: INSTALL.md

Build guide: BUILD.md

Further examples: