• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdeedu API Reference
  • KDE Home
  • Contact Us
 

kalzium/libscience

  • sources
  • kde-4.12
  • kdeedu
  • kalzium
  • libscience
isotope.h
Go to the documentation of this file.
1 #ifndef ISOTOPE_H
2 #define ISOTOPE_H
3 /***************************************************************************
4  * Copyright (C) 2005-2008 by Carsten Niehaus *
5  * cniehaus@kde.org *
6  * *
7  * This program is free software; you can redistribute it and/or modify *
8  * it under the terms of the GNU General Public License as published by *
9  * the Free Software Foundation; either version 2 of the License, or *
10  * (at your option) any later version. *
11  * *
12  * This program is distributed in the hope that it will be useful, *
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
15  * GNU General Public License for more details. *
16  * *
17  * You should have received a copy of the GNU General Public License *
18  * along with this program; if not, write to the *
19  * Free Software Foundation, Inc., *
20  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
21  ***************************************************************************/
22 
23 #include "chemicaldataobject.h"
24 
25 #include "libkdeedu_science_export.h"
26 
32 class SCIENCE_EXPORT Isotope
33 {
34  public:
38  Isotope();
39 
43  ~Isotope();
44 
49  struct Nucleons
50  {
54  int neutrons;
55 
59  int protons;
60  };
61 
65  double mass() const;
66 
70  QString errorMargin() const;
71 
76  int parentElementNumber() const;
77 
82  QString parentElementSymbol() const;
83 
84  QString spin() const;
85 
89  QString magmoment() const;
90 
91  QString abundance() const;
92 
97  double halflife() const;
98 
103  QString halflifeUnit() const;
104 
108  void addData( ChemicalDataObject o );
109 
113  void setNucleons( int number );
114 
118  int nucleons() const;
119 
123  double ecdecay() const;
124 
128  double eclikeliness() const;
129 
133  double betaminusdecay() const;
137  double betaminuslikeliness() const;
138 
142  double betaplusdecay() const;
143 
147  double betapluslikeliness() const;
148 
152  double alphadecay() const;
153 
154 
158  double alphalikeliness() const;
159 
163  enum Decay
164  {
165  ALPHA,
166  BETAPLUS,
167  BETAMINUS,
168  EC
169  };
170 
174  Isotope::Nucleons nucleonsAfterDecay( Decay kind );
175 
176 
177  private:
181  ChemicalDataObject m_parentElementSymbol;
182 
186  ChemicalDataObject m_mass;
187 
191  ChemicalDataObject m_identifier;
192 
196  ChemicalDataObject m_spin;
197 
201  ChemicalDataObject m_magmoment;
202 
206  ChemicalDataObject m_abundance;
207 
211  ChemicalDataObject m_halflife;
212 
216  ChemicalDataObject m_ecdecay;
217  ChemicalDataObject m_betaplusdecay;
218  ChemicalDataObject m_betaminusdecay;
219  ChemicalDataObject m_alphadecay;
220 
224  ChemicalDataObject m_eclikeliness;
225  ChemicalDataObject m_betapluslikeliness;
226  ChemicalDataObject m_betaminuslikeliness;
227  ChemicalDataObject m_alphalikeliness;
228 
229  int m_numberOfNucleons;
230 };
231 
232 #endif // ISOTOPE_H
libkdeedu_science_export.h
Isotope::Nucleons::protons
int protons
the number of protons of the isotope
Definition: isotope.h:59
Isotope
Definition: isotope.h:32
Isotope::Nucleons
This struct stores the information how the nucleons in the isotopes are split into neutrons and proto...
Definition: isotope.h:49
Isotope::Nucleons::neutrons
int neutrons
the number of neutrons of the isotope
Definition: isotope.h:54
Isotope::Decay
Decay
This enum stores the different kinds of decay.
Definition: isotope.h:163
ChemicalDataObject
A ChemicalDataObject is an object which contains information about a chemical element.
Definition: chemicaldataobject.h:38
chemicaldataobject.h
SCIENCE_EXPORT
#define SCIENCE_EXPORT
Definition: libkdeedu_science_export.h:32
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:35:31 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

kalzium/libscience

Skip menu "kalzium/libscience"
  • Main Page
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members

kdeedu API Reference

Skip menu "kdeedu API Reference"
  • Analitza
  •     lib
  • kalgebra
  • kalzium
  •   libscience
  • kanagram
  • kig
  •   lib
  • klettres
  • kstars
  • libkdeedu
  •   keduvocdocument
  • marble
  • parley
  • rocs
  •   App
  •   RocsCore
  •   VisualEditor
  •   stepcore

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal