atomic_partial_charges#

skfp.descriptors.atomic_partial_charges(mol: Mol, partial_charge_model: str = 'formal', charge_errors: str = 'raise') ndarray#

Atomic partial charges.

Calculate the atomic partial charges for all atoms in the molecule, using a given computational model. Note that it may fail for some molecules, e.g. Gasteiger model cannot compute charges for metals.

Parameters:
  • mol (RDKit Mol object) – The molecule for which the Balaban’s J index is to be calculated.

  • partial_charge_model ({"Gasteiger", "MMFF94", "formal", "precomputed"}, default="formal") – Which model to use to compute atomic partial charges. Default "formal" computes formal charges, and is the simplest and most error-resistant one.

  • charge_errors ({"raise", "ignore", "zero"}, default="raise") – How to handle errors during calculation of atomic partial charges. "raise" immediately raises any errors. "ignore" returns np.nan for all atoms that failed the computation. "zero" uses default value of 0 to fill all problematic charges.

Examples

>>> from rdkit.Chem import MolFromSmiles
>>> from skfp.descriptors import atomic_partial_charges
>>> mol = MolFromSmiles("C1=CC=CC=C1")  # Benzene
>>> atomic_partial_charges(mol)
array([0., 0., 0., 0., 0., 0.])