RDKit
Open-source cheminformatics and machine learning.
atomic_data.h
Go to the documentation of this file.
1 //
2 // Copyright (C) 2001-2008 Greg Landrum and Rational Discovery LLC
3 //
4 // @@ All Rights Reserved @@
5 // This file is part of the RDKit.
6 // The contents are covered by the terms of the BSD license
7 // which is included in the file license.txt, found at the root
8 // of the RDKit source tree.
9 //
10 
11 /*! \file atomic_data.h
12 
13  \brief No user-serviceable parts inside
14 
15  This stuff is used by the PeriodicTable interface
16 
17 */
18 #include <RDGeneral/export.h>
19 #ifndef __RD_ATOMIC_DATA_H
20 #define __RD_ATOMIC_DATA_H
21 
22 #include <RDGeneral/types.h>
23 #include <map>
24 
25 namespace RDKit {
26 RDKIT_GRAPHMOL_EXPORT extern const std::string periodicTableAtomData;
27 RDKIT_GRAPHMOL_EXPORT extern const std::string isotopesAtomData[];
28 namespace constants {
29 RDKIT_GRAPHMOL_EXPORT extern const double electronMass;
30 }
32  public:
33  atomicData(const std::string &dataLine);
35 
36  int AtomicNum() const { return anum; };
37 
38  int DefaultValence() const { return valence.front(); };
39 
40  int NumValence() const { return static_cast<int>(valence.size()); };
41 
42  const INT_VECT &ValenceList() const { return valence; };
43 
44  double Mass() const { return mass; };
45 
46  std::string Symbol() const { return symb; }
47 
48  double Rcov() const { return rCov; }
49 
50  double Rb0() const { return rB0; }
51 
52  double Rvdw() const { return rVdw; }
53 
54  int NumOuterShellElec() const { return nVal; }
55 
56  int MostCommonIsotope() const { return commonIsotope; }
57 
58  double MostCommonIsotopeMass() const { return commonIsotopeMass; }
59 
60  // maps isotope number -> mass
61  std::map<unsigned int, std::pair<double, double>>
62  d_isotopeInfoMap; // available isotopes
63  private:
64  int anum; // atomic number
65  std::string symb; // atomic symbol
66  double rCov, rB0, rVdw; // radii
67  INT_VECT valence; // list of all valences, the first one is the default
68  // valence, -1 at the end signifies that any upper valence
69  // is tolerated
70  double mass; // atomic mass
71  int nVal; // number of outer shell electrons
72  int commonIsotope; // most comon isotope
73  double commonIsotopeMass; // most comon isotope
74 };
75 }; // namespace RDKit
76 #endif
RDKit::atomicData::d_isotopeInfoMap
std::map< unsigned int, std::pair< double, double > > d_isotopeInfoMap
Definition: atomic_data.h:62
RDKit::atomicData::NumValence
int NumValence() const
Definition: atomic_data.h:40
RDKit::atomicData::AtomicNum
int AtomicNum() const
Definition: atomic_data.h:36
RDKit::atomicData::DefaultValence
int DefaultValence() const
Definition: atomic_data.h:38
RDKit::INT_VECT
std::vector< int > INT_VECT
Definition: types.h:254
types.h
RDKit::isotopesAtomData
const RDKIT_GRAPHMOL_EXPORT std::string isotopesAtomData[]
RDKit::periodicTableAtomData
const RDKIT_GRAPHMOL_EXPORT std::string periodicTableAtomData
RDKit::atomicData::~atomicData
~atomicData()
Definition: atomic_data.h:34
RDKit::atomicData::Symbol
std::string Symbol() const
Definition: atomic_data.h:46
RDKit::atomicData::Mass
double Mass() const
Definition: atomic_data.h:44
RDKIT_GRAPHMOL_EXPORT
#define RDKIT_GRAPHMOL_EXPORT
Definition: export.h:307
RDKit::atomicData::MostCommonIsotopeMass
double MostCommonIsotopeMass() const
Definition: atomic_data.h:58
RDKit::constants::electronMass
const RDKIT_GRAPHMOL_EXPORT double electronMass
RDKit::atomicData::MostCommonIsotope
int MostCommonIsotope() const
Definition: atomic_data.h:56
RDKit::atomicData
Definition: atomic_data.h:31
RDKit::atomicData::NumOuterShellElec
int NumOuterShellElec() const
Definition: atomic_data.h:54
RDKit::atomicData::ValenceList
const INT_VECT & ValenceList() const
Definition: atomic_data.h:42
RDKit
Std stuff.
Definition: Atom.h:30
RDKit::atomicData::Rvdw
double Rvdw() const
Definition: atomic_data.h:52
RDKit::atomicData::Rcov
double Rcov() const
Definition: atomic_data.h:48
RDKit::atomicData::Rb0
double Rb0() const
Definition: atomic_data.h:50
export.h