source: molecuilder/src/element.hpp@ 4bc937

Last change on this file since 4bc937 was 4dca8e, checked in by Frederik Heber <heber@…>, 16 years ago

definitions for class element and verbose moved to their own header files and reducing contents of helpers.hpp

  • Property mode set to 100644
File size: 1.7 KB
Line 
1/*
2 * element.hpp
3 *
4 * Created on: Aug 3, 2009
5 * Author: heber
6 */
7
8#ifndef ELEMENT_HPP_
9#define ELEMENT_HPP_
10
11using namespace std;
12
13// include config.h
14#ifdef HAVE_CONFIG_H
15#include <config.h>
16#endif
17
18
19#include <iostream>
20
21#include "defs.hpp"
22
23/** Chemical element.
24 * Class incorporates data for a certain chemical element to be referenced from atom class.
25 */
26class element {
27 public:
28 double mass; //!< mass in g/mol
29 double CovalentRadius; //!< covalent radius
30 double VanDerWaalsRadius; //!< can-der-Waals radius
31 int Z; //!< atomic number
32 char name[64]; //!< atom name, i.e. "Hydrogren"
33 char symbol[3]; //!< short form of the atom, i.e. "H"
34 char period[8]; //!< period: n quantum number
35 char group[8]; //!< group: l quantum number
36 char block[8]; //!< block: l quantum number
37 element *previous; //!< previous item in list
38 element *next; //!< next element in list
39 int *sort; //!< sorc criteria
40 int No; //!< number of element set on periodentafel::Output()
41 double Valence; //!< number of valence electrons for this element
42 int NoValenceOrbitals; //!< number of valence orbitals, used for determining bond degree in molecule::CreateConnectmatrix()
43 double HBondDistance[NDIM]; //!< distance in Angstrom of this element to hydrogen (for single, double and triple bonds)
44 double HBondAngle[NDIM]; //!< typical angle for one, two, three bonded hydrogen (in degrees)
45
46 element();
47 ~element();
48
49 //> print element entries to screen
50 bool Output(ofstream *out) const;
51 bool Checkout(ofstream *out, const int No, const int NoOfAtoms) const;
52
53 private:
54};
55
56
57#endif /* ELEMENT_HPP_ */
Note: See TracBrowser for help on using the repository browser.