unsigned int OEMDLGetValence(unsigned int atomicnum, int charge, unsigned int minvalence)
Returns the MDL valence for the given parameters.
- The atomic number returned by the OEAtomBase.GetAtomicNum method.
- The formal charge returned by the OEAtomBase.GetFormalCharge method.
- The minimum valence.
For example, OEMDLGetValence will return 4 in the case of the following input parameters:
- atomic number: OEElemNo_N
- formal charge: “+1”
- minimum valence: three single bonds to heavy atoms (value returned by the OEAtomBase.GetExplicitDegree method)
This means that the atom has correct valence only if it has either one implicit or one explicit hydrogen.