Code Monkey home page Code Monkey logo

latticeqcd.jl's People

Contributors

akio-tomiya avatar cometscome avatar terasakisatoshi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

latticeqcd.jl's Issues

TagBot trigger issue

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!

run_wizard() ends with error

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?

License issue

It looks like the Fortran code you reference is GPL based,which probably means this package has to be GPL as well

Debug for gradient flow for a generic actions

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.

Adjoint fermions

Current code does not support fermions in the adjoint representations.

Domain-wall fermions

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.

`julia src/run.jl PARAMETER_FILE ` fails when `PARAMETER_FILE` is a absolute path

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

function run_LQCD(filenamein::String)
#if isdemo
# params_set = Params_set(Demo.system,Demo.actions,Demo.md,Demo.cg,Demo.wilson,Demo.staggered,Demo.measurement)
#else
filename = filenamein
include(pwd()*"/"*filename)
params_set = Params_set(system,actions,md,cg,wilson,staggered,measurement)
#end
plaq = run_LQCD(params_set)
end

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...)).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.