cspy-gplus command
cspy-gplus is a script for generating input files (.xyz, _rank0.dma, .dma, and .mols) for running CSPy with DMACRYS on systems with G >= 2 (i.e. Z’>= 2 or co-crystals/salts).
Under normal circumstances, cspy-dma is ran to generate input files, but this requires running a DFT calculation on each unique molecule in the system, which is a relatively slow process.
If the user desires to do CSP on several related systems which vary in stoichiometry and/or Z’ but share some or all molecules, cspy-gplus is a more efficient and practical approach than running cspy-dma for each system.
cspy-gplus requires the user to run cspy-dma once for each molecule as if they were preparing to do a Z’ 1 CSP. The resultant, .xyz, _rank0.dma, .dma, and .mols can then be combined to create the input files for CSP of an arbitrary combination of the molecules.
cspy-gplus [-h] [-d DATABASE] [-l [LIST]] [-a] [xyz_files ...]
positional arguments
xyz_files- Xyz files containing molecules
options
Use with a Molecules Database
Molecules databases store data pertaining to specific conformers of molecules. Each entry in the database contains:
id
xyz_coordinates (geometric description of the molecule in the
.xyzformat)total_charge on the molecule/ion
chargess (poitns charges in the
_rank0.dmaformat )mults (distributed multipoles in the
.dmaformat)axes (molecular axes in the
.molsformat)
To build a new database or add molecules to an existing database, provide a list of .xyz files, the -d (--database) flag followed by the database name, and the -a (add) flag.
The user must be in a directory that contains the relevant .xyz, _rank0.dma, .dma, and .mols files.
See below for an example:
cspy-gplus moleculeA.xyz moleculeB.xyz -d molecules.db -a
To assemble the combined input files, drop the -a flag, and for any molecules/ions that are to be included in the asymmetric unit more than once, the .xyz is listed the same number of times.
See below for an example co-crystal with two of molecule A and one of molecule B in the asymmetric unit.:
cspy-gplus moleculeA.xyz moleculeA.xyz moleculeB.xyz -d molecules.db
Use without a Molecules Database
The user may wish to bypass building a database.
This is possible if the user is in a directory containing the .xyz, _rank0.dma, .dma, and .mols files for each relevant molecule.
See below for an example co-crystal with two of molecule A and one of molecule B in the asymmetric unit.:
cspy-gplus moleculeA.xyz moleculeA.xyz moleculeB.xyz
Note
Simply concatenating input files is sometimes insufficient; particularly if more than one molecule is involved. It is far safer to use the cspy-gplus script.
Note
cspy-gplus will ensure that all atoms in the system have a unique neighcrys label.
Note
cspy-gplus will ensure that atoms are clustered by element and that the ordering of these elements is the same between molecules. This may mean that the .xyz file returned by cspy-gplus is different to the .xyz file provided.