BALL  1.5.0
Public Types | List of all members
BALL::Element Class Reference

#include <BALL/KERNEL/PTE.h>

Public Types

enum  Name {
  ACTINIUM = 0 , ALUMINUM , AMERICIUM , ANTIMONY ,
  STIBIUM = ANTIMONY , ARGON , ARSENIC , ASTATINE ,
  BARIUM , BERKELIUM , BERYLLIUM , BISMUTH ,
  WISMUT = BISMUTH , BOHRIUM , BORON , BROMINE ,
  CADMIUM , CAESIUM , CALCIUM , CALIFORNIUM ,
  CARBON , CARBONEUM = CARBON , CERIUM , CHLORINE ,
  CHROMIUM , COBALT , COPPER , CUPRUM = COPPER ,
  CURIUM , DUBNIUM , DYSPROSIUM , EINSTEINIUM ,
  ERBIUM , EUROPIUM , FERMIUM , FLUORINE ,
  FRANCIUM , GADOLINIUM , GALLIUM , GERMANIUM ,
  GOLD , AURUM = GOLD , HAFNIUM , HAHNIUM ,
  HELIUM , HOLMIUM , HYDROGEN , HYDROGENIUM = HYDROGEN ,
  INDIUM , IODINE , JOD = IODINE , IRIDIUM ,
  IRON , FERRUM = IRON , JOLIOTIUM , KRYPTON ,
  LANTHANUM , LAWRENCIUM , LEAD , PLUMBUM = LEAD ,
  LITHIUM , LUTETIUM , MAGNESIUM , MANGANESE ,
  MANGAN = MANGANESE , MEITNERIUM , MENDELEVIUM , MERCURY ,
  HYDRARGYRUM = MERCURY , MERCURIUM = MERCURY , MOLYBDENUM , NEODYMIUM ,
  NEON , NEPTUNIUM , NICKEL , NIOBIUM ,
  NITROGEN , NITROGENIUM = NITROGEN , NOBELIUM , OSMIUM ,
  OXYGEN , OXYGENIUM = OXYGEN , PALLADIUM , PHOSPHORUS ,
  PLATINUM , PLUTONIUM , POLONIUM , POTASSIUM ,
  KALIUM = POTASSIUM , PRASEODYMIUM , PROMETHIUM , PROTACTINIUM ,
  RADIUM , RADON , RHENIUM , RHODIUM ,
  RUBIDIUM , RUTHENIUM , RUTHERFORDIUM , SAMARIUM ,
  SCANDIUM , SELENIUM , SILICON , SILICIUM = SILICON ,
  SILVER , ARGENTUM = SILVER , SODIUM , NATRIUM = SODIUM ,
  STRONTIUM , SULPHUR , SULFUR = SULPHUR , TANTALUM ,
  TECHNETIUM , TELLURIUM , TERBIUM , THALLIUM ,
  THORIUM , THULIUM , TIN , STANNUM = TIN ,
  TITANIUM , TUNGSTEN , WOLFRAM = TUNGSTEN , UNUNBIUM ,
  UNUNNILIUM , UNUNNINIUM , URANIUM , VANADIUM ,
  XENON , YTTERBIUM , YTTRIUM , ZINC ,
  ZINCUM = ZINC , ZIRCONIUM , NUMBER_OF_ELEMENTS
}
 
typedef short Group
 
typedef short Period
 
typedef short AtomicNumber
 
Symbol

Element symbols.

enum  Symbol {
  Ac = 0 , Al , Am , Sb ,
  Ar , As , At , Ba ,
  Bk , Be , Bi , Bh ,
  B , Br , Cd , Cs ,
  Ca , Cf , C , Ce ,
  Cl , Cr , Co , Cu ,
  Cm , Db , Dy , Es ,
  Er , Eu , Fm , F ,
  Fr , Gd , Ga , Ge ,
  Au , Hf , Hn , He ,
  Ho , H , In , I ,
  Ir , Fe , Jl , Kr ,
  La , Lr , Pb , Li ,
  Lu , Mg , Mn , Mt ,
  Md , Hg , Mo , Nd ,
  Ne , Np , Ni , Nb ,
  N , No , Os , O ,
  Pd , P , Pt , Pu ,
  Po , K , Pr , Pm ,
  Pa , Ra , Rn , Re ,
  Rh , Rb , Ru , Rf ,
  Sm , Sc , Se , Si ,
  Ag , Na , Sr , S ,
  Ta , Tc , Te , Tb ,
  Tl , Th , Tm , Sn ,
  Ti , W , Uub , Uun ,
  Uuu , U , V , Xe ,
  Yb , Y , Zn , Zr
}
 

Public Member Functions

Constructors and Destructors.
 Element ()
 
 Element (const Element &element)
 
 Element (const String &name, const String &symbol, Group group, Period period, AtomicNumber atomic_umber, float atomic_weight, float atomic_radius, float covalent_radius, float van_der_waals_radius, bool is_metal, float electronegativity)
 
virtual ~Element ()
 
virtual void clear ()
 
Assignment
Elementoperator= (const Element &element)
 
Inspectors and Mutators
void setName (const String &name)
 
const StringgetName () const
 
void setSymbol (const String &symbol)
 
const StringgetSymbol () const
 
void setGroup (Group group)
 
Group getGroup () const
 
void setPeriod (Period period)
 
Period getPeriod () const
 
void setAtomicNumber (AtomicNumber atomic_number)
 
AtomicNumber getAtomicNumber () const
 
void setAtomicWeight (float atomic_weight)
 
float getAtomicWeight () const
 
void setAtomicRadius (float atomic_radius)
 
float getAtomicRadius () const
 
void setCovalentRadius (float covalent_radius)
 
float getCovalentRadius () const
 
void setVanDerWaalsRadius (float van_der_waals_radius)
 
float getVanDerWaalsRadius () const
 
void setElectronegativity (float electronegativity)
 
float getElectronegativity () const
 

Predicates

static Element UNKNOWN
 
bool isUnknown () const
 
bool isMetal () const
 

Operators

bool operator== (const Element &element) const
 
bool operator!= (const Element &element) const
 
bool operator< (const Element &element) const
 
bool operator<= (const Element &element) const
 
bool operator>= (const Element &element) const
 
bool operator> (const Element &element) const
 
BALL_EXPORT friend std::ostream & operator<< (std::ostream &s, const Element &element)
 

Detailed Description

Element class. <>

Definition at line 54 of file PTE.h.

Member Typedef Documentation

◆ AtomicNumber

AtomicNumber

Definition at line 70 of file PTE.h.

◆ Group

typedef short BALL::Element::Group

Group

Definition at line 62 of file PTE.h.

◆ Period

typedef short BALL::Element::Period

Period

Definition at line 66 of file PTE.h.

Member Enumeration Documentation

◆ Name

Name Element names.

Enumerator
ACTINIUM 
ALUMINUM 
AMERICIUM 
ANTIMONY 
STIBIUM 
ARGON 
ARSENIC 
ASTATINE 
BARIUM 
BERKELIUM 
BERYLLIUM 
BISMUTH 
WISMUT 
BOHRIUM 
BORON 
BROMINE 
CADMIUM 
CAESIUM 
CALCIUM 
CALIFORNIUM 
CARBON 
CARBONEUM 
CERIUM 
CHLORINE 
CHROMIUM 
COBALT 
COPPER 
CUPRUM 
CURIUM 
DUBNIUM 
DYSPROSIUM 
EINSTEINIUM 
ERBIUM 
EUROPIUM 
FERMIUM 
FLUORINE 
FRANCIUM 
GADOLINIUM 
GALLIUM 
GERMANIUM 
GOLD 
AURUM 
HAFNIUM 
HAHNIUM 
HELIUM 
HOLMIUM 
HYDROGEN 
HYDROGENIUM 
INDIUM 
IODINE 
JOD 
IRIDIUM 
IRON 
FERRUM 
JOLIOTIUM 
KRYPTON 
LANTHANUM 
LAWRENCIUM 
LEAD 
PLUMBUM 
LITHIUM 
LUTETIUM 
MAGNESIUM 
MANGANESE 
MANGAN 
MEITNERIUM 
MENDELEVIUM 
MERCURY 
HYDRARGYRUM 
MERCURIUM 
MOLYBDENUM 
NEODYMIUM 
NEON 
NEPTUNIUM 
NICKEL 
NIOBIUM 
NITROGEN 
NITROGENIUM 
NOBELIUM 
OSMIUM 
OXYGEN 
OXYGENIUM 
PALLADIUM 
PHOSPHORUS 
PLATINUM 
PLUTONIUM 
POLONIUM 
POTASSIUM 
KALIUM 
PRASEODYMIUM 
PROMETHIUM 
PROTACTINIUM 
RADIUM 
RADON 
RHENIUM 
RHODIUM 
RUBIDIUM 
RUTHENIUM 
RUTHERFORDIUM 
SAMARIUM 
SCANDIUM 
SELENIUM 
SILICON 
SILICIUM 
SILVER 
ARGENTUM 
SODIUM 
NATRIUM 
STRONTIUM 
SULPHUR 
SULFUR 
TANTALUM 
TECHNETIUM 
TELLURIUM 
TERBIUM 
THALLIUM 
THORIUM 
THULIUM 
TIN 
STANNUM 
TITANIUM 
TUNGSTEN 
WOLFRAM 
UNUNBIUM 
UNUNNILIUM 
UNUNNINIUM 
URANIUM 
VANADIUM 
XENON 
YTTERBIUM 
YTTRIUM 
ZINC 
ZINCUM 
ZIRCONIUM 
NUMBER_OF_ELEMENTS 

Definition at line 75 of file PTE.h.

◆ Symbol

Enumerator
Ac 
Al 
Am 
Sb 
Ar 
As 
At 
Ba 
Bk 
Be 
Bi 
Bh 
Br 
Cd 
Cs 
Ca 
Cf 
Ce 
Cl 
Cr 
Co 
Cu 
Cm 
Db 
Dy 
Es 
Er 
Eu 
Fm 
Fr 
Gd 
Ga 
Ge 
Au 
Hf 
Hn 
He 
Ho 
In 
Ir 
Fe 
Jl 
Kr 
La 
Lr 
Pb 
Li 
Lu 
Mg 
Mn 
Mt 
Md 
Hg 
Mo 
Nd 
Ne 
Np 
Ni 
Nb 
No 
Os 
Pd 
Pt 
Pu 
Po 
Pr 
Pm 
Pa 
Ra 
Rn 
Re 
Rh 
Rb 
Ru 
Rf 
Sm 
Sc 
Se 
Si 
Ag 
Na 
Sr 
Ta 
Tc 
Te 
Tb 
Tl 
Th 
Tm 
Sn 
Ti 
Uub 
Uun 
Uuu 
Xe 
Yb 
Zn 
Zr 

Definition at line 196 of file PTE.h.

Constructor & Destructor Documentation

◆ Element() [1/3]

BALL::Element::Element ( )

Default constructor The instance is set to the default values (= UNKNOWN element).

◆ Element() [2/3]

BALL::Element::Element ( const Element element)

Constructor

◆ Element() [3/3]

BALL::Element::Element ( const String name,
const String symbol,
Group  group,
Period  period,
AtomicNumber  atomic_umber,
float  atomic_weight,
float  atomic_radius,
float  covalent_radius,
float  van_der_waals_radius,
bool  is_metal,
float  electronegativity 
)

Detailed constructor

◆ ~Element()

virtual BALL::Element::~Element ( )
virtual

Destructor

Member Function Documentation

◆ clear()

virtual void BALL::Element::clear ( )
virtual

Clear method. The instance is set to the default values (= UNKNOWN element).

◆ getAtomicNumber()

AtomicNumber BALL::Element::getAtomicNumber ( ) const

Get the atomic number.

Returns
AtomicNumber (short) - the atomic number

◆ getAtomicRadius()

float BALL::Element::getAtomicRadius ( ) const

Get the atomic radius.

Returns
float the atomic radius (in Angstrom)

◆ getAtomicWeight()

float BALL::Element::getAtomicWeight ( ) const

Get the atomic weight.

Returns
float - the atomic weight

◆ getCovalentRadius()

float BALL::Element::getCovalentRadius ( ) const

Get the covalent radius.

Returns
float the covalent radius (in Angstrom)

◆ getElectronegativity()

float BALL::Element::getElectronegativity ( ) const

Get the electronegativity.

Returns
float the electronegativity (according to the Pauling scale)

◆ getGroup()

Group BALL::Element::getGroup ( ) const

Get the atomic group.

Returns
Group (short) - the group

◆ getName()

const String& BALL::Element::getName ( ) const

Get the name.

Returns
The name of the element. For example if the Element is a hydrogen the string "Hydrogen" is returned.

◆ getPeriod()

Period BALL::Element::getPeriod ( ) const

Get the atomic period.

Returns
Period (short) the period

◆ getSymbol()

const String& BALL::Element::getSymbol ( ) const

Get the atomic symbol.

Returns
String the symbol

◆ getVanDerWaalsRadius()

float BALL::Element::getVanDerWaalsRadius ( ) const

Get the VanDerWaals radius.

Returns
float the VanDerWaals radius (in Angstrom)

◆ isMetal()

bool BALL::Element::isMetal ( ) const

Test if the Element is a metal.

Returns
true if the Element represents a metal.

◆ isUnknown()

bool BALL::Element::isUnknown ( ) const

Test if this instance is unknown. Returns true if instance is equal the static Element UNKNOWN (The default constructor returns such an element).

Returns
bool

◆ operator!=()

bool BALL::Element::operator!= ( const Element element) const

Inequality operator. Tests if the atomic number of two elements are inequal.

Parameters
elementthe Element to compare with
Returns
bool

◆ operator<()

bool BALL::Element::operator< ( const Element element) const

Less operator. Tests if the atomic number of this instance is less compared with element .

Parameters
elementthe Element to compare with
Returns
bool

◆ operator<=()

bool BALL::Element::operator<= ( const Element element) const

Less or equal operator. Tests if the atomic number of this instance is less or equal compared with element .

Parameters
element,theElement to compare with
Returns
bool

◆ operator=()

Element& BALL::Element::operator= ( const Element element)

Assignment operator.

Parameters
elementthe Element to be copied (cloned)
Returns
Element& - this instance

◆ operator==()

bool BALL::Element::operator== ( const Element element) const

Equality operator. Tests if the atomic number of two elements are equal.

Parameters
elementthe Element to compare with
Returns
bool

◆ operator>()

bool BALL::Element::operator> ( const Element element) const

Greater operator. Tests if the atomic number of this instance is greater than element .

Parameters
elementthe Element to compare with
Returns
bool

◆ operator>=()

bool BALL::Element::operator>= ( const Element element) const

Greater or equal operator. Tests if the atomic number of this instance is greater or equal compared with element .

Parameters
elementthe Element to compare with
Returns
bool

◆ setAtomicNumber()

void BALL::Element::setAtomicNumber ( AtomicNumber  atomic_number)

Set the atomic number.

Parameters
atomic_numberthe new atomic number

◆ setAtomicRadius()

void BALL::Element::setAtomicRadius ( float  atomic_radius)

Set the atomic radius.

Parameters
atomic_radiusthe new atomic radius (in Angstrom)

◆ setAtomicWeight()

void BALL::Element::setAtomicWeight ( float  atomic_weight)

Set the atomic weight.

Parameters
atomic_weightthe new atomic weight

◆ setCovalentRadius()

void BALL::Element::setCovalentRadius ( float  covalent_radius)

Set the covalent radius.

Parameters
covalent_radiusthe new covalent radius (in Angstrom)

◆ setElectronegativity()

void BALL::Element::setElectronegativity ( float  electronegativity)

Set the electronegativity.

Parameters
electronegativitythe new electronegativity (according to the Pauling scale)

◆ setGroup()

void BALL::Element::setGroup ( Group  group)

Set the atomic group.

Parameters
group(short) the new group

◆ setName()

void BALL::Element::setName ( const String name)

Set the name.

Parameters
namethe new name

◆ setPeriod()

void BALL::Element::setPeriod ( Period  period)

Set the atomic period.

Parameters
period(short) the new period

◆ setSymbol()

void BALL::Element::setSymbol ( const String symbol)

Set the atomic symbol.

Parameters
symbolthe new symbol

◆ setVanDerWaalsRadius()

void BALL::Element::setVanDerWaalsRadius ( float  van_der_waals_radius)

Set the VanDerWaals radius.

Parameters
van_der_waals_radiusthe new VanDerWaals radius (in Angstrom)

Friends And Related Function Documentation

◆ operator<<

BALL_EXPORT friend std::ostream& operator<< ( std::ostream &  s,
const Element element 
)
friend

Output operator Prints this instance of Element.

Element output operator. Prints the contents of an instance of Element to an ostream.

Member Data Documentation

◆ UNKNOWN

Element BALL::Element::UNKNOWN
static

Standard element. (The default constructor returns such an element).

Definition at line 550 of file PTE.h.