chemcoord.zmat_functions.DummyManipulation
- class chemcoord.zmat_functions.DummyManipulation(dummy_manipulation_allowed, cls=None)[source]
Contextmanager that controls the behaviour of
safe_loc()
andsafe_iloc()
.In the following examples it is assumed, that using the assignment with
safe_loc()
would lead to an invalid reference. Then there are two possible usecases:with DummyManipulation(zmat, True): zmat.safe_loc[...] = ... # This inserts required dummy atoms and removes them, # if they are not needed anymore. # Removes only dummy atoms, that were automatically inserted. with DummyManipulation(zmat, False): zmat.safe_loc[...] = ... # This raises an exception # :class:`~chemcoord.exceptions.InvalidReference`. # which can be handled appropiately. # The zmat instance is unmodified, if an exception was raised.
Methods
__init__
(dummy_manipulation_allowed[, cls])