diff --git a/janus_core/calculations/geom_opt.py b/janus_core/calculations/geom_opt.py index 55c68637..6db16e80 100644 --- a/janus_core/calculations/geom_opt.py +++ b/janus_core/calculations/geom_opt.py @@ -239,13 +239,10 @@ def __init__( ).absolute() if self.write_traj: - if "filename" not in self.traj_kwargs: - self.traj_kwargs["filename"] = self._build_filename( - "traj.extxyz" - ).absolute() - if "trajectory" not in self.opt_kwargs: - # Overwrite .traj binary with .extxyz by default. - self.opt_kwargs["trajectory"] = str(self.traj_kwargs["filename"]) + self.traj_kwargs.setdefault( + "filename", self._build_filename("traj.extxyz").absolute() + ) + self.opt_kwargs.setdefault("trajectory", str(self.traj_kwargs["filename"])) elif self.traj_kwargs: raise ValueError("traj_kwargs given, but trajectory writing not enabled.") elif "trajectory" in self.opt_kwargs: diff --git a/janus_core/cli/geomopt.py b/janus_core/cli/geomopt.py index d92e9e4b..4adb89bd 100644 --- a/janus_core/cli/geomopt.py +++ b/janus_core/cli/geomopt.py @@ -44,11 +44,8 @@ def _set_minimize_kwargs( Scalar pressure when optimizing cell geometry, in GPa. Passed to the filter function if either `opt_cell_lengths` or `opt_cell_fully` is True. """ - if "opt_kwargs" not in minimize_kwargs: - minimize_kwargs["opt_kwargs"] = {} - - if "traj_kwargs" not in minimize_kwargs: - minimize_kwargs["traj_kwargs"] = {} + minimize_kwargs.setdefault("opt_kwargs", {}) + minimize_kwargs.setdefault("traj_kwargs", {}) # Check hydrostatic_strain and scalar pressure not duplicated if "filter_kwargs" in minimize_kwargs: