Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
F
FerFlow.jl
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Fernando Pérez Panadero
FerFlow.jl
Commits
7192a036
Commit
7192a036
authored
May 21, 2024
by
Fernando Pérez Panadero
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
First attempt for OBC
parent
8d880e20
Changes
5
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
27 additions
and
21 deletions
+27
-21
input/FerFlow.in
input/FerFlow.in
+13
-11
src/io.jl
src/io.jl
+3
-3
src/mc.jl
src/mc.jl
+1
-1
src/meas.jl
src/meas.jl
+4
-2
src/utils.jl
src/utils.jl
+6
-4
No files found.
input/FerFlow.in
View file @
7192a036
...
@@ -3,24 +3,26 @@ user = "Lattice_user"
...
@@ -3,24 +3,26 @@ user = "Lattice_user"
name = "Run1L32"
name = "Run1L32"
[Space]
[Space]
bc = OPEN # Either OPEN, PERIODIC, SF_AFWB or SF_ORBI
size = [32,32,32,32]
size = [32,32,32,32]
blocks = [4,4,4,4]
blocks = [4,4,4,4]
[HMC]
[HMC]
nth = 5000
nth = 5000
beta = 6.0
beta = 6.0
c0 = 1.0
cG = 1.0
dmeas = 5
dmeas = 5
eps = 0.01
eps = 0.01
ns = 30
ns = 30
[Fermion]
[Fermion]
beta = 6.0
kappa = 0.1348
kappa = 0.1348
theta = 0.0
theta = 0.0
theta_t= 3.1415926535897
theta_t
= 3.1415926535897
csw = 1.76923076923077
csw = 1.76923076923077
ct = 9.8718528389891003e-01
ct = 9.8718528389891003e-01
Cfl = 0.5734
tsource = 16
[Measurements]
[Measurements]
N_noise = 12
N_noise = 12
...
...
src/io.jl
View file @
7192a036
...
@@ -55,9 +55,9 @@ Stores in global variables the needed structures, i.e. lp, gp, dpar, dws, ymws
...
@@ -55,9 +55,9 @@ Stores in global variables the needed structures, i.e. lp, gp, dpar, dws, ymws
function
load_structs
()
function
load_structs
()
CUDA
.
device!
(
parsed_args
[
"G"
])
CUDA
.
device!
(
parsed_args
[
"G"
])
global
lp
=
SpaceParm
{
4
}(
tuple
(
params
[
"Space"
][
"size"
]
...
),
tuple
(
params
[
"Space"
][
"blocks"
]
...
),
0
,
(
0
,
0
,
0
,
0
,
0
,
0
))
global
lp
=
SpaceParm
{
4
}(
tuple
(
params
[
"Space"
][
"size"
]
...
),
tuple
(
params
[
"Space"
][
"blocks"
]
...
),
"BC_"
*
params
[
"Space"
][
"bc"
]
,
(
0
,
0
,
0
,
0
,
0
,
0
))
global
gp
=
GaugeParm
{
Float64
}(
SU3
{
Float64
},
params
[
"
Fermion"
][
"beta"
],
1.0
,(
0.0
,
0.0
),(
0.0
,
0.0
),
lp
.
iL
);
global
gp
=
GaugeParm
{
Float64
}(
SU3
{
Float64
},
params
[
"
HMC"
][
"beta"
],
params
[
"HMC"
][
"c0"
],(
params
[
"HMC"
][
"cG"
]
,
0.0
),(
0.0
,
0.0
),
lp
.
iL
);
global
dpar
=
DiracParam
{
Float64
}(
SU3fund
,(
1
/
(
2
*
params
[
"Fermion"
][
"kappa"
]))
-
4
,
params
[
"Fermion"
][
"csw"
],
ntuple
(
i
->
exp
(((
i!
=
4
)
*
im
*
params
[
"Fermion"
][
"theta"
]
/
lp
.
iL
[
i
])
+
((
i
==
4
)
*
im
*
params
[
"Fermion"
][
"theta_t"
]
/
lp
.
iL
[
i
])),
4
),
1.0
);
global
dpar
=
DiracParam
{
Float64
}(
SU3fund
,(
1
/
(
2
*
params
[
"Fermion"
][
"kappa"
]))
-
4
,
params
[
"Fermion"
][
"csw"
],
ntuple
(
i
->
exp
(((
i!
=
4
)
*
im
*
params
[
"Fermion"
][
"theta"
]
/
lp
.
iL
[
i
])
+
((
i
==
4
)
*
im
*
params
[
"Fermion"
][
"theta_t"
]
/
lp
.
iL
[
i
])),
4
),
0.0
,
params
[
"Fermion"
][
"ct"
]
);
global
dws
=
DiracWorkspace
(
SU3fund
,
Float64
,
lp
);
global
dws
=
DiracWorkspace
(
SU3fund
,
Float64
,
lp
);
global
ymws
=
YMworkspace
(
SU3
,
Float64
,
lp
);
global
ymws
=
YMworkspace
(
SU3
,
Float64
,
lp
);
global
int
=
wfl_rk3
(
Float64
,
0.1
,
1.0
)
global
int
=
wfl_rk3
(
Float64
,
0.1
,
1.0
)
...
...
src/mc.jl
View file @
7192a036
...
@@ -91,7 +91,7 @@ function load_gauge_field()
...
@@ -91,7 +91,7 @@ function load_gauge_field()
global
U
,
_
=
read_cnfg
(
CONFIG_LIST
[
MCid
])
global
U
,
_
=
read_cnfg
(
CONFIG_LIST
[
MCid
])
else
else
println
(
log_file
,
"
\n
Reading gauge field with CERN convention: "
,
CONFIG_LIST
[
MCid
],
"..."
)
println
(
log_file
,
"
\n
Reading gauge field with CERN convention: "
,
CONFIG_LIST
[
MCid
],
"..."
)
global
U
=
read_cnfg_cern
(
CONFIG_LIST
[
MCid
],
lp
)
global
U
=
import_cern64
(
CONFIG_LIST
[
MCid
],
0
,
lp
,
log
=
false
)
end
end
println
(
log_file
,
"Updated to Gauge configuration n"
*
string
(
MCid
))
println
(
log_file
,
"Updated to Gauge configuration n"
*
string
(
MCid
))
...
...
src/meas.jl
View file @
7192a036
...
@@ -39,14 +39,16 @@ function two_pt()
...
@@ -39,14 +39,16 @@ function two_pt()
println
(
log_file
,
"Measuring 2pt..."
)
println
(
log_file
,
"Measuring 2pt..."
)
flush
(
log_file
)
flush
(
log_file
)
Eoft
[
1
]
=
Eoft_plaq
(
U
,
gp
,
lp
,
ymws
)
:
nothing
for
noi
in
1
:
N_noise
for
noi
in
1
:
N_noise
propagator!
(
psi
,
U
,
dpar
,
dws
,
lp
,
params
[
"Measurements"
][
"maxiter"
],
params
[
"Measurements"
][
"tolerance"
],
1
)
propagator!
(
psi
,
U
,
dpar
,
dws
,
lp
,
params
[
"Measurements"
][
"maxiter"
],
params
[
"Measurements"
][
"tolerance"
],
params
[
"Fermion"
][
"tsource"
]
)
pp_density
.=
Array
(
norm2
.
(
psi
))
pp_density
.=
Array
(
norm2
.
(
psi
))
ap_density
.=
Array
(
dot
.
(
psi
,
dmul
.
(
Gamma
{
4
},
psi
)))
ap_density
.=
Array
(
dot
.
(
psi
,
dmul
.
(
Gamma
{
4
},
psi
)))
noi
==
1
?
Eoft
[
1
]
=
Eoft_plaq
(
U
,
gp
,
lp
,
ymws
)
:
nothing
pp_corr_t0
[
:
,
noi
]
.=
zero
(
Float64
)
pp_corr_t0
[
:
,
noi
]
.=
zero
(
Float64
)
ap_corr_t0
[
:
,
noi
]
.=
zero
(
ComplexF64
)
ap_corr_t0
[
:
,
noi
]
.=
zero
(
ComplexF64
)
...
...
src/utils.jl
View file @
7192a036
...
@@ -32,6 +32,7 @@ function read_ff(name::String)
...
@@ -32,6 +32,7 @@ function read_ff(name::String)
TvecC
=
Vector
{
ComplexF64
}(
undef
,
iL
[
4
]);
TvecC
=
Vector
{
ComplexF64
}(
undef
,
iL
[
4
]);
CN
=
Vector
{
ComplexF64
}(
undef
,
1
);
CN
=
Vector
{
ComplexF64
}(
undef
,
1
);
RN
=
Vector
{
Float64
}(
undef
,
1
);
RN
=
Vector
{
Float64
}(
undef
,
1
);
ET
=
Vector
{
ComplexF64
}(
undef
,
nflow
+
1
);
pp_corr
=
Array
{
Float64
}(
undef
,
1
,
iL
[
4
],
N_noise
);
pp_corr
=
Array
{
Float64
}(
undef
,
1
,
iL
[
4
],
N_noise
);
ap_corr
=
Array
{
ComplexF64
}(
undef
,
1
,
iL
[
4
],
N_noise
);
ap_corr
=
Array
{
ComplexF64
}(
undef
,
1
,
iL
[
4
],
N_noise
);
...
@@ -40,7 +41,7 @@ function read_ff(name::String)
...
@@ -40,7 +41,7 @@ function read_ff(name::String)
Sigma
=
Array
{
ComplexF64
}(
undef
,
1
,
N_noise
,
nflow
);
Sigma
=
Array
{
ComplexF64
}(
undef
,
1
,
N_noise
,
nflow
);
Phat_t
=
Array
{
Float64
}(
undef
,
1
,
N_noise
,
nflow
);
Phat_t
=
Array
{
Float64
}(
undef
,
1
,
N_noise
,
nflow
);
Sigma_cfl
=
Array
{
ComplexF64
}(
undef
,
1
,
N_noise
,
nflow
);
Sigma_cfl
=
Array
{
ComplexF64
}(
undef
,
1
,
N_noise
,
nflow
);
Eoft
=
Array
{
Complex
{
Float64
}}(
undef
,
1
+
nflow
);
Eoft
=
Array
{
Complex
{
Float64
}}(
undef
,
1
,
1
+
nflow
);
pp_corr_mc
=
Array
{
Float64
}(
undef
,
0
,
iL
[
4
],
N_noise
);
pp_corr_mc
=
Array
{
Float64
}(
undef
,
0
,
iL
[
4
],
N_noise
);
ap_corr_mc
=
Array
{
ComplexF64
}(
undef
,
0
,
iL
[
4
],
N_noise
);
ap_corr_mc
=
Array
{
ComplexF64
}(
undef
,
0
,
iL
[
4
],
N_noise
);
...
@@ -79,7 +80,8 @@ function read_ff(name::String)
...
@@ -79,7 +80,8 @@ function read_ff(name::String)
Phat_t
[
1
,
noi
,
fl
]
=
RN
[
1
]
Phat_t
[
1
,
noi
,
fl
]
=
RN
[
1
]
end
end
end
end
BDIO_read
(
file
,
Eoft
)
BDIO_read
(
file
,
ET
)
Eoft
[
1
,
:
]
.=
ET
Eoft_mc
=
[
Eoft_mc
;
Eoft
]
Eoft_mc
=
[
Eoft_mc
;
Eoft
]
pp_corr_mc
=
[
pp_corr_mc
;
pp_corr
]
pp_corr_mc
=
[
pp_corr_mc
;
pp_corr
]
...
@@ -103,7 +105,7 @@ end
...
@@ -103,7 +105,7 @@ end
"""
"""
function uwff(file::String)
function uwff(file::String)
Loads in the variables 'E
p
ft', 'pp_corr', 'ap_corr', 'pp_corr_t','ap_corr_t', 'Sigma' and 'Sigma_cfl' the corresponding
Loads in the variables 'E
o
ft', 'pp_corr', 'ap_corr', 'pp_corr_t','ap_corr_t', 'Sigma' and 'Sigma_cfl' the corresponding
'uwreal' quantities. The indices are, when corresponding, eucliden time and flow times
'uwreal' quantities. The indices are, when corresponding, eucliden time and flow times
"""
"""
function
uwff
(
file
::
String
)
function
uwff
(
file
::
String
)
...
@@ -114,7 +116,7 @@ function uwff(file::String)
...
@@ -114,7 +116,7 @@ function uwff(file::String)
Ns
=
size
(
pp_corr_mc
)[
3
]
Ns
=
size
(
pp_corr_mc
)[
3
]
Nfl
=
size
(
pp_corr_t_mc
)[
4
]
Nfl
=
size
(
pp_corr_t_mc
)[
4
]
global
Eoft
=
[
uwreal
(
real
.
(
Eoft_mc
[
:
,
i
]),
runame
)
for
i
in
1
:
T
+
1
]
global
Eoft
=
[
uwreal
(
real
.
(
Eoft_mc
[
:
,
i
]),
runame
)
for
i
in
1
:
Nfl
+
1
]
global
pp_corr
=
[
uwreal
(
sum
(
pp_corr_mc
,
dims
=
3
)[
:
,
i
,
1
]
./
Ns
,
runame
)
for
i
in
1
:
T
]
global
pp_corr
=
[
uwreal
(
sum
(
pp_corr_mc
,
dims
=
3
)[
:
,
i
,
1
]
./
Ns
,
runame
)
for
i
in
1
:
T
]
global
ap_corr
=
[
uwreal
(
real
.
(
sum
(
ap_corr_mc
,
dims
=
3
)[
:
,
i
,
1
]
./
Ns
),
runame
)
for
i
in
1
:
T
]
global
ap_corr
=
[
uwreal
(
real
.
(
sum
(
ap_corr_mc
,
dims
=
3
)[
:
,
i
,
1
]
./
Ns
),
runame
)
for
i
in
1
:
T
]
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment