diff --git a/ipi/engine/motion/dynamics.py b/ipi/engine/motion/dynamics.py index 1a5309fe1..01b891702 100644 --- a/ipi/engine/motion/dynamics.py +++ b/ipi/engine/motion/dynamics.py @@ -608,9 +608,14 @@ def pstep(self, level=0): dstrip(self.forces.vir), np.zeros(len(self.forces.vir)) ): warning( - "Seems like no stress tensor was computed by the forcefield.", + "Forcefield returned a zero stress tensor. NPT simulation will likely make no sense", verbosity.low, ) + if verbosity.medium: + raise ValueError( + "Zero stress terminates simulation for medium verbosity and above." + ) + self._stresscheck = False self.barostat.pstep(level) @@ -749,9 +754,14 @@ def pstep(self, level=0): dstrip(self.forces.vir), np.zeros(len(self.forces.vir)) ): warning( - "Seems like no stress tensor was computed by the forcefield.", + "Forcefield returned a zero stress tensor. NPT simulation will likely make no sense", verbosity.low, ) + if verbosity.medium: + raise ValueError( + "Zero stress terminates simulation for medium verbosity and above." + ) + self._stresscheck = False self.barostat.pstep(level) diff --git a/ipi/engine/simulation.py b/ipi/engine/simulation.py index 32529c45c..ed9f1b80e 100644 --- a/ipi/engine/simulation.py +++ b/ipi/engine/simulation.py @@ -97,9 +97,9 @@ def load_from_xml( simulation.bind(read_only) # echo the input file if verbose enough - if verbosity.level > 0: + if verbosity.low: print(" # i-PI loaded input file: ", fn_input) - if verbosity.level > 1: + elif verbosity.medium: print(" --- begin input file content ---") ifile = open(fn_input, "r") for line in ifile.readlines(): diff --git a/ipi/inputs/simulation.py b/ipi/inputs/simulation.py index 30d692924..cb7ad9d20 100644 --- a/ipi/inputs/simulation.py +++ b/ipi/inputs/simulation.py @@ -102,7 +102,7 @@ class InputSimulation(Input): InputAttribute, { "dtype": str, - "default": "low", + "default": "medium", "options": ["quiet", "low", "medium", "high", "debug"], "help": "The level of output on stdout.", },