psiresp.charge.ChargeConstraintOptions

pydantic model psiresp.charge.ChargeConstraintOptions[source]

Options for setting charge constraints and charge equivalence constraints.

Fields
field charge_equivalence_constraints: List[psiresp.charge.ChargeEquivalenceConstraint] = []
field charge_sum_constraints: List[psiresp.charge.ChargeSumConstraint] = []
field constrain_methyl_hydrogens_between_conformers: bool = False

Whether to constrain methyl/ene hydrogens as equivalent between conformers. This has no effect if split_conformers=False.

field split_conformers: bool = False

Treat conformers separately, instead of combining the restraint matrices

field symmetric_atoms_are_equivalent: bool = False

Whether to constrain atoms to have equivalent charges if they are symmetric in the graph representation. 3D coordinates are not taken into account.

field symmetric_methylenes: bool = True

Whether to constrain methylene hydrogens around a carbon to equivalent charge

field symmetric_methyls: bool = True

Whether to constrain methyl hydrogens around an sp3 carbon to equivalent charge

add_charge_equivalence_constraint(atoms=[])
add_charge_equivalence_constraint_for_molecule(molecule, indices=[])
add_charge_sum_constraint(charge, atoms=[])
add_charge_sum_constraint_for_molecule(molecule, charge=0, indices=[])
clean_charge_equivalence_constraints()

Clean the ChargeEquivalence constraints.

  1. Join charge equivalence constraints with overlapping atoms

  2. Remove atoms from charge equivalences if they are constrained

    to different charges, and remove charge equivalence constraints if all atoms are constrained to the same charge (so it is redundant)

clean_charge_sum_constraints()
get_hash()
iter_constraints()
property n_constraints