Package chemaxon.struc
Class PeriodicTable
java.lang.Object
chemaxon.struc.PeriodicTable
Periodic table of the elements.
Provides basic information of the chemical elements and their isotopes.
Information on the elements are stored at element.zip. By default, this file is located at the chemaxon directory, but it can be overwritten by a file having the same name at user_home/chemaxon directory.
Information on the elements are stored at isotopes.data. By default, this file is located at the chemaxon directory but it can be overwritten by a file having the same name at user_home/chemaxon directory.
Metal/non-metal classification of elements is based on PubChem Periodic Table of Elements.
API usage example:
int elementCount = PeriodicTable.getElementCount(); // number of elements in the periodic table
int isotopeCount = PeriodicTable.getIsotopeCount(); // number of isotopes in the periodic table
String symbol = PeriodicTable.getSymbol(6); // element symbol of the 6th element
String name = PeriodicTable.getName(6); // element name of the 6th element
int atomicNumber = PeriodicTable.getAtomicNumber("C"); // atomic number of carbon
double mass = PeriodicTable.getMass(6); // elemental mass (weight) of an element
int precision = PeriodicTable.getMassPrecision(6); // precision of a certain the elemental mass (weight)
int isotopes = PeriodicTable.getIsotopeCount(6); // number of isotopes of carbon
int mainIsotope =
PeriodicTable.getMostFrequentNaturalIsotope(6); // the most frequent natural isotope of carbon
double isotopeMass = PeriodicTable.getMass(6, 14); // isotopic mass (weight) of carbon 14
int isotopePrecision =
PeriodicTable.getMassPrecision(6, 14); // precision of a certain isotopic mass (weight)
int deuterium = PeriodicTable.getAtomicNumber("D"); // atomic number of Deuterium
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intAtomic number of the element Ac.static final intAtomic number of the element Ag.static final intAtomic number of the element Al.static final intAtomic number of the element Am.static final intAtomic number of the element Ar.static final intAtomic number of the element As.static final intAtomic number of the element At.static final intAtomic number of the element Au.static final intAtomic number of the element B.static final intAtomic number of the element Ba.static final intAtomic number of the element Be.static final intAtomic number of the element Bh.static final intAtomic number of the element Bi.static final intAtomic number of the element Bk.static final intAtomic number of the element Br.static final intAtomic number of the element C.static final intAtomic number of the element Ca.static final intAtomic number of the element Cd.static final intAtomic number of the element Ce.static final intAtomic number of the element Cf.static final intAtomic number of the element Cl.static final intAtomic number of the element Cm.static final intAtomic number of the element Cn.static final intAtomic number of the element Co.static final intAtomic number of the element Cr.static final intAtomic number of the element Cs.static final intAtomic number of the element Cu.static final intAtomic number of the element Db.static final intAtomic number of the element Ds.static final intAtomic number of the element Dy.static final intNumber of elements in the periodic tablestatic final intAtomic number of the element Er.static final intAtomic number of the element Es.static final intAtomic number of the element Eu.static final intAtomic number of the element F.static final intAtomic number of the element Fe.static final intAtomic number of the element Fl.static final intAtomic number of the element Fm.static final intAtomic number of the element Fr.static final intAtomic number of the element Ga.static final intAtomic number of the element Gd.static final intAtomic number of the element Ge.static final intAtomic number of the element H.static final intAtomic number of the element He.static final intAtomic number of the element Hf.static final intAtomic number of the element Hg.static final intAtomic number of the element Ho.static final intAtomic number of the element Hs.static final intAtomic number of the element I.static final intAtomic number of the element In.static final intAtomic number of the element Ir.static final intAtomic number of the element K.static final intAtomic number of the element Kr.static final intAtomic number of the element La.static final intAtomic number of the element Li.static final intAtomic number of the element Lr.static final intAtomic number of the element Lu.static final intAtomic number of the element Lv.static final intAtomic number of the element Mc.static final intAtomic number of the element Md.static final intAtomic number of the element Mg.static final intAtomic number of the element Mn.static final intAtomic number of the element Mo.static final intAtomic number of the element Mt.static final intAtomic number of the element N.static final intAtomic number of the element Na.static final intAtomic number of the element Nb.static final intAtomic number of the element Nd.static final intAtomic number of the element Ne.static final intAtomic number of the element Nh.static final intAtomic number of the element Ni.static final intAtomic number of the element No.static final intAtomic number of the element Np.static final intAtomic number of the element O.static final intAtomic number of the element Og.static final intAtomic number of the element Os.static final intAtomic number of the element P.static final intAtomic number of the element Pa.static final intAtomic number of the element Pb.static final intAtomic number of the element Pd.static final intAtomic number of the element Pm.static final intAtomic number of the element Po.static final intAtomic number of the element Pr.static final intAtomic number of the element Pt.static final intAtomic number of the element Pu.static final intAtomic number of the element Ra.static final intAtomic number of the element Rb.static final intAtomic number of the element Re.static final intAtomic number of the element Rf.static final intAtomic number of the element Rg.static final intAtomic number of the element Rh.static final intAtomic number of the element Rn.static final intAtomic number of the element Ru.static final intAtomic number of the element S.static final intAtomic number of the element Sb.static final intAtomic number of the element Sc.static final intAtomic number of the element Se.static final intAtomic number of the element Sg.static final intAtomic number of the element Si.static final intAtomic number of the element Sm.static final intAtomic number of the element Sn.static final intAtomic number of the element Sr.static final intAtomic number of the element Ta.static final intAtomic number of the element Tb.static final intAtomic number of the element Tc.static final intAtomic number of the element Te.static final intAtomic number of the element Th.static final intAtomic number of the element Ti.static final intAtomic number of the element Tl.static final intAtomic number of the element Tm.static final intAtomic number of the element Ts.static final intAtomic number of the element U.static final intAtomic number of the element V.static final intAtomic number of the element W.static final intAtomic number of the element Xe.static final intAtomic number of the element Y.static final intAtomic number of the element Yb.static final intAtomic number of the element Zn.static final intAtomic number of the element Zr. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic intfindAtomicNumber(String symbol) Returns the atomic number of the element in the periodic table specified by its symbol.static doublegetAbundance(int z, int m) Natural abundance of the isotopestatic intgetAtomicNumber(String symbol) Returns the atomic number of the element in the periodic table specified by its symbol or -1 if not found.static doublegetAtomicRadius(int z) Atomic radius of the element Angstroms.static intgetColumn(int z) The column or group of an element in the periodic table.static doublegetCovalentRadius(int z) Covalent radius of the element in Angstroms.static doublegetCovalentRadius(int z, int t) Covalent radius of the element in specific bond type in Angstroms.static intNumber of elements in the periodic tablestatic intgetIsotope(int z, int i) Retrieves an isotope of the elementstatic intNumber of isotopes in the periodic tablestatic intgetIsotopeCount(int z) Number of isotopes of the elementstatic doublegetMass(int z) Atomic weight of the element based on the natural abundance of its isotopesstatic doublegetMass(int z, int m) Atomic weight of an isotopestatic intgetMassPrecision(int z) The precision of an elemental mass is the number of measured digits after the decimal separator.static intgetMassPrecision(int z, int m) The precision of an isotopic mass is the number of measured digits after the decimal separator.static intReturns the mass number of the most frequent natural isotope of the elementstatic StringgetName(int z) Name of the elementstatic intgetRow(int z) The row or or period of an element in the periodic table.static StringgetSymbol(int z) Symbol of the elementstatic doublegetVanDerWaalsRadius(int z) Van der Waals radius of the element in Angstroms.static booleanisActinideMetal(int z) Checks if the given atom is an actinide metal Actinium is included.static booleanisAlkaliMetal(int z) Checks if the given atom is an alkali (group I.) metal.static booleanisAlkalineEarthMetal(int z) Checks if the given atom is an alkaline earth (group II.) metal.static booleanisAtomicSymbol(String symbol) Returns whether the given string corresponds to an atomic number of an element in the periodic table specified by its symbol.static booleanisHalogen(int z) Checks if the given atom is a halogen (F, Cl, Br, I, At, Ts).static booleanisLanthanideMetal(int z) Checks if the given atom is a lanthanide metal Lanthanum is included.static booleanisMetal(int z) Decides whether the element is a metal.static booleanisMetalloid(int z) Checks if the given atom is a metalloid (B, Si, Ge, As, Sb, Te, Po).static booleanisNobleGas(int z) Checks if the given atom is a noble gas.static booleanisOtherMetal(int z) Checks if the given atom is an "other metal", group IIIa-Va metal.static booleanisTransitionMetal(int z) Checks if the given atom is a transition metal, IB-VIIIB.
-
Field Details
-
H
public static final int HAtomic number of the element H.- See Also:
-
He
public static final int HeAtomic number of the element He.- See Also:
-
Li
public static final int LiAtomic number of the element Li.- See Also:
-
Be
public static final int BeAtomic number of the element Be.- See Also:
-
B
public static final int BAtomic number of the element B.- See Also:
-
C
public static final int CAtomic number of the element C.- See Also:
-
N
public static final int NAtomic number of the element N.- See Also:
-
O
public static final int OAtomic number of the element O.- See Also:
-
F
public static final int FAtomic number of the element F.- See Also:
-
Ne
public static final int NeAtomic number of the element Ne.- See Also:
-
Na
public static final int NaAtomic number of the element Na.- See Also:
-
Mg
public static final int MgAtomic number of the element Mg.- See Also:
-
Al
public static final int AlAtomic number of the element Al.- See Also:
-
Si
public static final int SiAtomic number of the element Si.- See Also:
-
P
public static final int PAtomic number of the element P.- See Also:
-
S
public static final int SAtomic number of the element S.- See Also:
-
Cl
public static final int ClAtomic number of the element Cl.- See Also:
-
Ar
public static final int ArAtomic number of the element Ar.- See Also:
-
K
public static final int KAtomic number of the element K.- See Also:
-
Ca
public static final int CaAtomic number of the element Ca.- See Also:
-
Sc
public static final int ScAtomic number of the element Sc.- See Also:
-
Ti
public static final int TiAtomic number of the element Ti.- See Also:
-
V
public static final int VAtomic number of the element V.- See Also:
-
Cr
public static final int CrAtomic number of the element Cr.- See Also:
-
Mn
public static final int MnAtomic number of the element Mn.- See Also:
-
Fe
public static final int FeAtomic number of the element Fe.- See Also:
-
Co
public static final int CoAtomic number of the element Co.- See Also:
-
Ni
public static final int NiAtomic number of the element Ni.- See Also:
-
Cu
public static final int CuAtomic number of the element Cu.- See Also:
-
Zn
public static final int ZnAtomic number of the element Zn.- See Also:
-
Ga
public static final int GaAtomic number of the element Ga.- See Also:
-
Ge
public static final int GeAtomic number of the element Ge.- See Also:
-
As
public static final int AsAtomic number of the element As.- See Also:
-
Se
public static final int SeAtomic number of the element Se.- See Also:
-
Br
public static final int BrAtomic number of the element Br.- See Also:
-
Kr
public static final int KrAtomic number of the element Kr.- See Also:
-
Rb
public static final int RbAtomic number of the element Rb.- See Also:
-
Sr
public static final int SrAtomic number of the element Sr.- See Also:
-
Y
public static final int YAtomic number of the element Y.- See Also:
-
Zr
public static final int ZrAtomic number of the element Zr.- See Also:
-
Nb
public static final int NbAtomic number of the element Nb.- See Also:
-
Mo
public static final int MoAtomic number of the element Mo.- See Also:
-
Tc
public static final int TcAtomic number of the element Tc.- See Also:
-
Ru
public static final int RuAtomic number of the element Ru.- See Also:
-
Rh
public static final int RhAtomic number of the element Rh.- See Also:
-
Pd
public static final int PdAtomic number of the element Pd.- See Also:
-
Ag
public static final int AgAtomic number of the element Ag.- See Also:
-
Cd
public static final int CdAtomic number of the element Cd.- See Also:
-
In
public static final int InAtomic number of the element In.- See Also:
-
Sn
public static final int SnAtomic number of the element Sn.- See Also:
-
Sb
public static final int SbAtomic number of the element Sb.- See Also:
-
Te
public static final int TeAtomic number of the element Te.- See Also:
-
I
public static final int IAtomic number of the element I.- See Also:
-
Xe
public static final int XeAtomic number of the element Xe.- See Also:
-
Cs
public static final int CsAtomic number of the element Cs.- See Also:
-
Ba
public static final int BaAtomic number of the element Ba.- See Also:
-
La
public static final int LaAtomic number of the element La.- See Also:
-
Ce
public static final int CeAtomic number of the element Ce.- See Also:
-
Pr
public static final int PrAtomic number of the element Pr.- See Also:
-
Nd
public static final int NdAtomic number of the element Nd.- See Also:
-
Pm
public static final int PmAtomic number of the element Pm.- See Also:
-
Sm
public static final int SmAtomic number of the element Sm.- See Also:
-
Eu
public static final int EuAtomic number of the element Eu.- See Also:
-
Gd
public static final int GdAtomic number of the element Gd.- See Also:
-
Tb
public static final int TbAtomic number of the element Tb.- See Also:
-
Dy
public static final int DyAtomic number of the element Dy.- See Also:
-
Ho
public static final int HoAtomic number of the element Ho.- See Also:
-
Er
public static final int ErAtomic number of the element Er.- See Also:
-
Tm
public static final int TmAtomic number of the element Tm.- See Also:
-
Yb
public static final int YbAtomic number of the element Yb.- See Also:
-
Lu
public static final int LuAtomic number of the element Lu.- See Also:
-
Hf
public static final int HfAtomic number of the element Hf.- See Also:
-
Ta
public static final int TaAtomic number of the element Ta.- See Also:
-
W
public static final int WAtomic number of the element W.- See Also:
-
Re
public static final int ReAtomic number of the element Re.- See Also:
-
Os
public static final int OsAtomic number of the element Os.- See Also:
-
Ir
public static final int IrAtomic number of the element Ir.- See Also:
-
Pt
public static final int PtAtomic number of the element Pt.- See Also:
-
Au
public static final int AuAtomic number of the element Au.- See Also:
-
Hg
public static final int HgAtomic number of the element Hg.- See Also:
-
Tl
public static final int TlAtomic number of the element Tl.- See Also:
-
Pb
public static final int PbAtomic number of the element Pb.- See Also:
-
Bi
public static final int BiAtomic number of the element Bi.- See Also:
-
Po
public static final int PoAtomic number of the element Po.- See Also:
-
At
public static final int AtAtomic number of the element At.- See Also:
-
Rn
public static final int RnAtomic number of the element Rn.- See Also:
-
Fr
public static final int FrAtomic number of the element Fr.- See Also:
-
Ra
public static final int RaAtomic number of the element Ra.- See Also:
-
Ac
public static final int AcAtomic number of the element Ac.- See Also:
-
Th
public static final int ThAtomic number of the element Th.- See Also:
-
Pa
public static final int PaAtomic number of the element Pa.- See Also:
-
U
public static final int UAtomic number of the element U.- See Also:
-
Np
public static final int NpAtomic number of the element Np.- See Also:
-
Pu
public static final int PuAtomic number of the element Pu.- See Also:
-
Am
public static final int AmAtomic number of the element Am.- See Also:
-
Cm
public static final int CmAtomic number of the element Cm.- See Also:
-
Bk
public static final int BkAtomic number of the element Bk.- See Also:
-
Cf
public static final int CfAtomic number of the element Cf.- See Also:
-
Es
public static final int EsAtomic number of the element Es.- See Also:
-
Fm
public static final int FmAtomic number of the element Fm.- See Also:
-
Md
public static final int MdAtomic number of the element Md.- See Also:
-
No
public static final int NoAtomic number of the element No.- See Also:
-
Lr
public static final int LrAtomic number of the element Lr.- See Also:
-
Rf
public static final int RfAtomic number of the element Rf.- See Also:
-
Db
public static final int DbAtomic number of the element Db.- See Also:
-
Sg
public static final int SgAtomic number of the element Sg.- See Also:
-
Bh
public static final int BhAtomic number of the element Bh.- See Also:
-
Hs
public static final int HsAtomic number of the element Hs.- See Also:
-
Mt
public static final int MtAtomic number of the element Mt.- See Also:
-
Ds
public static final int DsAtomic number of the element Ds.- See Also:
-
Rg
public static final int RgAtomic number of the element Rg.- See Also:
-
Cn
public static final int CnAtomic number of the element Cn.- See Also:
-
Nh
public static final int NhAtomic number of the element Nh.- See Also:
-
Fl
public static final int FlAtomic number of the element Fl.- See Also:
-
Mc
public static final int McAtomic number of the element Mc.- See Also:
-
Lv
public static final int LvAtomic number of the element Lv.- See Also:
-
Ts
public static final int TsAtomic number of the element Ts.- See Also:
-
Og
public static final int OgAtomic number of the element Og.- See Also:
-
ELEMENT_COUNT
public static final int ELEMENT_COUNTNumber of elements in the periodic table- See Also:
-
-
Constructor Details
-
PeriodicTable
public PeriodicTable()
-
-
Method Details
-
getElementCount
public static int getElementCount()Number of elements in the periodic table- Returns:
- number of element
-
getIsotopeCount
public static int getIsotopeCount()Number of isotopes in the periodic table- Returns:
- number of isotopes
-
getIsotopeCount
public static int getIsotopeCount(int z) Number of isotopes of the element- Parameters:
z- atomic number of the element (protons)- Returns:
- number of isotopes
-
getIsotope
public static int getIsotope(int z, int i) Retrieves an isotope of the element- Parameters:
z- atomic number of the element (protons)i- index of the isotope (0 based)- Returns:
- mass number of the isotope
-
getName
Name of the element- Parameters:
z- atomic number (protons)- Returns:
- element name
-
getSymbol
Symbol of the element- Parameters:
z- atomic number (protons)- Returns:
- element symbol
-
getColumn
public static int getColumn(int z) The column or group of an element in the periodic table.- Parameters:
z- atomic number (protons)- Returns:
- column of the given element (0 for unknown)
- Since:
- Marvin 4.1
-
getMass
public static double getMass(int z) Atomic weight of the element based on the natural abundance of its isotopes- Parameters:
z- atomic number (protons)- Returns:
- elemental mass
-
getMass
public static double getMass(int z, int m) Atomic weight of an isotope- Parameters:
z- atomic number of the isotopem- mass number of the isotope (0 for element mass)- Returns:
- isotope mass (0 if isotope does not exist)
-
getMassPrecision
public static int getMassPrecision(int z) The precision of an elemental mass is the number of measured digits after the decimal separator. For example, the mass of Mg is 24.3050, so its precision is 4.- Parameters:
z- atomic number (protons)- Returns:
- the number of significant digits after the decimal point
-
getMassPrecision
public static int getMassPrecision(int z, int m) The precision of an isotopic mass is the number of measured digits after the decimal separator. For example, the mass of [4He] is 4.002603250, so its precision is 9.- Parameters:
z- atomic number (protons)m- mass number of the isotope (0 for element mass)- Returns:
- the number of significant digits after the decimal point (0 if isotope does not exists)
-
getAbundance
public static double getAbundance(int z, int m) Natural abundance of the isotope- Parameters:
z- atomic number of the isotope (protons)m- mass number of the isotope (protons + neutrons)- Returns:
- natural abundance (100 for the most frequent isotope)
-
getMostFrequentNaturalIsotope
public static int getMostFrequentNaturalIsotope(int z) Returns the mass number of the most frequent natural isotope of the element- Parameters:
z- atomic number (protons)- Returns:
- mass number of the isotope (0 if artificial element)
-
getAtomicNumber
Returns the atomic number of the element in the periodic table specified by its symbol or -1 if not found. Case insensitive. In addition to elements of the periodic table, Deuterium and Tritium isotopes are also handled.- Parameters:
symbol- atom symbol e.g. "C", "Br", "BR".- Returns:
- atomic number for the given symbol or -1 if not found (case insensitive).
- See Also:
-
findAtomicNumber
Returns the atomic number of the element in the periodic table specified by its symbol. Case insensitive. In addition to elements of the periodic table, Deuterium and Tritium isotopes are also handled.- Parameters:
symbol- atom symbol e.g. "C", "Br", "BR".- Returns:
- atomic number for the given symbol (case insensitive).
- Throws:
IllegalArgumentException- ifsymboldoes not correspond to a chemical element in the periodic table.- See Also:
-
isAtomicSymbol
Returns whether the given string corresponds to an atomic number of an element in the periodic table specified by its symbol. Case insensitive.- Parameters:
symbol- atom symbol e.g. "C", "Br", "BR".- Returns:
- true if atomic number found else false.
-
getAtomicRadius
public static double getAtomicRadius(int z) Atomic radius of the element Angstroms.- Parameters:
z- atomic number (protons)- Returns:
- atomic radius (1.5 if unknown)
-
getCovalentRadius
public static double getCovalentRadius(int z) Covalent radius of the element in Angstroms.- Parameters:
z- atomic number (protons)- Returns:
- atomic radius (1.5 if unknown)
-
getCovalentRadius
public static double getCovalentRadius(int z, int t) Covalent radius of the element in specific bond type in Angstroms.- Parameters:
z- atomic number (protons)t- bond type- Returns:
- atomic radius (1.5 if unknown)
-
getVanDerWaalsRadius
public static double getVanDerWaalsRadius(int z) Van der Waals radius of the element in Angstroms.- Parameters:
z- atomic number (protons)- Returns:
- atomic radius (2.0 if unknown)
-
getRow
public static int getRow(int z) The row or or period of an element in the periodic table.- Parameters:
z- atomic number (protons)- Returns:
- column of the given element (0 for unknown)
- Since:
- Marvin 4.1
-
isMetal
public static boolean isMetal(int z) Decides whether the element is a metal. It returns true for those elements, that are classified as different kinds of metals: alkali metal, alkaline earth metal, transition metal and other metals, as well as Ge, Sb and Po from the metalloids.- Parameters:
z- atomic number (protons)- Returns:
- true if the element is metal
-
isAlkaliMetal
public static boolean isAlkaliMetal(int z) Checks if the given atom is an alkali (group I.) metal.- Parameters:
z- atomic number of the atom.- Returns:
- true if the given atom is alkali metal.
-
isAlkalineEarthMetal
public static boolean isAlkalineEarthMetal(int z) Checks if the given atom is an alkaline earth (group II.) metal.- Parameters:
z- atomic number of the atom.- Returns:
- true if the given atom is an alkaline earth metal.
-
isOtherMetal
public static boolean isOtherMetal(int z) Checks if the given atom is an "other metal", group IIIa-Va metal.- Parameters:
z- atomic number of the atom.- Returns:
- true if the given atom is other metal.
-
isTransitionMetal
public static boolean isTransitionMetal(int z) Checks if the given atom is a transition metal, IB-VIIIB. Lanthanum and Actinium are excluded.- Parameters:
z- atomic number of the atom.- Returns:
- true if the given atom is a transition metal.
-
isLanthanideMetal
public static boolean isLanthanideMetal(int z) Checks if the given atom is a lanthanide metal Lanthanum is included.- Parameters:
z- atomic number of the atom.- Returns:
- true if the given atom is a lanthanide metal.
-
isActinideMetal
public static boolean isActinideMetal(int z) Checks if the given atom is an actinide metal Actinium is included.- Parameters:
z- atomic number of the atom.- Returns:
- true if the given atom is a actinide metal.
-
isMetalloid
public static boolean isMetalloid(int z) Checks if the given atom is a metalloid (B, Si, Ge, As, Sb, Te, Po).- Parameters:
z- atomic number of the atom.- Returns:
- true if the given atom is a metalloid.
-
isHalogen
public static boolean isHalogen(int z) Checks if the given atom is a halogen (F, Cl, Br, I, At, Ts).- Parameters:
z- atomic number of the atom.- Returns:
- true if the given atom is a halogen.
-
isNobleGas
public static boolean isNobleGas(int z) Checks if the given atom is a noble gas.- Parameters:
z- atomic number of the atom.- Returns:
- true if the given atom is a noble gas.
-