Make the combination of atoms list addition since their union should already be null
Avoids possible set scrambling
@@ -281,8 +281,8 @@ class AlchemicalPhaseFactory(object):
# Get the solute atoms
if self.options['store_solute_trajectory']:
# "Solute" is basically just not water. Includes all non-water atoms and ions
- # Use set union (|) cast back to list to get output
- solute_atoms = list(frozenset(self.topography.solute_atoms) | frozenset(self.topography.ions_atoms))
+ # Topography ensures the union of solute_atoms and ions_atoms is a null set
+ solute_atoms = self.topography.solute_atoms + self.topography.ions_atoms
if checkpoint_interval == 1:
logger.warning("WARNING! You have specified both a solute-only trajectory AND a checkpoint "
"interval of 1! You are about write the trajectory of the solute twice!\n"
