Home  · Classes  · Annotated Classes  · Modules  · Members  · Namespaces  · Related Pages
Protected Member Functions | Protected Attributes | Private Member Functions

ElementDB Class Reference
[Chemistry]

Stores elements. More...

#include <OpenMS/CHEMISTRY/ElementDB.h>

List of all members.

Public Member Functions

Predicates

bool hasElement (const String &name) const
 returns true if the db contains an element with the given name
bool hasElement (UInt atomic_number) const
 returns true if the db contains an element with the given atomic_number

Protected Member Functions

IsotopeDistribution parseIsotopeDistribution_ (const Map< UInt, double > &distribution)
double calculateAvgWeight_ (const Map< UInt, double > &Z_to_abundance, const Map< UInt, double > &Z_to_mass)
double calculateMonoWeight_ (const Map< UInt, double > &Z_to_mass)
void readFromFile_ (const String &file_name)
void clear_ ()

Protected Attributes

Map< String, const Element * > names_
Map< String, const Element * > symbols_
Map< UInt, const Element * > atomic_numbers_

Private Member Functions

 ElementDB ()
 ElementDB (const ElementDB &db)
ElementDBoperator= (const ElementDB &db)
virtual ~ElementDB ()

Accessors



static const ElementDBgetInstance ()
 returns a pointer to the singleton instance of the element db
const Map< String, const
Element * > & 
getNames () const
 returns a hashmap that contains names mapped to pointers to the elements
const Map< String, const
Element * > & 
getSymbols () const
 returns a hashmap that contains symbols mapped to pointers to the elements
const Map< UInt, const Element * > & getAtomicNumbers () const
 returns a hashmap that contains atomic numbers mapped to pointers of the elements
const ElementgetElement (const String &name) const
const ElementgetElement (UInt atomic_number) const
 returns a pointer to the element of atomic number; if no element is found 0 is returned
ElementgetElement (const String &name)
 mutable access to the elements by name
ElementgetElement (UInt atomic_number)
 mutable access to the elements by atomic number

Detailed Description

Stores elements.

The elements weights (in the default file) are taken from "Isotopic Compositions of the Elements 1997", Pure Appl. Chem., 70(1), 217-235, 1998. (http://www.iupac.org/reports/1998/7001rosman/)

The isotope distributions (in the default file) are taken from "Atomic weights of the elements. Review 2000" (IUPAC Technical Report) Pure Appl. Chem., 2003, Vol. 75, No. 6, pp. 683-799 doi:10.1351/pac200375060683

This singleton stores all elements. The elements are taken from the publications given above and are stored in share/OpenMS/CHEMISTRY/Elements.xml.

Specific isotopes of elements can be accessed by writing the atomic number of the isotope in brackets followed by the element name, e.g. "(2)H" for deuterium.

Improvement:
include exact mass values for the isotopes (done) and update IsotopeDistribution (Andreas)
Improvement:
add exact isotope distribution based on exact isotope values (Andreas)

Constructor & Destructor Documentation

ElementDB (  )  [private]
ElementDB ( const ElementDB db  )  [private]
virtual ~ElementDB (  )  [private, virtual]

Member Function Documentation

double calculateAvgWeight_ ( const Map< UInt, double > &  Z_to_abundance,
const Map< UInt, double > &  Z_to_mass 
) [protected]
double calculateMonoWeight_ ( const Map< UInt, double > &  Z_to_mass  )  [protected]
void clear_ (  )  [protected]
const Map<UInt, const Element *>& getAtomicNumbers (  )  const

returns a hashmap that contains atomic numbers mapped to pointers of the elements

const Element* getElement ( const String name  )  const

returns a pointer to the element with name or symbol given in parameter name; if no element exists with that name or symbol 0 is returned

Parameters:
name,: name or symbol of the element

Referenced by FeatureFinderAlgorithmPicked< PeakType, FeatureType >::run().

Element* getElement ( UInt  atomic_number  ) 

mutable access to the elements by atomic number

const Element* getElement ( UInt  atomic_number  )  const

returns a pointer to the element of atomic number; if no element is found 0 is returned

Element* getElement ( const String name  ) 

mutable access to the elements by name

static const ElementDB* getInstance (  )  [inline, static]

returns a pointer to the singleton instance of the element db

Referenced by FeatureFinderAlgorithmPicked< PeakType, FeatureType >::run().

const Map<String, const Element *>& getNames (  )  const

returns a hashmap that contains names mapped to pointers to the elements

const Map<String, const Element *>& getSymbols (  )  const

returns a hashmap that contains symbols mapped to pointers to the elements

bool hasElement ( const String name  )  const

returns true if the db contains an element with the given name

bool hasElement ( UInt  atomic_number  )  const

returns true if the db contains an element with the given atomic_number

ElementDB& operator= ( const ElementDB db  )  [private]
IsotopeDistribution parseIsotopeDistribution_ ( const Map< UInt, double > &  distribution  )  [protected]
void readFromFile_ ( const String file_name  )  [protected]

Member Data Documentation

Map<UInt, const Element *> atomic_numbers_ [protected]
Map<String, const Element *> names_ [protected]
Map<String, const Element *> symbols_ [protected]

OpenMS / TOPP release 1.10.0 Documentation generated on Thu Mar 7 2013 09:42:50 using doxygen 1.7.1