gov.nist.microanalysis.EPQLibrary
Class Element

java.lang.Object
  extended by gov.nist.microanalysis.EPQLibrary.Element
All Implemented Interfaces:
java.io.Serializable, java.lang.Comparable

public class Element
extends java.lang.Object
implements java.lang.Comparable, java.io.Serializable

A class representing an atomic element. This class also implements some static methods to facilitate using integer atomic numbers to represent elements.

Copyright: Pursuant to title 17 Section 105 of the United States Code this software is not subject to copyright protection and is in the public domain

Company: National Institute of Standards and Technology

Version:
1.0
Author:
Nicholas W. M. Ritchie
See Also:
Serialized Form

Field Summary
static Element Ac
           
static Element Ag
           
static Element Al
           
static Element Am
           
static Element Ar
           
static Element As
           
static Element At
           
static Element Au
           
static Element B
           
static Element Ba
           
static Element Be
           
static Element Bh
           
static Element Bi
           
static Element Bk
           
static Element Br
           
static Element C
           
static Element Ca
           
static Element Cd
           
static Element Ce
           
static Element Cf
           
static Element Cl
           
static Element Cm
           
static Element Co
           
static Element Cr
           
static Element Cs
           
static Element Cu
           
static Element Db
           
static Element Dy
           
static int elmAc
           
static int elmAg
           
static int elmAl
           
static int elmAm
           
static int elmAr
           
static int elmAs
           
static int elmAt
           
static int elmAu
           
static int elmB
           
static int elmBa
           
static int elmBe
           
static int elmBh
           
static int elmBi
           
static int elmBk
           
static int elmBr
           
static int elmC
           
static int elmCa
           
static int elmCd
           
static int elmCe
           
static int elmCf
           
static int elmCl
           
static int elmCm
           
static int elmCo
           
static int elmCr
           
static int elmCs
           
static int elmCu
           
static int elmDb
           
static int elmDy
           
static int elmEndOfElements
           
static int elmEr
           
static int elmEs
           
static int elmEu
           
static int elmF
           
static int elmFe
           
static int elmFm
           
static int elmFr
           
static int elmGa
           
static int elmGd
           
static int elmGe
           
static int elmH
           
static int elmHe
           
static int elmHf
           
static int elmHg
           
static int elmHo
           
static int elmHs
           
static int elmI
           
static int elmIn
           
static int elmIr
           
static int elmK
           
static int elmKr
           
static int elmLa
           
static int elmLi
           
static int elmLr
           
static int elmLu
           
static int elmMd
           
static int elmMg
           
static int elmMn
           
static int elmMo
           
static int elmMt
           
static int elmN
           
static int elmNa
           
static int elmNb
           
static int elmNd
           
static int elmNe
           
static int elmNi
           
static int elmNo
           
static int elmNone
           
static int elmNp
           
static int elmO
           
static int elmOs
           
static int elmP
           
static int elmPa
           
static int elmPb
           
static int elmPd
           
static int elmPm
           
static int elmPo
           
static int elmPr
           
static int elmPt
           
static int elmPu
           
static int elmRa
           
static int elmRb
           
static int elmRe
           
static int elmRf
           
static int elmRh
           
static int elmRn
           
static int elmRu
           
static int elmS
           
static int elmSb
           
static int elmSc
           
static int elmSe
           
static int elmSg
           
static int elmSi
           
static int elmSm
           
static int elmSn
           
static int elmSr
           
static int elmTa
           
static int elmTb
           
static int elmTc
           
static int elmTe
           
static int elmTh
           
static int elmTi
           
static int elmTl
           
static int elmTm
           
static int elmU
           
static int elmUub
           
static int elmUun
           
static int elmUuu
           
static int elmV
           
static int elmW
           
static int elmXe
           
static int elmY
           
static int elmYb
           
static int elmZn
           
static int elmZr
           
static Element Er
           
static Element Es
           
static Element Eu
           
static Element F
           
static Element Fe
           
static Element Fm
           
static Element Fr
           
static Element Ga
           
static Element Gd
           
static Element Ge
           
static Element H
           
static Element He
           
static Element Hf
           
static Element Hg
           
static Element Ho
           
static Element Hs
           
static Element I
           
static Element In
           
static Element Ir
           
static Element K
           
static Element Kr
           
static Element La
           
static Element Li
           
static Element Lr
           
static Element Lu
           
static Element Md
           
static Element Mg
           
static Element Mn
           
static Element Mo
           
static Element Mt
           
static Element N
           
static Element Na
           
static Element Nb
           
static Element Nd
           
static Element Ne
           
static Element Ni
           
static Element No
           
static Element None
           
static Element Np
           
static Element O
           
static Element Os
           
static Element P
           
static Element Pa
           
static Element Pb
           
static Element Pd
           
static Element Pm
           
static Element Po
           
static Element Pr
           
static Element Pt
           
static Element Pu
           
static Element Ra
           
static Element Rb
           
static Element Re
           
static Element Rf
           
static Element Rh
           
static Element Rn
           
static Element Ru
           
static Element S
           
static Element Sb
           
static Element Sc
           
static Element Se
           
static Element Sg
           
static Element Si
           
static Element Sm
           
static Element Sn
           
static Element Sr
           
static Element Ta
           
static Element Tb
           
static Element Tc
           
static Element Te
           
static Element Th
           
static Element Ti
           
static Element Tl
           
static Element Tm
           
static Element U
           
static Element Uub
           
static Element Uun
           
static Element Uuu
           
static Element V
           
static Element W
           
static Element Xe
           
static Element Y
           
static Element Yb
           
static Element Zn
           
static Element Zr
           
 
Method Summary
static java.util.List AllElements()
          AllElements - A immutable list of all elements (H->Uub).
static int atomicNumberForName(java.lang.String name)
          atomicNumberForName - Get the atomic number for the named element.
static Element byAtomicNumber(int an)
          byName - Get the Element associated with the specified atomic number.
static Element byName(java.lang.String name)
          byName - Get the Element associated with the specified name or abbreviation.
 int compareTo(java.lang.Object o)
          compareTo - Implements the Comparable interface.
 double energyLoss(double eK)
          energyLoss - Computes the energy lossed by an electron of the specified energy.
 boolean equals(java.lang.Object obj)
          equals - Returns true if this and obj represent the equivalent elements.
 int getAtomicNumber()
          getAtomicNumber - Get the atomic number of this element.
 double getAtomicWeight()
          AtomicWeight - A method to return the atomic weight of an element.
static double getAtomicWeight(int atomicNo)
          getAtomicWeight - A static method to return the atomic weight of an element specified by the atomic number.
 double getIonizationEnergy()
          getIonizationEnergy - Returns the first ionization energy for this element.
 double getMass()
          getMass - the mass of the element in kilograms.
 int hashCode()
          hashCode - Calculates a hash code that differentiates elements but not instances of elements.
 boolean isValid()
          isValid - A public method for determining whether this element represents a real element.
static boolean isValid(int atomicNo)
          isValid - A static method for determining whether an atomic number is in range understood by this class.
 double massAbsorptionCoefficient(double energy)
          massAbsorptionCoefficient - Calculates the mass absorption coefficient for x-rays of the specified energy in this element.
 double massAbsorptionCoefficient(XRayTransition xrt)
          massAbsorptionCoefficient - Calculates the mass absorption coefficient for x-rays of the specified x-ray transition.
 double meanIonizationPotential()
          MeanIonizationPotential - The mean ionization potential (often labeled J) for this element.
static double meanIonizationPotential(int atomicNo)
          meanIonizationPotential - Returns the meanIonizationPotential for the specified element in Joules.
 java.lang.String toAbbrev()
          toAbbrev - Returns the abbreviation associated with this element.
static java.lang.String toAbbrev(int atomicNo)
          toAbbrev - A static method that returns the abbreviation associated with the specified atomic number.
 java.lang.String toString()
          toString - Returns a string containing the elements name.
static java.lang.String toString(int el)
          toString - A static method that returns the name of the element with the specified atomic number.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

elmNone

public static final int elmNone
See Also:
Constant Field Values

elmH

public static final int elmH
See Also:
Constant Field Values

elmHe

public static final int elmHe
See Also:
Constant Field Values

elmLi

public static final int elmLi
See Also:
Constant Field Values

elmBe

public static final int elmBe
See Also:
Constant Field Values

elmB

public static final int elmB
See Also:
Constant Field Values

elmC

public static final int elmC
See Also:
Constant Field Values

elmN

public static final int elmN
See Also:
Constant Field Values

elmO

public static final int elmO
See Also:
Constant Field Values

elmF

public static final int elmF
See Also:
Constant Field Values

elmNe

public static final int elmNe
See Also:
Constant Field Values

elmNa

public static final int elmNa
See Also:
Constant Field Values

elmMg

public static final int elmMg
See Also:
Constant Field Values

elmAl

public static final int elmAl
See Also:
Constant Field Values

elmSi

public static final int elmSi
See Also:
Constant Field Values

elmP

public static final int elmP
See Also:
Constant Field Values

elmS

public static final int elmS
See Also:
Constant Field Values

elmCl

public static final int elmCl
See Also:
Constant Field Values

elmAr

public static final int elmAr
See Also:
Constant Field Values

elmK

public static final int elmK
See Also:
Constant Field Values

elmCa

public static final int elmCa
See Also:
Constant Field Values

elmSc

public static final int elmSc
See Also:
Constant Field Values

elmTi

public static final int elmTi
See Also:
Constant Field Values

elmV

public static final int elmV
See Also:
Constant Field Values

elmCr

public static final int elmCr
See Also:
Constant Field Values

elmMn

public static final int elmMn
See Also:
Constant Field Values

elmFe

public static final int elmFe
See Also:
Constant Field Values

elmCo

public static final int elmCo
See Also:
Constant Field Values

elmNi

public static final int elmNi
See Also:
Constant Field Values

elmCu

public static final int elmCu
See Also:
Constant Field Values

elmZn

public static final int elmZn
See Also:
Constant Field Values

elmGa

public static final int elmGa
See Also:
Constant Field Values

elmGe

public static final int elmGe
See Also:
Constant Field Values

elmAs

public static final int elmAs
See Also:
Constant Field Values

elmSe

public static final int elmSe
See Also:
Constant Field Values

elmBr

public static final int elmBr
See Also:
Constant Field Values

elmKr

public static final int elmKr
See Also:
Constant Field Values

elmRb

public static final int elmRb
See Also:
Constant Field Values

elmSr

public static final int elmSr
See Also:
Constant Field Values

elmY

public static final int elmY
See Also:
Constant Field Values

elmZr

public static final int elmZr
See Also:
Constant Field Values

elmNb

public static final int elmNb
See Also:
Constant Field Values

elmMo

public static final int elmMo
See Also:
Constant Field Values

elmTc

public static final int elmTc
See Also:
Constant Field Values

elmRu

public static final int elmRu
See Also:
Constant Field Values

elmRh

public static final int elmRh
See Also:
Constant Field Values

elmPd

public static final int elmPd
See Also:
Constant Field Values

elmAg

public static final int elmAg
See Also:
Constant Field Values

elmCd

public static final int elmCd
See Also:
Constant Field Values

elmIn

public static final int elmIn
See Also:
Constant Field Values

elmSn

public static final int elmSn
See Also:
Constant Field Values

elmSb

public static final int elmSb
See Also:
Constant Field Values

elmTe

public static final int elmTe
See Also:
Constant Field Values

elmI

public static final int elmI
See Also:
Constant Field Values

elmXe

public static final int elmXe
See Also:
Constant Field Values

elmCs

public static final int elmCs
See Also:
Constant Field Values

elmBa

public static final int elmBa
See Also:
Constant Field Values

elmLa

public static final int elmLa
See Also:
Constant Field Values

elmCe

public static final int elmCe
See Also:
Constant Field Values

elmPr

public static final int elmPr
See Also:
Constant Field Values

elmNd

public static final int elmNd
See Also:
Constant Field Values

elmPm

public static final int elmPm
See Also:
Constant Field Values

elmSm

public static final int elmSm
See Also:
Constant Field Values

elmEu

public static final int elmEu
See Also:
Constant Field Values

elmGd

public static final int elmGd
See Also:
Constant Field Values

elmTb

public static final int elmTb
See Also:
Constant Field Values

elmDy

public static final int elmDy
See Also:
Constant Field Values

elmHo

public static final int elmHo
See Also:
Constant Field Values

elmEr

public static final int elmEr
See Also:
Constant Field Values

elmTm

public static final int elmTm
See Also:
Constant Field Values

elmYb

public static final int elmYb
See Also:
Constant Field Values

elmLu

public static final int elmLu
See Also:
Constant Field Values

elmHf

public static final int elmHf
See Also:
Constant Field Values

elmTa

public static final int elmTa
See Also:
Constant Field Values

elmW

public static final int elmW
See Also:
Constant Field Values

elmRe

public static final int elmRe
See Also:
Constant Field Values

elmOs

public static final int elmOs
See Also:
Constant Field Values

elmIr

public static final int elmIr
See Also:
Constant Field Values

elmPt

public static final int elmPt
See Also:
Constant Field Values

elmAu

public static final int elmAu
See Also:
Constant Field Values

elmHg

public static final int elmHg
See Also:
Constant Field Values

elmTl

public static final int elmTl
See Also:
Constant Field Values

elmPb

public static final int elmPb
See Also:
Constant Field Values

elmBi

public static final int elmBi
See Also:
Constant Field Values

elmPo

public static final int elmPo
See Also:
Constant Field Values

elmAt

public static final int elmAt
See Also:
Constant Field Values

elmRn

public static final int elmRn
See Also:
Constant Field Values

elmFr

public static final int elmFr
See Also:
Constant Field Values

elmRa

public static final int elmRa
See Also:
Constant Field Values

elmAc

public static final int elmAc
See Also:
Constant Field Values

elmTh

public static final int elmTh
See Also:
Constant Field Values

elmPa

public static final int elmPa
See Also:
Constant Field Values

elmU

public static final int elmU
See Also:
Constant Field Values

elmNp

public static final int elmNp
See Also:
Constant Field Values

elmPu

public static final int elmPu
See Also:
Constant Field Values

elmAm

public static final int elmAm
See Also:
Constant Field Values

elmCm

public static final int elmCm
See Also:
Constant Field Values

elmBk

public static final int elmBk
See Also:
Constant Field Values

elmCf

public static final int elmCf
See Also:
Constant Field Values

elmEs

public static final int elmEs
See Also:
Constant Field Values

elmFm

public static final int elmFm
See Also:
Constant Field Values

elmMd

public static final int elmMd
See Also:
Constant Field Values

elmNo

public static final int elmNo
See Also:
Constant Field Values

elmLr

public static final int elmLr
See Also:
Constant Field Values

elmRf

public static final int elmRf
See Also:
Constant Field Values

elmDb

public static final int elmDb
See Also:
Constant Field Values

elmSg

public static final int elmSg
See Also:
Constant Field Values

elmBh

public static final int elmBh
See Also:
Constant Field Values

elmHs

public static final int elmHs
See Also:
Constant Field Values

elmMt

public static final int elmMt
See Also:
Constant Field Values

elmUun

public static final int elmUun
See Also:
Constant Field Values

elmUuu

public static final int elmUuu
See Also:
Constant Field Values

elmUub

public static final int elmUub
See Also:
Constant Field Values

elmEndOfElements

public static final int elmEndOfElements
See Also:
Constant Field Values

None

public static final Element None

H

public static final Element H

He

public static final Element He

Li

public static final Element Li

Be

public static final Element Be

B

public static final Element B

C

public static final Element C

N

public static final Element N

O

public static final Element O

F

public static final Element F

Ne

public static final Element Ne

Na

public static final Element Na

Mg

public static final Element Mg

Al

public static final Element Al

Si

public static final Element Si

P

public static final Element P

S

public static final Element S

Cl

public static final Element Cl

Ar

public static final Element Ar

K

public static final Element K

Ca

public static final Element Ca

Sc

public static final Element Sc

Ti

public static final Element Ti

V

public static final Element V

Cr

public static final Element Cr

Mn

public static final Element Mn

Fe

public static final Element Fe

Co

public static final Element Co

Ni

public static final Element Ni

Cu

public static final Element Cu

Zn

public static final Element Zn

Ga

public static final Element Ga

Ge

public static final Element Ge

As

public static final Element As

Se

public static final Element Se

Br

public static final Element Br

Kr

public static final Element Kr

Rb

public static final Element Rb

Sr

public static final Element Sr

Y

public static final Element Y

Zr

public static final Element Zr

Nb

public static final Element Nb

Mo

public static final Element Mo

Tc

public static final Element Tc

Ru

public static final Element Ru

Rh

public static final Element Rh

Pd

public static final Element Pd

Ag

public static final Element Ag

Cd

public static final Element Cd

In

public static final Element In

Sn

public static final Element Sn

Sb

public static final Element Sb

Te

public static final Element Te

I

public static final Element I

Xe

public static final Element Xe

Cs

public static final Element Cs

Ba

public static final Element Ba

La

public static final Element La

Ce

public static final Element Ce

Pr

public static final Element Pr

Nd

public static final Element Nd

Pm

public static final Element Pm

Sm

public static final Element Sm

Eu

public static final Element Eu

Gd

public static final Element Gd

Tb

public static final Element Tb

Dy

public static final Element Dy

Ho

public static final Element Ho

Er

public static final Element Er

Tm

public static final Element Tm

Yb

public static final Element Yb

Lu

public static final Element Lu

Hf

public static final Element Hf

Ta

public static final Element Ta

W

public static final Element W

Re

public static final Element Re

Os

public static final Element Os

Ir

public static final Element Ir

Pt

public static final Element Pt

Au

public static final Element Au

Hg

public static final Element Hg

Tl

public static final Element Tl

Pb

public static final Element Pb

Bi

public static final Element Bi

Po

public static final Element Po

At

public static final Element At

Rn

public static final Element Rn

Fr

public static final Element Fr

Ra

public static final Element Ra

Ac

public static final Element Ac

Th

public static final Element Th

Pa

public static final Element Pa

U

public static final Element U

Np

public static final Element Np

Pu

public static final Element Pu

Am

public static final Element Am

Cm

public static final Element Cm

Bk

public static final Element Bk

Cf

public static final Element Cf

Es

public static final Element Es

Fm

public static final Element Fm

Md

public static final Element Md

No

public static final Element No

Lr

public static final Element Lr

Rf

public static final Element Rf

Db

public static final Element Db

Sg

public static final Element Sg

Bh

public static final Element Bh

Hs

public static final Element Hs

Mt

public static final Element Mt

Uun

public static final Element Uun

Uuu

public static final Element Uuu

Uub

public static final Element Uub
Method Detail

atomicNumberForName

public static int atomicNumberForName(java.lang.String name)
atomicNumberForName - Get the atomic number for the named element. THe name may be the abbreviation or the full name (case insensitive)

Parameters:
name - String
Returns:
int

byName

public static Element byName(java.lang.String name)
byName - Get the Element associated with the specified name or abbreviation.

Parameters:
name - String
Returns:
Element

byAtomicNumber

public static Element byAtomicNumber(int an)
byName - Get the Element associated with the specified atomic number.

Parameters:
an - int - The atomic number
Returns:
Element

getAtomicWeight

public static final double getAtomicWeight(int atomicNo)
getAtomicWeight - A static method to return the atomic weight of an element specified by the atomic number.

Parameters:
atomicNo - int - The atomic number.
Returns:
double - The atomic weight in AMU.

AllElements

public static final java.util.List AllElements()
AllElements - A immutable list of all elements (H->Uub).

Returns:
List

meanIonizationPotential

public static double meanIonizationPotential(int atomicNo)
meanIonizationPotential - Returns the meanIonizationPotential for the specified element in Joules.

Parameters:
atomicNo - int
Returns:
double

getAtomicNumber

public final int getAtomicNumber()
getAtomicNumber - Get the atomic number of this element.

Returns:
int

getAtomicWeight

public final double getAtomicWeight()
AtomicWeight - A method to return the atomic weight of an element.

Returns:
double - The atomic weight in AMU.

getMass

public final double getMass()
getMass - the mass of the element in kilograms.

Returns:
double

toAbbrev

public final java.lang.String toAbbrev()
toAbbrev - Returns the abbreviation associated with this element.

Returns:
String

toAbbrev

public static final java.lang.String toAbbrev(int atomicNo)
toAbbrev - A static method that returns the abbreviation associated with the specified atomic number.

Parameters:
atomicNo - int - The atomic number.
Returns:
String

toString

public static java.lang.String toString(int el)
toString - A static method that returns the name of the element with the specified atomic number.

Parameters:
el - int - The atomic number
Returns:
String

meanIonizationPotential

public double meanIonizationPotential()
MeanIonizationPotential - The mean ionization potential (often labeled J) for this element. From the table when available or calculated using the Berger-Selzer formula.

Returns:
double - J in Joules

energyLoss

public double energyLoss(double eK)
energyLoss - Computes the energy lossed by an electron of the specified energy. Formula from Bethe with Joy-Luo's modification from Goldstein et al

Parameters:
eK - double - The electron energy in Joules
Returns:
double - in Joules per meter per kg/meter^3

massAbsorptionCoefficient

public double massAbsorptionCoefficient(double energy)
massAbsorptionCoefficient - Calculates the mass absorption coefficient for x-rays of the specified energy in this element.

Parameters:
energy - double - X-ray energy in Joules
Returns:
double - Absorption per unit length (meter) per unit density (kg/m^3)

massAbsorptionCoefficient

public double massAbsorptionCoefficient(XRayTransition xrt)
                                 throws EPQException
massAbsorptionCoefficient - Calculates the mass absorption coefficient for x-rays of the specified x-ray transition.

Parameters:
xrt - XRayTransition
Returns:
double - Absorption per unit length (meter) per unit density (kg/m^3)
Throws:
EPQException

isValid

public static final boolean isValid(int atomicNo)
isValid - A static method for determining whether an atomic number is in range understood by this class.

Parameters:
atomicNo - int
Returns:
boolean

isValid

public final boolean isValid()
isValid - A public method for determining whether this element represents a real element.

Returns:
boolean

compareTo

public int compareTo(java.lang.Object o)
compareTo - Implements the Comparable interface.

Specified by:
compareTo in interface java.lang.Comparable
Parameters:
o - Object
Returns:
int

hashCode

public int hashCode()
hashCode - Calculates a hash code that differentiates elements but not instances of elements.

Overrides:
hashCode in class java.lang.Object
Returns:
int

equals

public boolean equals(java.lang.Object obj)
equals - Returns true if this and obj represent the equivalent elements. (Same atomic number)

Overrides:
equals in class java.lang.Object
Parameters:
obj - Object
Returns:
boolean

toString

public java.lang.String toString()
toString - Returns a string containing the elements name.

Overrides:
toString in class java.lang.Object
Returns:
String

getIonizationEnergy

public double getIonizationEnergy()
getIonizationEnergy - Returns the first ionization energy for this element.

Returns:
In Joules