Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
GEVP automated analysis
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
Alessandro
GEVP automated analysis
Commits
1382a95d
Commit
1382a95d
authored
Jun 28, 2021
by
Alessandro
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
old test for matrix elements
parent
515a5d52
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
107 additions
and
0 deletions
+107
-0
src/testing_mat_elem.jl
src/testing_mat_elem.jl
+107
-0
No files found.
src/testing_mat_elem.jl
0 → 100644
View file @
1382a95d
using
Revise
,
juobs
,
BDIO
,
ADerrors
,
DelimitedFiles
,
PyPlot
,
LaTeXStrings
,
LsqFit
#============= SET UP VARIABLES ===========#
const
path_data
=
"/Users/ale/Desktop/data"
const
path_plat
=
"/Users/ale/automation/plat.txt"
const
path_results
=
"/Users/ale/Desktop/results_gevp"
const
ensembles
=
[
"J303"
,
"N300"
]
const
sector
=
Dict
(
"ll"
=>
false
,
"ls"
=>
false
,
"lh"
=>
true
,
"ss"
=>
false
,
"sh"
=>
true
,
"hh"
=>
true
)
const
tau
=
4
const
_t0
=
2
const
range_t_fit
=
[
2
,
5
]
const
rwf
=
false
const
compute_t0
=
false
const
mass_shift
=
false
#not implemented yet
#go to line 443 to change CL+chiral extrapolation fit model
#========= DO NOT CHANGE AFTER THIS LINE ==========#
include
(
"types.jl"
)
include
(
"tools.jl"
)
include
(
"const.jl"
)
#======== GET ENSEMBLE INFORMATION FROM DATABASE ==========#
ensinfo
=
Vector
{
EnsInfo
}(
undef
,
length
(
ensembles
))
for
i
in
1
:
length
(
ensembles
)
ens
=
ensembles
[
i
]
try
ensinfo
[
i
]
=
EnsInfo
(
ens
,
ens_db
[
ens
])
catch
error
(
"The ensemble id "
,
ens
,
" was not found in the const.jl ens_db database.
Please check the ensemble id or update the database"
)
end
end
gen_mulist
=
Vector
{
Vector
{
Vector
{
Float64
}}}(
undef
,
length
(
ensembles
))
println
(
"
\n
Building matrices
\n
"
)
@time
begin
matinfo
=
Vector
{
Vector
{
MatInfo
}}(
undef
,
length
(
ensembles
))
matinfo_vec
=
Vector
{
Vector
{
MatInfo
}}(
undef
,
length
(
ensembles
))
for
i
in
1
:
length
(
ensinfo
)
@time
begin
ens
=
ensinfo
[
i
]
println
(
"
\n
Ensemble: "
,
ens
.
id
)
pp
=
get_corr
(
ens
,
"G5"
,
"G5"
,
rw
=
rwf
)
gen_mulist
[
i
]
=
getfield
.
(
pp
,
:
mu
)
a1a1
=
get_corr
(
ens
,
"G1G5"
,
"G1G5"
,
rw
=
rwf
)
matinfo
[
i
]
=
comp_mat
(
ens
,
pp
,
tau
)
matinfo_vec
[
i
]
=
comp_mat
(
ens
,
a1a1
,
tau
)
println
(
"Time:"
)
end
end
println
(
"Total time:"
)
end
## TESTING DECAYS
## compute ps mass
mat
=
matinfo
[
1
][
6
]
.
mat_list
[
96
:
end
-
1
]
mu
=
matinfo
[
1
][
6
]
.
mu
evals
=
getall_eigvals
(
mat
,
2
)
en_eff
=
energies
(
evals
)
psmass
=
plat_av
(
en_eff
[
1
],
[
25
,
70
])
## extract eigenvectors
function
getall_eig
(
a
::
Vector
{
Matrix
{
uwreal
}},
t0
;
iter
=
30
)
n
=
length
(
a
)
res
=
Vector
{
Matrix
{
uwreal
}}(
undef
,
n
)
[
res
[
i
]
=
uweigvecs
(
a
[
i
],
a
[
t0
])
for
i
=
1
:
n
]
return
res
end
##
evec
=
getall_eig
(
mat
,
2
)
##
function
rn
(
evec
::
Vector
{
Matrix
{
uwreal
}},
ct_mat
::
Vector
{
Matrix
{
uwreal
}},
mass
::
uwreal
,
n
::
Int64
)
t
=
length
(
evec
)
res
=
Vector
{
uwreal
}(
undef
,
t
)
for
i
in
1
:
t
aux
=
uwdot
(
evec
[
i
][
:
,
n
],
uwdot
(
ct_mat
[
i
],
evec
[
i
][
:
,
n
]))[
1
]
aux2
=
1
/
(
aux
)
^
(
0.5
)
*
exp
(
mass
*
(
i
-
2
)
/
2
)
res
[
i
]
=
aux2
*
uwdot
(
evec
[
i
][
:
,
n
],
ct_mat
[
i
][
:
,
n
])
end
return
res
end
r1
=
rn
(
evec
,
mat
,
psmass
,
1
)
uwerr
.
(
r1
)
fig
=
figure
()
x
=
collect
(
1
:
length
(
r1
))
errorbar
(
x
,
value
.
(
r1
),
yerr
=
err
.
(
r1
),
fmt
=
"*"
)
ylim
(
-
0.2
,
-
0.15
)
display
(
fig
)
##
function
dec
(
mat_elem
::
Vector
{
uwreal
},
plat
::
Vector
{
Int64
},
mass
::
uwreal
,
mu
::
Vector
{
Float64
})
return
sqrt
(
2
/
(
mass
)
^
3
)
*
sum
(
mu
)
*
aux
end
fps
=
-
dec
(
r1
,
[
25
,
70
],
psmass
,
mu
)
uwerr
(
fps
)
##
path
=
"/Users/ale/Desktop/data/N300/N300r002_k0.1372069_mu0.004119_mu0.13775_mu0.15225_mu0.145.mesons.dat"
dat
=
read_mesons
(
path
,
"G5"
,
"G5"
)
pp_corr
=
corr_obs
.
(
dat
,
L
=
48
)
dec_const_pcvc
(
pp_corr
[
6
],
[
60
,
110
],
psmass
)
\ No newline at end of file
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