Morphochem

Quadratic index

CDL descriptor
Descriptor Category : topological
c++ entity: functor

Description

Topological descriptor related to the first Zabgreb index, and defined as :

 

Equation 1: Quadratic index.

 

Where A is the number of atoms, and M1 is the first Zagreb index.

Prototype

Operator() is overloaded.
  template <class HDepletedMolecule>
  struct quadratic_index : std::binary_function<HDepletedMolecule,
  size_t,typename HDepletedMolecule::calc_type> {

    result_type operator()(typename boost::call_traits<first_argument_type>::param_type m,
    second_argument_type first_zagreb_indx);

    result_type operator()(boost::call_traits<first_argument_type>::param_type m);

  };

Where defined

morpho/cdl/descriptors/topological.hpp

Namespace

morpho::cdl

Inherits from

std::binary_function<Molecule,size_t,typename Molecule::calc_type>

Arguments

ArgumentModel of
Molecule cdl::molecule
first_zagreb_index size_t

For the first version, and

ArgumentModel of
Molecule cdl::molecule

For the second version.

Example

// suppose you're streaming a mol format from the stdin:
typedef desc_molecular_properties<>   desc_mol_props_t;
typedef boost::property<mol_propsS, molecular_properties<>,
  boost::property<descriptors_mol_propsS, desc_mol_props_t> > descr_props_t;
typedef molecule<double,descr_props_t>    M;
morpho::cdl::nail_juice<M>             j;
morpho::cdl::get_juice_from_stream(std::cin, j, 0, sdf_formatT());
M   mol(j);
morpho::cdl::quadratic_index<M>    QI;
std::cout << "Quadratic index of my mol: ";
std::cout << QI(mol) << '\n';

Related Items

Zagreb indices

References

  1. Balaban, A.T.; "Five new topological indices for the branching of a tree- like graph"; Theo.Chim.Acta. 53. 355-375. 1979.
  2. Todeschini, R.; Consonni, V. "Handbook of Molecular Descriptors". Wiley-VCH, Methods and Principles in Medicinal Chemistry. Volume 11. 2000.


Copyright (c) Vladimir Josef Sykora and Morphochem AG 2003