Topology Schema

A full description of the overall molecule its geometry, fragments, and charges.

Required Keys

The following properties are required for a topology.

Key Name Description Field Type
symbols (nat, ) atom symbols in title case. array[string]
geometry (3 * nat, ) vector of XYZ coordinates [a0] of the atoms. array[number]
schema_name No description provided. string
schema_version No description provided. integer

Optional Keys

The following keys are optional for the topology specification.

Key Name Description Field Type
molecular_charge The overall charge of the molecule. number
molecular_multiplicity The overall multiplicity of the molecule. number
fix_com Whether translation of geometry is allowed (fix F) or disallowed (fix T). boolean
real (nat, ) list describing if atoms are real (T) or ghost (F). array[boolean]
connectivity A list describing bonds within a molecule. Each element is a (atom1, atom2, order) tuple. array[array]
fix_orientation Whether rotation of geometry is allowed (fix F) or disallowed (fix T). boolean
atom_labels (nat, ) atom labels with any user tagging information. array[string]
fragment_multiplicities (nfr, ) list of multiplicities associated with each fragment tuple. array[number]
fix_symmetry Maximal point group symmetry at which geometry should be treated. Lowercase. string
fragment_charges (nfr, ) list of charges associated with each fragment tuple. array[number]
mass_numbers (nat, ) mass numbers for atoms, if known isotope, else -1. array[number]
name The name of the molecule. string
masses (nat, ) atom masses [u]; canonical weights assumed if not given. array[number]
comment Any additional comment one would attach to the molecule. string
provenance #/definitions/provenance object
fragments (nfr, <varies>) list of indices (0-indexed) grouping atoms into molecular fragments within the topology. array[array]
atomic_numbers (nat, ) atomic numbers, nuclear charge for atoms. Ghostedness should be indicated through ‘real’ field, not zeros here. array[number]