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

run_wizard() ends with error #50

Open
erinaldi opened this issue Oct 10, 2023 · 3 comments
Open

run_wizard() ends with error #50

erinaldi opened this issue Oct 10, 2023 · 3 comments

Comments

@erinaldi
Copy link

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?

@erinaldi
Copy link
Author

If I repeat the process without Gradient Flow measurements (select No at that step), the wizard ends successfully creating an input file.

Moreover, there is no option to choose a different gauge action for Yang-Mills while the README states that any action is supported (e.g. Symanzik).

@akio-tomiya
Copy link
Owner

akio-tomiya commented Oct 11, 2023 via email

@cometscome
Copy link
Collaborator

I fixed run_wizard().
In the previous version, 1.0.6, has the bug for determining a parameter for the energy density measurement in the gradient flow. Now in v1.0.7, I think the bug was removed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants