Last change
on this file since a71ad8 was 5dba7a, checked in by Tillmann Crueger <crueger@…>, 15 years ago |
Made the periodentafel use STL-containers instead of custom llists
|
-
Property mode
set to
100755
|
File size:
1.7 KB
|
Rev | Line | |
---|
[a0bcf1] | 1 | /** \file element.cpp
|
---|
| 2 | *
|
---|
| 3 | * Function implementations for the class element.
|
---|
| 4 | *
|
---|
| 5 | */
|
---|
| 6 |
|
---|
[4dca8e] | 7 | #include <iomanip>
|
---|
| 8 | #include <fstream>
|
---|
| 9 |
|
---|
| 10 | #include "element.hpp"
|
---|
[a0bcf1] | 11 |
|
---|
[5dba7a] | 12 | using namespace std;
|
---|
| 13 |
|
---|
[a0bcf1] | 14 | /************************************* Functions for class element **********************************/
|
---|
| 15 |
|
---|
| 16 | /** Constructor of class element.
|
---|
| 17 | */
|
---|
[828556] | 18 | element::element() :
|
---|
| 19 | mass(0),
|
---|
| 20 | CovalentRadius(0),
|
---|
| 21 | VanDerWaalsRadius(0),
|
---|
| 22 | Z(-1),
|
---|
| 23 | previous(NULL),
|
---|
| 24 | next(NULL),
|
---|
| 25 | sort(NULL),
|
---|
| 26 | No(-1),
|
---|
| 27 | Valence(0),
|
---|
| 28 | NoValenceOrbitals(0)
|
---|
| 29 | {
|
---|
[51483b] | 30 | };
|
---|
[a0bcf1] | 31 |
|
---|
| 32 | /** Destructor of class element.
|
---|
| 33 | */
|
---|
| 34 | element::~element() {};
|
---|
| 35 |
|
---|
| 36 | /** Prints element data to \a *out.
|
---|
| 37 | * \param *out outstream
|
---|
| 38 | */
|
---|
[5dba7a] | 39 | bool element::Output(ostream * const out) const
|
---|
[a0bcf1] | 40 | {
|
---|
[a048fa] | 41 | if (out != NULL) {
|
---|
| 42 | *out << name << "\t" << symbol << "\t" << period << "\t" << group << "\t" << block << "\t" << Z << "\t" << mass << "\t" << CovalentRadius << "\t" << VanDerWaalsRadius << endl;
|
---|
| 43 | //*out << Z << "\t" << fixed << setprecision(11) << showpoint << mass << "g/mol\t" << name << "\t" << symbol << "\t" << endl;
|
---|
| 44 | return true;
|
---|
| 45 | } else
|
---|
| 46 | return false;
|
---|
[a0bcf1] | 47 | };
|
---|
| 48 |
|
---|
| 49 | /** Prints element data to \a *out.
|
---|
| 50 | * \param *out outstream
|
---|
[a048fa] | 51 | * \param No cardinal number of element
|
---|
[a0bcf1] | 52 | * \param NoOfAtoms total number of atom of this element type
|
---|
| 53 | */
|
---|
[5dba7a] | 54 | bool element::Checkout(ostream * const out, const int Number, const int NoOfAtoms) const
|
---|
[a0bcf1] | 55 | {
|
---|
[a048fa] | 56 | if (out != NULL) {
|
---|
| 57 | *out << "Ion_Type" << Number << "\t" << NoOfAtoms << "\t" << Z << "\t1.0\t3\t3\t" << fixed << setprecision(11) << showpoint << mass << "\t" << name << "\t" << symbol <<endl;
|
---|
| 58 | return true;
|
---|
| 59 | } else
|
---|
| 60 | return false;
|
---|
[a0bcf1] | 61 | };
|
---|
[5dba7a] | 62 |
|
---|
| 63 | atomicNumber_t element::getNumber() const{
|
---|
| 64 | return Z;
|
---|
| 65 | }
|
---|
| 66 |
|
---|
| 67 | string element::getSymbol() const{
|
---|
| 68 | return string(symbol);
|
---|
| 69 | }
|
---|
Note:
See
TracBrowser
for help on using the repository browser.