Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SU(3) support #44

Open
wants to merge 129 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
129 commits
Select commit Hold shift + click to select a range
4e47f8b
support for the .h5 format for output files. I've set un a test progr…
simone-romiti Jan 19, 2023
4ea620c
I wrote 2 test programs from generating and dumping .h5 files.
simone-romiti Jan 20, 2023
0406900
++ and -- interpolators are now built according to the notation of eq…
simone-romiti Jan 22, 2023
0019846
better format and input file options of the glueball interpolators an…
simone-romiti Jan 22, 2023
82addb6
I wrote a python script that converts the glueball interpolators to a…
simone-romiti Jan 22, 2023
6217422
modified: hadron/glueball.py
simone-romiti Jan 23, 2023
20767b4
modified: CMakeLists.txt
simone-romiti Jan 25, 2023
185da17
written documentation for the glueball.py script and adjusted the doc…
simone-romiti Jan 27, 2023
9f96921
Merge branch 'h5_format' of github.com:urbach/su2 into h5_format
simone-romiti Jan 27, 2023
f090b79
wrong factor in gauge derivative
simone-romiti Jan 27, 2023
7b0a8c5
better theoretical understanding of the missing factor in the gradien…
simone-romiti Jan 27, 2023
a4fc309
accidentally removed factor 2
simone-romiti Jan 27, 2023
5204cf6
check that the loaded gauge configuration is of the correct size.
simone-romiti Jan 30, 2023
0eac4f3
implementing open boundary conditions.
simone-romiti Jan 30, 2023
657d24a
implemented spatial open boundary conditions for the HMC evolution.
simone-romiti Feb 1, 2023
710c391
hmc output: "E*A" problematic to read with `hadron`
simone-romiti Feb 3, 2023
4e3f45d
now the obc condition is the same as in the Tensor Network
simone-romiti Feb 13, 2023
b302683
testing: solved memory leaks with Valgrind. Previous runs unaffected.
simone-romiti Feb 13, 2023
544f06f
support for custom plaquette measure
simone-romiti Feb 14, 2023
05ad9e1
- hmc output.data : plaquette with specified bc
simone-romiti Feb 14, 2023
ccc67c4
DO NOT MERGE
simone-romiti Feb 15, 2023
279dad4
DO NOT MERGE
simone-romiti Feb 16, 2023
741b8ce
implemented the adjointsu3 class
simone-romiti Feb 16, 2023
d760027
debugging
simone-romiti Feb 16, 2023
b7548d0
DO NOT MERGE
simone-romiti Feb 17, 2023
ee97d55
fact_k missing for v vector
simone-romiti Feb 17, 2023
afe37df
to do: check line 78 of exp_gauge.cc
simone-romiti Feb 17, 2023
2dd2f44
still debugging, get_deriv not implemented yet
simone-romiti Feb 18, 2023
4f50c3c
DO NOT MERGE
simone-romiti Feb 21, 2023
7a63e5a
better file structure + added some comments about the implementation
simone-romiti Feb 21, 2023
40add1f
DO NOT MERGE
simone-romiti Feb 21, 2023
a544b9b
clearer definition and use of accum types
simone-romiti Feb 24, 2023
1ff398d
fixed get_deriv
simone-romiti Feb 24, 2023
29fa511
plaquette measure: spatial only supported
simone-romiti Feb 25, 2023
3610ba5
Merge pull request #43 from urbach/su3
simone-romiti Mar 7, 2023
efc788e
Merge pull request #45 from urbach/boundary_conditions
simone-romiti Mar 7, 2023
59b9ecc
solved https://github.com/urbach/su2/issues/42
simone-romiti Mar 7, 2023
ad29bc1
Revert "back to su3"
simone-romiti Mar 7, 2023
de32c77
Merge pull request #46 from urbach/revert-45-boundary_conditions
simone-romiti Mar 7, 2023
50934d1
merge to boundary_conditions overwrote the support for the spatial pl…
simone-romiti Mar 10, 2023
a5978c7
consistent use of nstep in MCMC and offline measurements runs
simone-romiti Mar 15, 2023
b892f3d
patch: potential omeasurements were not saved
simone-romiti May 19, 2023
39a69d0
Additional patch for potential: filename is set once before measureme…
christianegross May 22, 2023
c8e531d
Merge pull request #48 from christianegross/su3
simone-romiti May 22, 2023
017989d
added script for measuring the anisotropy via gradient flow
christianegross May 24, 2023
948a4f5
Merge branch 'su3' of github.com:christianegross/su2 into su3
christianegross May 24, 2023
c493c08
R script analysis: new script for fit xiyey
simone-romiti Jun 9, 2023
012256d
Merge branch 'su3' of https://github.com/urbach/su2 into su3
simone-romiti Jun 9, 2023
8a645d4
script for finding x0 given y0: f(x0) = y0
simone-romiti Jul 19, 2023
3362602
R routine for fitting a function f: R^n \to R with errors on both x a…
simone-romiti Jul 21, 2023
9a0d296
(see previous commit)
simone-romiti Jul 21, 2023
c4fec71
Merge branch 'su3' of github.com:urbach/su2 into su3
christianegross Jul 24, 2023
0b62e95
updated documentation: omeas plaquette
simone-romiti Jul 24, 2023
9941bf3
gradient flow measure: using subdirectory
simone-romiti Aug 3, 2023
7d230b1
small change in test:
simone-romiti Aug 3, 2023
4a42740
formatting the gradient flow omeas in the hadron format
simone-romiti Aug 8, 2023
8a6c6ca
subdir parameter for the gradient flow online measurements
simone-romiti Aug 8, 2023
0b72d91
Merge branch 'su3' of https://github.com/urbach/su2 into su3
simone-romiti Aug 8, 2023
07b31e0
Merge branch 'su3' of https://github.com/urbach/su2 into su3
simone-romiti Aug 8, 2023
9a55125
python scripts in the hadron folder
simone-romiti Sep 25, 2023
11f104d
testing the routine:
simone-romiti Sep 25, 2023
3a085b3
fixed a bug (multivariable case)
simone-romiti Sep 25, 2023
35bbbbf
fixed bug: output.data was overwritten when restarting a run.
simone-romiti Oct 18, 2023
a43c86c
creation of output.data is done only for MC runs
simone-romiti Oct 18, 2023
ad5010a
Merge branch 'su3' of github.com:urbach/su2 into su3
simone-romiti Oct 18, 2023
64eb89e
printing absolute path when loading configuration
simone-romiti Nov 6, 2023
9c74eb2
implementing restart condition for omeas
simone-romiti Nov 6, 2023
4874392
implemented restart condtion for omeas
simone-romiti Nov 6, 2023
fe1433e
first implementation of heatbath+overrelaxation. checking against met…
simone-romiti Jan 10, 2024
7d81e3f
Merge branch 'su3' of github.com:urbach/su2 into su3
christianegross Jan 10, 2024
ba1ed66
corrected typo in heatbath: normalization constant "A"
simone-romiti Jan 11, 2024
403d7d0
minor changes, still trying to match heatbath+overrelax. with metropolis
simone-romiti Jan 11, 2024
c55be68
cleaner omp parallel for in heatbath
simone-romiti Jan 11, 2024
96cc7fd
solved the mismatch with metropolis
simone-romiti Jan 11, 2024
6e10c21
seeding of engines before sweep changed:
christianegross Jan 12, 2024
f6dfabb
printing the acceptance rates for the heatbath+overrelaxation
simone-romiti Jan 12, 2024
c246431
conceptually simpler seed initialization for each thread
simone-romiti Jan 12, 2024
7942ca9
implemented Hattori-Nakajima method for heathbath and overrelaxation:…
simone-romiti Jan 12, 2024
18aa91f
Revert "seeding of engines before sweep changed:"
christianegross Jan 12, 2024
d517a33
Merge branch 'su3_heatbath_overrelaxation' of github.com:urbach/su2 i…
christianegross Jan 12, 2024
f19aba2
corrected heatbath sweep: generate new links until the proposal is ac…
christianegross Jan 15, 2024
da7c0b2
added possibility to do several overrelaxation sweeps per heatbath sweep
christianegross Jan 15, 2024
34a456c
also calculate temporal acceptance rate
christianegross Jan 15, 2024
f38725b
fixed convention for normalizing Re(Tr(P_{\mu \nu})) in the output
simone-romiti Jan 19, 2024
26ee6a5
new feature: custom number of heatbath sweeps
simone-romiti Jan 19, 2024
61918f2
fixed seeding of engines for multiple heatbath sweeps: now new seeds …
christianegross Jan 22, 2024
f0b1b71
fix normalisation of acceptance rate for heatbath
christianegross Jan 22, 2024
5d6a6f9
n_heatbath > 1: simpler initialization of the seeds
simone-romiti Jan 23, 2024
6639a19
fixed call to do_heatbath()
simone-romiti Jan 23, 2024
c28f748
minor change
simone-romiti Jan 23, 2024
4d50985
implemented possibility of additional temporal-only heatbath and over…
christianegross Jan 24, 2024
7bfd29b
seeds reproducible independent of number of threads.
christianegross Jan 24, 2024
ca815bd
remove parameter N_hit from heatbath
christianegross Jan 25, 2024
0905817
add possibility to print out average change of link in heatbath
christianegross Jan 26, 2024
ed94ce5
save mean of absolute value of link change, not mean of link change i…
christianegross Jan 26, 2024
c32f5ec
written documentation in quarto
simone-romiti Jan 30, 2024
eb9b197
doumentation: added references to index
simone-romiti Jan 30, 2024
94c284c
scripts for reading Wilson loops and measuring r0
simone-romiti Jan 31, 2024
9440659
ported uwerr primary from hadron
simone-romiti Jan 31, 2024
93624fa
bootstrap samples routines
simone-romiti Feb 1, 2024
abb4adb
heatbath and overrelaxation require updates of all links, not just te…
simone-romiti Feb 1, 2024
dc83db4
fixed typo in output line
simone-romiti Feb 1, 2024
ef7e071
remnants of (wrong) temporal-only updates
simone-romiti Feb 1, 2024
bf4ca7f
Merge branch 'su3_heatbath_overrelaxation' of github.com:urbach/su2 i…
christianegross Feb 1, 2024
b153e84
remove some merge conflicts
christianegross Feb 1, 2024
cd7e4f6
more sensible restart condition syntax
simone-romiti Feb 1, 2024
d80318f
Merge branch 'su3_heatbath_overrelaxation' of github.com:urbach/su2 i…
christianegross Feb 2, 2024
bac9762
fix additional leftover from merge conflict
christianegross Feb 2, 2024
28dee2d
in metropolis and heatbath, set maximum number of threads to T.
christianegross Feb 2, 2024
aea2b64
Merge pull request #50 from urbach/su3_heatbath_overrelaxation
simone-romiti Feb 2, 2024
83808e1
testing the r0 analysis scripts
simone-romiti Feb 10, 2024
3d8dc34
bootstrap sampling routine
simone-romiti Feb 10, 2024
36cda94
nicer plots
simone-romiti Feb 11, 2024
d60140c
experiments with staggered Dirac operator
simone-romiti Feb 13, 2024
a59f230
working test with det(D) and ublas
simone-romiti Feb 13, 2024
81ba2b8
typo in fit of the effective curve
simone-romiti Feb 14, 2024
90ddaa0
Merge branch 'su3' of https://github.com/urbach/su2 into su3
simone-romiti Feb 14, 2024
e3dff92
jackknife sampling routines
simone-romiti Feb 14, 2024
c1c4eff
jackknife variance
simone-romiti Feb 14, 2024
a04f776
sampling scripts: creating uwerr output directory if not existing
simone-romiti Feb 23, 2024
398430e
support for cosh and sinh in eff. mass scripts
simone-romiti Mar 12, 2024
5fb012f
effective mass with backward signal
simone-romiti Mar 28, 2024
aa33d08
fatal error outside namespace
simone-romiti Apr 4, 2024
7bf1d12
new scripts for the analysis
simone-romiti Apr 9, 2024
4a418e2
analysis and gevp
simone-romiti Apr 10, 2024
05f3432
uncorrelated bts sampling in 1 line of code
simone-romiti Apr 11, 2024
6843e5d
fixing error with even odd sites
simone-romiti Apr 15, 2024
fd1b1cd
Merge branch 'su3' of github.com:urbach/su2 into su3
christianegross Aug 28, 2024
0bcdb4b
measurements for potential: reduce number of necessary file accesses.
christianegross Sep 4, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 10 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -27,12 +27,15 @@
*.app
# emacs
*~
*#*#
# others
*.dat
*.json
core
su2
su2hmc
# python cache files
*__pycache__*

# non-text files from the documentation
*.Rhistory
Expand All @@ -41,4 +44,10 @@ su2hmc
.vscode/*

# build directories
build*
build*

## documentation
doc/.quarto
doc/_book
doc/_freeze
doc/*.html
45 changes: 42 additions & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ configure_file(

include_directories(${CMAKE_SOURCE_DIR}/)
include_directories(${CMAKE_SOURCE_DIR}/include/)
include_directories(${CMAKE_SOURCE_DIR}/fermions/)
include_directories(${CMAKE_BINARY_DIR}/generated/)


Expand All @@ -51,7 +52,6 @@ configure_file(
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS} -D_USE_OMP_")

find_package(yaml-cpp)

include_directories(${YAML_CPP_INCLUDE_DIR} ${YAML_CPP_INCLUDE_DIR}/yaml-cpp/)

find_package(xtl)
Expand All @@ -60,6 +60,13 @@ configure_file(
find_package(xtensor)
include_directories(${xtensor_INCLUDE_DIRS} ${xtensor_INCLUDE_DIRS}/xtensor/)


if(${HIGHFIVE_FORMAT})
find_package(HighFive REQUIRED)
endif()

find_package (Eigen3 3.3 REQUIRED NO_MODULE)

# We could just have two `add_executable` blocks listing almost all source
# files. However, CMake would then compile the source files twice, once for
# each executable. The rationale is that different flags can be used for
Expand All @@ -84,30 +91,62 @@ endif()
set(${CMAKE_BINARY_DIR} ${CMAKE_INSTALL_PREFIX}/bin/)
add_executable(u1-main main-u1.cpp)
add_executable(su2-main main-su2.cpp)
add_executable(su3-main main-su3.cpp)

add_executable(su2-kramers kramers.cc)
add_executable(test-groups test.cc)
add_executable(scaling scaling.cc)
add_executable(try tryreduce.cc)

set(test_progs "links" "smearing" "yaml" "dirac")

if(${HIGHFIVE_FORMAT})
set(test_progs ${test_progs} "h5-gen" "h5-dump")
endif()

set(test_progs_fullname "")
foreach(target ${test_progs})
add_executable(test-${target}.exe test/${target}.cpp)
list(APPEND test_progs_fullname test-${target}.exe) # now FOO="a;b"
endforeach(target)


target_link_libraries(test-yaml.exe ${YAML_CPP_LIBRARIES})

foreach(target ${test_progs_fullname})
if(${HIGHFIVE_FORMAT})
target_link_libraries(${target} HighFive)
endif()
endforeach(target)


target_link_directories(${CMAKE_PROJECT_NAME} PUBLIC ${YAML_CPP_LIBRARY_DIR})

foreach(target u1-main su2-main su2-kramers test-groups scaling try)
foreach(target u1-main su2-main su3-main su2-kramers test-groups scaling try ${test_progs_fullname})
target_link_libraries(${target} su2 ${YAML_CPP_LIBRARIES})
target_link_libraries(${target} su2 ${YAML_CPP_LIBRARIES})

if(Boost_FOUND)
target_link_libraries(${target} su2 ${Boost_LIBRARIES})
else()
target_link_libraries(${target} su2 "-lboost_program_options -lboost_filesystem -lboost_system")
endif()

target_link_libraries (${target} Eigen3::Eigen)

endforeach(target)

# installing

install(TARGETS ${PROJECT_NAME}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
)
install(TARGETS u1-main su2-main)
install(TARGETS u1-main su2-main su3-main)
install(TARGETS su2-kramers test-groups scaling try)

# tests

foreach(target ${test_progs})
install(TARGETS test-${target}.exe LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
endforeach(target)

Loading