Skip to content

Commit

Permalink
made pseudos a bit more consistent with defaults
Browse files Browse the repository at this point in the history
  • Loading branch information
louisponet committed Jul 1, 2019
1 parent 67b73a9 commit f0ee0a0
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 6 deletions.
8 changes: 4 additions & 4 deletions src/defaults.jl
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
# const default_file = abspath(homedir(),".julia","config","DFControl", "user_defaults.jl")
const default_file = occursin("cache", first(Base.DEPOT_PATH)) ? abspath(Base.DEPOT_PATH[2], "config","DFControl", "user_defaults.jl") : abspath(Base.DEPOT_PATH[1], "config","DFControl", "user_defaults.jl")
const default_pseudodirs = Dict{Symbol, String}()
const default_pseudos = Dict{Symbol, Dict{Symbol, Vector{String}}}()
const default_pseudos = Dict{Symbol, Dict{Symbol, Vector{Pseudo}}}()
const default_jobheader = [""]

for el in ELEMENTS
default_pseudos[el.symbol] = Dict{Symbol, Vector{String}}()
default_pseudos[el.symbol] = Dict{Symbol, Vector{Pseudo}}()
end

const default_server = "localhost"
Expand Down Expand Up @@ -109,11 +109,11 @@ function configuredefault_pseudos(;server = getdefault_server(), pseudo_dirs=get
pseudo = pseudos[i]
element = Symbol(titlecase(String(split(split(pseudo, ".")[1], "_")[1])))
if element in elsyms
t = String[pseudo]
t = Pseudo[Pseudo(pseudo, pseudo_dirs[name])]
# t_expr = :(String[$pseudo])
j = 1
while j + i <= length(pseudos) && Symbol(split(pseudos[i + j],".")[1]) == element
push!(t, pseudos[i + j])
push!(t, Pseudo(pseudos[i + j], pseudo_dirs[name]))
# push!(t_expr.args,pseudos[i + j])
j += 1
end
Expand Down
3 changes: 2 additions & 1 deletion src/structure.jl
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ function setpseudos!(structure::AbstractStructure, atoms::Vector{<:AbstractAtom}
return
end
for (i, at) in enumerate(atoms)
pseudo = Pseudo(getdefault_pseudo(name(at), set, specifier=specifier), dir)
pseudo = getdefault_pseudo(name(at), set, specifier=specifier)
if pseudo == nothing
@warn "Pseudo for $(name(at)) at index $i not found in set $set."
else
Expand Down Expand Up @@ -177,6 +177,7 @@ function scale_cell!(structure::Structure, v)
for at in atoms(structure)
at.position_cart = structure.cell' * at.position_cryst
end
structure.cell
end

function set_magnetization!(str::Structure, atsym_mag::Pair{Symbol, <:AbstractVector}...)
Expand Down
2 changes: 1 addition & 1 deletion test/defaults_tests.jl
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,5 @@ setdefault_server("localhost")
setdefault_pseudodir(:test, joinpath(testdir, "testassets", "pseudos"))
configuredefault_pseudos(pseudo_dirs=Dict(:test => getdefault_pseudodirs()[:test]))

@test DFControl.getdefault_pseudo(:Pt, :test) == "Pt.UPF"
@test DFControl.getdefault_pseudo(:Pt, :test) == Pseudo("Pt.UPF",joinpath(testdir, "testassets", "pseudos"))
@test DFControl.getdefault_server() == "localhost"

0 comments on commit f0ee0a0

Please sign in to comment.