xnn.ffnn.models.dreidinglib.torsion_rule#

xnn.ffnn.models.dreidinglib.torsion_rule(lib, t_i, t_j, t_k, t_l, order=1.0)[source]#

DREIDING torsion rule for one dihedral I-J-K-L (eqs 14-23).

J and K are the central atoms and order the bond order of the J-K bond. The rules depend only on the central atoms except for the propene exception (j), which distinguishes dihedrals by the outer atom on the sp2 side: an sp2/resonant outer atom keeps the 6-fold rule (b), any other outer atom gets the 3-fold rule (j) – this reproduces the paper’s own barriers for propene and the acetate anion.

Parameters:
  • lib (DreidingLibrary) – The library (for hybridizations and elements).

  • t_i (str) – Atom types along the dihedral.

  • t_j (str) – Atom types along the dihedral.

  • t_k (str) – Atom types along the dihedral.

  • t_l (str) – Atom types along the dihedral.

  • order (float, optional) – Bond order of the central bond (1, 1.5, 2, 3); by default 1.

Returns:

The rule id (a key of TORSION_RULES), or None when the dihedral carries no torsion (rule g: a central sp1, monovalent or metal atom).

Return type:

str or None