akio-tomiya / latticeqcd.jl Goto Github PK
View Code? Open in Web Editor NEWA native Julia code for lattice QCD with dynamical fermions in 4 dimension.
Home Page: https://github.com/akio-tomiya/LatticeQCD.jl
License: MIT License
A native Julia code for lattice QCD with dynamical fermions in 4 dimension.
Home Page: https://github.com/akio-tomiya/LatticeQCD.jl
License: MIT License
@JuliaRegistrator register
This issue is used to trigger TagBot; feel free to unsubscribe.
If you haven't already, you should update your TagBot.yml
to include issue comment triggers.
Please see this post on Discourse for instructions and more details.
If you'd like for me to do this for you, comment TagBot fix
on this issue.
I'll open a PR within a few hours, please be patient!
Hi,
I was looking to play with this package and I encountered an issue with run_wizard()
First of all I have julia v1.9.1
and I have an environment where only LatticeQCD.jl v.1.0.6
has been installed.
Then I start the REPL and run using LatticeQCD; run_wizard()
.
If I keep pressing Enter
using all the default values, the process ends correctly and I can then run run_LQCD("my_parameters.toml")
.
The first problem here is that the wizard ends also explaining that one can run run_LQCD(params_set)
directly and that is not working. There is no variable params_set
in the session.
The second problem arises if I run the wizard in expert mode and I try to setup a pure gauge SU(2) run.
Here is the entire process as I did it, ending with the error:
julia> using LatticeQCD
julia>
julia> run_wizard()
--------------------------------------------------------------------------------
run_wizard
格 格
色 格
色色色 格
子子色色色色色子子子子子格子子子子
色色色 格
色 格
格 格
力 学 LatticeQCD.jl
力力力 学学学
子子力力力力力子子子学学学学学子子
力力力 学学学
力 学
格 格
Welcome to a wizard for Lattice QCD.
We'll get you set up simulation parameters in no time.
--------------------------------------------------------------------------------
If you leave the prompt empty, a default value will be used.
To exit, press Ctrl + c.
Choose wizard mode
simple
> expert
put the name of the parameter file you make [my_parameters.toml]: su2_ym.toml
Input Lattice size, L=(Nx,Ny,Nz,Nt)
Nx ? [4]: 16
Ny ? [4]: 16
Nz ? [4]: 16
Nt ? [4]: 4
Lattice is [16, 16, 16, 4]
Choose a gauge group
SU(3)
> SU(2)
SU(2) will be used
β ? [2.7]: 2.25
Input random seed. [111]: 1
verbose level ? [2]: 2
verbose level = 2
Do you perform only measurements on configurations in a directory? (no update)
> No
Yes
Choose initial configurations
cold start
> hot start
start from a file
start from one instanton (Radius is half of Nx)
Choose a dynamical fermion
> Nothing (quenched approximation)
Wilson Fermion (2-flavor)
Staggered Fermion
Domain-wall Fermion (Experimental)
Choose an update method
> Heatbath
Hybrid Monte Carlo
Use overrelazation method?
> true
false
How many times do you want to do the OR? [3]: 4
Input the number of thermalization steps (no mearurement) [0]: 10
Input the number of total trajectories after the thermalization [101]: 101
Select the measurement methods you want to do:
[press: Enter=toggle, a=all, n=none, d=done, q=abort]
[X] Plaquette
[X] Polyakov_loop
[X] Topological_charge
[ ] Chiral_condensate
[ ] Pion_correlator
[ ] Wilson_loop
> [X] Energy_density
You measure Energy density
How often measure Plaquette loops? [1]: 10
You measure Polyakov loops
How often measure Polyakov loops? [1]: 10
You measure a topological charge
How often measure a topological charge? [1]: 10
You measure Plaquette loops
How often measure Plaquette loops? [1]: 10
base directory for measurements [./measurements]:
directory for measurements in ./measurements/ [Heatbath_L16161604_beta2.25_quenched]:
Perform measurements with the gradient flow?
No
> Yes
---------------------------------------------
---set measurements in gradient flow----------
time step for gradient flow? [0.01]:
How many times do you want to flow gauge fields? [100]: 50
Select the measurement methods you want to do:
[press: Enter=toggle, a=all, n=none, d=done, q=abort]
[X] Plaquette
[X] Polyakov_loop
[X] Topological_charge
[ ] Chiral_condensate
[ ] Pion_correlator
[ ] Wilson_loop
> [X] Energy_density
You measure Polyakov loops
How often measure Polyakov loops? [1]: 10
You measure a topological charge
How often measure a topological charge? [1]: 10
You measure Plaquette loops
How often measure Plaquette loops? [1]: 10
---done for gradient flow----------
---------------------------------------------
log directory [./logs]:
logfile name [Heatbath_L16161604_beta2.25_quenched.txt]:
Choose a configuration format for saving
no save
JLD
ILDG
> Text format (BridgeText)
How often do you save a configuration in file (Save every)? [10]: 100
Saving directory [./confs_Heatbath_L16161604_beta2.25_quenched]:
ERROR: UndefRefError: access to undefined reference
Stacktrace:
[1] getindex
@ ./essentials.jl:13 [inlined]
[2] iterate (repeats 2 times)
@ ./array.jl:893 [inlined]
[3] construct_dict_from_measurement!(x::Dict{String, Any}, value::Vector{QCDMeasurements.Measurement_parameters})
@ LatticeQCD.Parameter_structs ~/.julia/packages/LatticeQCD/x0lbR/src/system/parameter_structs.jl:1094
[4] remove_default_values!(x::Dict{String, Any}, defaultsystem::LatticeQCD.Parameter_structs.Print_Physical_parameters)
@ LatticeQCD.Parameter_structs ~/.julia/packages/LatticeQCD/x0lbR/src/system/parameter_structs.jl:1072
[5] remove_default_values!(x::Dict{Any, Any})
@ LatticeQCD.Parameter_structs ~/.julia/packages/LatticeQCD/x0lbR/src/system/parameter_structs.jl:1115
[6] run_wizard()
@ LatticeQCD.Wizard ~/.julia/packages/LatticeQCD/x0lbR/src/system/wizard.jl:600
[7] top-level scope
@ REPL[6]:1
I tried a couple of times with different "expert" mode configurations and the wizard was never able to terminate successfully.
What is going wrong here?
@JuliaRegistrator register
@JuliaRegistrator register
@JuliaRegistrator register
@JuliaRegistrator register
It looks like the Fortran code you reference is GPL based,which probably means this package has to be GPL as well
@JuliaRegistrator register
Current version supports the gradient flow but it requires further debug.
The scale of flow time does not seems correct.
Debug for flow for a specific action (e.g. Wilson flow) is enough.
Current code does not support fermions in the adjoint representations.
@JuliaRegistrator register
The current code does not support the domain-wall fermion, which
is widely used in lattice QCD.
The code has Wilson fermion and the domain-wall fermion can be realized by
multiple of Wilson fermions.
:P
@JuliaRegistrator register
@JuliaRegistrator register
The current code can calculate pion correlators and the hadron matrix is there.
Reconstruction of hadron correlator is better to implement.
@JuliaRegistrator register
As the title says:
$ julia src/run.jl ~/tmp/LatticeQCD.jl/my_parameters.jl
ERROR: LoadError: SystemError: opening file "/Users/terasaki/tmp/LatticeQCD.jl/Users/terasaki/tmp/LatticeQCD.jl/my_parameters.jl": No such file or directory
Stacktrace:
[1] systemerror(p::String, errno::Int32; extrainfo::Nothing)
@ Base ./error.jl:168
[2] #systemerror#62
@ ./error.jl:167 [inlined]
[3] systemerror
@ ./error.jl:167 [inlined]
[4] open(fname::String; lock::Bool, read::Nothing, write::Nothing, create::Nothing, truncate::Nothing, append::Nothing)
@ Base ./iostream.jl:293
[5] open
@ ./iostream.jl:282 [inlined]
[6] open(f::Base.var"#326#327"{String}, args::String; kwargs::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
@ Base ./io.jl:328
[7] open
@ ./io.jl:328 [inlined]
[8] read
@ ./io.jl:434 [inlined]
[9] _include(mapexpr::Function, mod::Module, _path::String)
@ Base ./loading.jl:1166
[10] include(mod::Module, _path::String)
@ Base ./Base.jl:386
[11] include
@ ~/tmp/LatticeQCD.jl/src/system/mainrun.jl:1 [inlined]
[12] run_LQCD(filenamein::String)
@ Main.LatticeQCD.Mainrun ~/tmp/LatticeQCD.jl/src/system/mainrun.jl:36
[13] runtest
@ ~/tmp/LatticeQCD.jl/src/run.jl:19 [inlined]
[14] top-level scope
@ ./timing.jl:210
in expression starting at /Users/terasaki/tmp/LatticeQCD.jl/src/run.jl:26
This error causes due to these lines
LatticeQCD.jl/src/system/mainrun.jl
Lines 31 to 41 in 63cc791
especially include(pwd()*"/"*filename)
here is my suggestion, that is, just use abspath(filename)
help?> abspath
search: abspath isabspath AbstractPattern AbstractDisplay
abspath(path::AbstractString) -> String
Convert a path to an absolute path by adding the current directory if necessary. Also
normalizes the path as in normpath.
──────────────────────────────────────────────────────────────────────────────────────
abspath(path::AbstractString, paths::AbstractString...) -> String
Convert a set of paths to an absolute path by joining them together and adding the
current directory if necessary. Equivalent to abspath(joinpath(path, paths...)).
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.