mordred.ExtendedTopochemicalAtom module

Extended Topochemical Atom(ETA) descriptor.

References
class mordred.ExtendedTopochemicalAtom.EtaCoreCount(averaged=False, reference=False)[source]

Bases: EtaBase

ETA core count descriptor.

\[\alpha = \sum_{i = 1}^A \frac{Z_i - Z_i^v}{Z_i^v} \cdot \frac{1}{PN_i - 1}\]

where \(Z_i\) and \(Z_i^v\) are number of total and valence electons, \(PN\) is periodic number.

Parameters:
  • averaged (bool) – averaged by number of heavy count

  • reference (bool) – use reference alkane (same graph structure, but all atoms are carbon and all bonds are single bond)

Returns:

reference and valence of any atoms > 4

since = <Version('1.0.0')>
description()[source]
property config
explicit_hydrogens = False
classmethod from_json(obj)

Create Descriptor instance from json dict.

Parameters:

obj (dict) – descriptor dict

Returns:

descriptor

Return type:

Descriptor

get_3D_mol()
get_parameter_dict()
kekulize = True
parameter_names = ('averaged', 'reference')
require_3D = False
require_connected = True
rtype

alias of float

to_json()

Convert to json serializable dictionary.

Returns:

dictionary of descriptor

Return type:

dict

class mordred.ExtendedTopochemicalAtom.EtaShapeIndex(type='p')[source]

Bases: EtaBase

ETA shape index descriptor.

\[{\rm shape}_t = \frac{\alpha_t}{\alpha}\]

where \(\alpha_t\) is p(alpha value only atoms which bond to 1 heavy atom), y(3), or x(4).

Parameters:

type (str) – one of shape_types

since = <Version('1.0.0')>
description()[source]
shape_types = ('p', 'y', 'x')
property config
explicit_hydrogens = False
classmethod from_json(obj)

Create Descriptor instance from json dict.

Parameters:

obj (dict) – descriptor dict

Returns:

descriptor

Return type:

Descriptor

get_3D_mol()
get_parameter_dict()
kekulize = True
parameter_names = ('type',)
require_3D = False
require_connected = True
rtype

alias of float

to_json()

Convert to json serializable dictionary.

Returns:

dictionary of descriptor

Return type:

dict

class mordred.ExtendedTopochemicalAtom.EtaVEMCount(type='', averaged=False)[source]

Bases: EtaBase

ETA VEM(valence electron mobile) count descriptor.

\[ \begin{align}\begin{aligned}\beta^{\rm s} = \frac{1}{2} \sum^A_{i=1} \beta^{\rm s}_i\\\beta^{\rm s}_i = \sum^A_{j = 1} x_{ij}\sigma_{ij}\\\begin{split}x_{ij} = \begin{cases} 0.5 & \left( \left| \epsilon_i - \epsilon_j \right| \leq 0.3 \right) \\ 0.75 & \left( \left| \epsilon_i - \epsilon_j \right| > 0.3 \right) \end{cases}\end{split}\\\epsilon_i = - \alpha_i + 0.3 Z^{\rm v}\end{aligned}\end{align} \]

where \(\sigma_{ij}\) is sigma bond count between i and j.

\[\beta^{\rm ns\delta} = \sum^A_{i = 1} \beta^{\rm ns\delta}_i\]

where \(\beta^{\rm ns\delta}_i\) is 0.5 if i-th atom is making resonance with an aromatic ring.

\[ \begin{align}\begin{aligned}\beta^{\rm ns} = \frac{1}{2} \sum^A_{i=1} \beta^{\rm ns}_i\\\beta^{\rm ns}_i = \sum^A_{j = 1} y_{ij}\pi_{ij} + \beta^{\rm ns\delta}_i\\\begin{split}y_{ij} = \begin{cases} 2.0 & \left( {\rm ij\ is\ aromatic\ bond} \right) \\ 1.5 & \left( \left| \epsilon_i - \epsilon_j \right| > 0.3 \right) \\ 1.0 & \left( \left| \epsilon_i - \epsilon_j \right| \leq 0.3 \right) \end{cases}\end{split}\end{aligned}\end{align} \]

where \(\pi_{ij}\) is pi bond count between i and j.

\[\beta = \beta^{\rm s} + \beta^{\rm ns}\]
Parameters:
  • type (str) – one of beta_types

  • averaged (bool) – averaged by heavy atom count

since = <Version('1.0.0')>
description()[source]
beta_types = ('', 's', 'ns', 'ns_d')
property config
explicit_hydrogens = False
classmethod from_json(obj)

Create Descriptor instance from json dict.

Parameters:

obj (dict) – descriptor dict

Returns:

descriptor

Return type:

Descriptor

get_3D_mol()
get_parameter_dict()
kekulize = True
parameter_names = ('type', 'averaged')
require_3D = False
require_connected = True
rtype

alias of float

to_json()

Convert to json serializable dictionary.

Returns:

dictionary of descriptor

Return type:

dict

class mordred.ExtendedTopochemicalAtom.EtaCompositeIndex(reference=False, local=False, averaged=False)[source]

Bases: EtaBase

ETA composite index descriptor.

\[ \begin{align}\begin{aligned}\eta = \sum_{i < j} \left( \frac{\gamma_i \gamma_j}{r_{ij}^2} \right)^{0.5}\\\gamma_i = \frac{\alpha_i}{\beta_i}\end{aligned}\end{align} \]

where \(r_{ij}\) is graph distance.

\[\eta^{\rm local} = \sum_{i < j, r_{ij} = 1} \left( \gamma_i \gamma_j \right)^{0.5}\]
Parameters:
  • reference (bool) – use reference alkane.

  • local (bool) – use \(\eta^{\rm local}\)

  • averaged (bool) – averaged

Returns:

reference and valence of any atoms > 4

since = <Version('1.0.0')>
description()[source]
property config
explicit_hydrogens = False
classmethod from_json(obj)

Create Descriptor instance from json dict.

Parameters:

obj (dict) – descriptor dict

Returns:

descriptor

Return type:

Descriptor

get_3D_mol()
get_parameter_dict()
kekulize = True
parameter_names = ('reference', 'local', 'averaged')
require_3D = False
require_connected = True
rtype

alias of float

to_json()

Convert to json serializable dictionary.

Returns:

dictionary of descriptor

Return type:

dict

class mordred.ExtendedTopochemicalAtom.EtaFunctionalityIndex(local=False, averaged=False)[source]

Bases: EtaBase

ETA functionality index descriptor.

\[\eta^{\rm F} = \eta^{\rm R} - \eta\]

where \(\eta^{\rm R}\) is eta value for reference alkane.

Parameters:
  • local (bool) – use local eta

  • averaged (bool) – averaged

since = <Version('1.0.0')>
description()[source]
property config
explicit_hydrogens = False
classmethod from_json(obj)

Create Descriptor instance from json dict.

Parameters:

obj (dict) – descriptor dict

Returns:

descriptor

Return type:

Descriptor

get_3D_mol()
get_parameter_dict()
kekulize = True
parameter_names = ('local', 'averaged')
require_3D = False
require_connected = True
rtype

alias of float

to_json()

Convert to json serializable dictionary.

Returns:

dictionary of descriptor

Return type:

dict

class mordred.ExtendedTopochemicalAtom.EtaBranchingIndex(ring=True, averaged=False)[source]

Bases: EtaBase

ETA branching index descriptor.

\[\eta^{\rm B} = \eta^{\rm local,N} - \eta^{local,R} + 0.086 N^{\rm R}\]

where \(\eta^{\rm local,N}\) is \(\eta^{\rm local}\) for normal alkane. \(N^{\rm R}\) is ring count.

Parameters:
  • ring (bool) – use ring count or not

  • averaged (bool) – averaged

Returns:

NaN when A < 2

since = <Version('1.0.0')>
description()[source]
property config
explicit_hydrogens = False
classmethod from_json(obj)

Create Descriptor instance from json dict.

Parameters:

obj (dict) – descriptor dict

Returns:

descriptor

Return type:

Descriptor

get_3D_mol()
get_parameter_dict()
kekulize = True
parameter_names = ('ring', 'averaged')
require_3D = False
require_connected = True
rtype

alias of float

to_json()

Convert to json serializable dictionary.

Returns:

dictionary of descriptor

Return type:

dict

class mordred.ExtendedTopochemicalAtom.EtaDeltaAlpha(type='A')[source]

Bases: EtaBase

ETA delta alpha descriptor.

\[ \begin{align}\begin{aligned}\Delta\alpha_{\rm A} = \max\left(\frac{\alpha - \alpha^{\rm R}}{A}, 0\right)\\\Delta\alpha_{\rm B} = \max\left(\frac{\alpha^{\rm R} - \alpha}{A}, 0\right)\end{aligned}\end{align} \]
Parameters:

type (str) – one of delta_types

since = <Version('1.0.0')>
description()[source]
delta_types = ('A', 'B')
property config
explicit_hydrogens = False
classmethod from_json(obj)

Create Descriptor instance from json dict.

Parameters:

obj (dict) – descriptor dict

Returns:

descriptor

Return type:

Descriptor

get_3D_mol()
get_parameter_dict()
kekulize = True
parameter_names = ('type',)
require_3D = False
require_connected = True
rtype

alias of float

to_json()

Convert to json serializable dictionary.

Returns:

dictionary of descriptor

Return type:

dict

class mordred.ExtendedTopochemicalAtom.EtaEpsilon(type=1)[source]

Bases: EtaBase

ETA epsilon descriptor.

\[\epsilon^i = \frac{\epsilon^i}{N^i} (i \leq 4) \epsilon^5 = \frac{\epsilon^2 + \epsilon^{\rm XH}}{N^2 + N^{\rm XH}}\]
types(i)
1

all atoms

2

heavy atoms

3

all atoms of reference alkane

4

all atoms of saturated carbon skeleton(reduce C-C bonds)

XH

hydrogens bond to hetero atoms

Parameters:

type (str) – one of epsilon_types

Returns:

type = 3 and valence of any atoms > 4

since = <Version('1.0.0')>
description()[source]
property explicit_hydrogens

bool(x) -> bool

Returns True when the argument x is true, False otherwise. The builtins True and False are the only two instances of the class bool. The class bool is a subclass of the class int, and cannot be subclassed.

epsilon_types = (1, 2, 3, 4, 5)
property config
classmethod from_json(obj)

Create Descriptor instance from json dict.

Parameters:

obj (dict) – descriptor dict

Returns:

descriptor

Return type:

Descriptor

get_3D_mol()
get_parameter_dict()
kekulize = True
parameter_names = ('type',)
require_3D = False
require_connected = True
rtype

alias of float

to_json()

Convert to json serializable dictionary.

Returns:

dictionary of descriptor

Return type:

dict

class mordred.ExtendedTopochemicalAtom.EtaDeltaEpsilon(type='A')[source]

Bases: EtaBase

ETA delta epsilon descriptor.

\[ \begin{align}\begin{aligned}\Delta \epsilon^{\rm A} = \epsilon^1 - \epsilon^3\\\Delta \epsilon^{\rm B} = \epsilon^1 - \epsilon^4\\\Delta \epsilon^{\rm C} = \epsilon^3 - \epsilon^4\\\Delta \epsilon^{\rm D} = \epsilon^2 - \epsilon^5\end{aligned}\end{align} \]
Parameters:

type (str) – one of delta_epsilon_types

since = <Version('1.0.0')>
description()[source]
delta_epsilon_types = ('A', 'B', 'C', 'D')
property config
explicit_hydrogens = False
classmethod from_json(obj)

Create Descriptor instance from json dict.

Parameters:

obj (dict) – descriptor dict

Returns:

descriptor

Return type:

Descriptor

get_3D_mol()
get_parameter_dict()
kekulize = True
parameter_names = ('type',)
require_3D = False
require_connected = True
rtype

alias of float

to_json()

Convert to json serializable dictionary.

Returns:

dictionary of descriptor

Return type:

dict

class mordred.ExtendedTopochemicalAtom.EtaDeltaBeta(averaged=False)[source]

Bases: EtaBase

ETA delta beta descriptor.

\[\Delta\beta = \beta^{\rm ns} - \beta^{\rm s}\]
Parameters:

averaged (bool) – averaged

since = <Version('1.0.0')>
description()[source]
property config
explicit_hydrogens = False
classmethod from_json(obj)

Create Descriptor instance from json dict.

Parameters:

obj (dict) – descriptor dict

Returns:

descriptor

Return type:

Descriptor

get_3D_mol()
get_parameter_dict()
kekulize = True
parameter_names = ('averaged',)
require_3D = False
require_connected = True
rtype

alias of float

to_json()

Convert to json serializable dictionary.

Returns:

dictionary of descriptor

Return type:

dict

class mordred.ExtendedTopochemicalAtom.EtaPsi[source]

Bases: EtaBase

ETA psi descriptor.

\[\psi_1 = \frac{\alpha}{A \cdot \epsilon^2}\]
since = <Version('1.0.0')>
description()[source]
property config
explicit_hydrogens = False
classmethod from_json(obj)

Create Descriptor instance from json dict.

Parameters:

obj (dict) – descriptor dict

Returns:

descriptor

Return type:

Descriptor

get_3D_mol()
get_parameter_dict()
kekulize = True
parameter_names = ()
require_3D = False
require_connected = True
rtype

alias of float

to_json()

Convert to json serializable dictionary.

Returns:

dictionary of descriptor

Return type:

dict

class mordred.ExtendedTopochemicalAtom.EtaDeltaPsi(type='A')[source]

Bases: EtaBase

ETA delta psi descriptor.

\[ \begin{align}\begin{aligned}\Delta\psi_{\rm A} = \max\left(0.714 - \psi_1, 0\right)\\\Delta\psi_{\rm B} = \max\left(\psi_1 - 0.714, 0\right)\end{aligned}\end{align} \]
Parameters:

type (str) – one of delta_psi_types

since = <Version('1.0.0')>
description()[source]
delta_psi_types = ('A', 'B')
property config
explicit_hydrogens = False
classmethod from_json(obj)

Create Descriptor instance from json dict.

Parameters:

obj (dict) – descriptor dict

Returns:

descriptor

Return type:

Descriptor

get_3D_mol()
get_parameter_dict()
kekulize = True
parameter_names = ('type',)
require_3D = False
require_connected = True
rtype

alias of float

to_json()

Convert to json serializable dictionary.

Returns:

dictionary of descriptor

Return type:

dict