-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathREADME
79 lines (65 loc) · 2.43 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# QHMC (FUEL)
James C. Osborn
QHMC is an application for Lattice Field Theory using the Lua
scripting language on top of USQCD SciDAC libraries.
It is also commonly referred to by the name FUEL
(Framework for Unified Evolution of Lattices).
Though originally targeted for configuration generation,
it now has fairly extensive analysis capabilities.
The main website is [here](http://jcosborn.github.io/qhmc).
## Quick Build Instructions
QHMC uses autoconf and follows similar conventions to the rest of the
[USQCD SciDAC libraries](http://usqcd-software.github.io).
You will first need to install its dependencies:
[QMP](http://usqcd-software.github.io/qmp),
[QIO](http://usqcd-software.github.io/qio),
[QLA](http://usqcd-software.github.io/qla),
[QDP](http://usqcd-software.github.io/qdp), and
[QOPQDP](http://usqcd-software.github.io/qopqdp).
The recommended versions of these libraries are
* qmp-2.5.0
* qio-2.4.1
* qla-1.9.0
* qdp-1.11.0
* qopqdp-0.20.0
Source tarballs for these libraries and QHMC are available
[here](http://usqcd-software.github.io/downloads).
The [qinstall](https://github.com/usqcd-software/qinstall)
script provides a convienent way to install these libraries
and QHMC.
An example configure command for QHMC is:
```
/home/osborn/lqcd/src/qhmc-0.1.4/configure \
--prefix=/home/osborn/lqcd/install/qhmc-0.1.4 \
--with-qmp=/home/osborn/lqcd/install/qmp \
--with-qio=/home/osborn/lqcd/install/qio \
--with-qla=/home/osborn/lqcd/install/qla \
--with-qdp=/home/osborn/lqcd/install/qdp \
--with-qopqdp=/home/osborn/lqcd/install/qopqdp \
--enable-nc=all \
--enable-colors=n \
CFLAGS="-Wall -std=gnu99 -O3 -g -DQDP_PROFILE"
```
CC will default to the same as used by QMP and can be overriden.
The "--enable-nc=" flag should match what was used to compile QOPQDP.
The default is "all".
The "--enable-colors=" flag is used to force all fields to have the
specified color at compile time. This may be faster in some cases,
but can prevent using any code that uses multiple Nc. The allowed
values are 1,2,3, and n where "n" specifies that the fields can have
any Nc and can be specified at runtime. This is the default.
## Directory structure
```
bin
where the final qhmc executable is built
examples
some random, possibly old, examples
include
headers for Lua bindings in lib directory
lib
Lua bindings for libraries (and the Lua source itself)
lua
Lua scripts for running configuration generation and analysis
test
regression tests
```