Valence calculator provides two ways to check the valence of an atom having aromatic bonds:
Local Aromatic Valence Calculator uses only the bond and ligand information of the considered atom to do valence calculations. Hence, this method is faster, but often chemically incorrect.
Global Aromatic Valence Calculator examine the whole aromatic ring system to calculate the valence of one of its atoms. This method is, therefore, slower but chemically more reliable. We recommend the usage of this method, when the not the speed but the chemical reliablity of the valence calculations are important.
Aromatic atoms are sorted into four groups, i.e. boron-like, carbon-like, nitrogen-like and oxygen-like atoms according to their behavior.
Boron-like atoms
Boron-like atoms: B, C+
Valence can not be calculated exactly.
One aromatic bond:
Accepted with two implicit hydrogens.
Accepted with one single bond.
Accepted with one single bond and one other single bond or one radical or one implicit hydrogen or one attachment point.
Accepted with one double bond.
Two aromatic bonds:
Three aromatic bonds:
Carbon-like atoms
Carbon-like atoms: B-, C, N+, P+
Valence can be calculated exactly.
One aromatic bond:
Accepted with two implicit hydrogens.
Accepted with one single bond.
Accepted with one single bond and one other single bond or one double bond or one radical or one implicit hydrogen or one attachment point.
Accepted with one double bond.
Accepted with one double bond and one radical or one implicit hydrogen or one attachment point.
Two aromatic bonds:
Three aromatic bonds:
Nitrogen-like atoms
Nitrogen-like atoms: C-, N , P, O+, S+
Valence can not be calculated exactly.
One aromatic bond:
Accepted with two implicit hydrogens.
Accepted with one single bond.
Accepted with one single bond and one other single bond or one radical or one implicit hydrogen or one attachment point.
Accepted with one double bond.
Two aromatic bonds:
Three aromatic bonds:
Oxygen-like atoms
Oxygen-like atoms: N-, P-, O, S
Valence can be calculated exactly.
One aromatic bond:
Accepted with zero implicit hydrogens.
Accepted with one single bond.
Two aromatic bonds:
Three aromatic bonds:
Exocyclic double bonds
When an atom two aromatic bonds, it may have a double bond with specific ligand:
Carbon: C, N, P, O, S atoms are possible ligand atoms.
Nitrogen, Phosphorous, Sulfur: Only O is possible ligand atom.
Nitrogen and Phosphorous with 1+ charge: Any atom can be ligand.
Global Aromatic Valence Calculator is not yet implemented. There is a calculation that takes single aromatic rings into account and thus it's slower than the local aromatic calculation. It can be reached through MoleculeGraph.setValenceCheckOptions method.