I am trying to dump molecules whose atoms have atomic potential energy larger than a predefined magnitude. Are there any ways that I can do this directly in lammps? I know how to dump a group of atoms with atomic potential energy larger than certain magnitudes; however, how can I dump the whole molecules with atomic potential energies larger than a predefined magnitude?
I don’t know if it’s possible currently, but to
use dump_modify thresh the way you
can for individual atoms, you would
have to create a per-atom variable
that is the value for the entire molecule
that atom is in. To do that, a first
step would be to use compute atom/molecule
to sum up the “energy” of a molecule
based on the per-atom energies of its atoms.
That would give you a vector of length # of
molecules. There would then need to
be some way to have each atom extract
the right value from that vector for
How difficult would it be to use the methodology of the ‘compute cluster/atom’ command?
For this application, the cluster would be identified with the molecule, but if the compute was extended so that a ‘per atom’ variable was averaged across the atoms within the cluster/molecule, then that averaged value could be associated with every atom in the cluster or molecule.
Something like that might work, but a compute
like atom/molecule cannot produce both
a global and peratom value. I need to think
about some way to do it.