diff --git a/src/ConvergenceTestWorkflow/actions.jl b/src/ConvergenceTestWorkflow/actions.jl index 6f99127..107271b 100644 --- a/src/ConvergenceTestWorkflow/actions.jl +++ b/src/ConvergenceTestWorkflow/actions.jl @@ -21,7 +21,13 @@ function (x::CutoffEnergySetter)(template::PWInput) return template end -normalizer() = VerbositySetter("high") +struct PseudodirSetter <: Setter end +function (x::PseudodirSetter)(template::PWInput) + @set! template.control.pseudo_dir = abspath(template.control.pseudo_dir) + return template +end + +normalizer() = VerbositySetter("high") ∘ PseudodirSetter() struct OutdirSetter <: Setter timefmt::String diff --git a/src/PhononWorkflow/actions.jl b/src/PhononWorkflow/actions.jl index 7c62435..5141a9b 100644 --- a/src/PhononWorkflow/actions.jl +++ b/src/PhononWorkflow/actions.jl @@ -75,7 +75,14 @@ function (::RecoverySetter)(template::PhInput) return template end -normalizer(::Scf, args...) = VerbositySetter("high") ∘ CalculationSetter(Scf()) +struct PseudodirSetter <: Setter end +function (x::PseudodirSetter)(template::PWInput) + @set! template.control.pseudo_dir = abspath(template.control.pseudo_dir) + return template +end + +normalizer(::Scf, args...) = + VerbositySetter("high") ∘ CalculationSetter(Scf()) ∘ PseudodirSetter() normalizer(::Dfpt, input::PWInput) = RelayArgumentsSetter(input) ∘ VerbositySetter("high") ∘ RecoverySetter() normalizer(::RealSpaceForceConstants, input::PhInput) = RelayArgumentsSetter(input)