Package chemaxon.struc
Class PeriodicSystem
java.lang.Object
chemaxon.core.ChemConst
chemaxon.struc.PeriodicSystem
Periodic System 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 = PeriodicSystem.getElementCount(); // number of elements in the periodic system
int isotopeCount = PeriodicSystem.getIsotopeCount(); // number of isotopes in the periodic system
String symbol = PeriodicSystem.getSymbol(6); // element symbol of the 6th element
String name = PeriodicSystem.getName(6); // element name of the 6th element
int atomicNumber = PeriodicSystem.getAtomicNumber("C"); // atomic number of carbon
double mass = PeriodicSystem.getMass(6); // elemental mass (weight) of an element
int precision = PeriodicSystem.getMassPrecision(6); // precision of a certain the elemental mass (weight)
int isotopes = PeriodicSystem.getIsotopeCount(6); // number of isotopes of carbon
int mainIsotope =
PeriodicSystem.getMostFrequentNaturalIsotope(6); // the most frequent natural isotope of carbon
double isotopeMass = PeriodicSystem.getMass(6, 14); // isotopic mass (weight) of carbon 14
int isotopePrecision =
PeriodicSystem.getMassPrecision(6, 14); // precision of a certain isotopic mass (weight)
int deuterium = PeriodicSystem.getAtomicNumber("D"); // atomic number of Deuterium
-
Field Summary
Fields inherited from class chemaxon.core.ChemConst
Ac, Ag, Al, Am, Ar, As, At, Au, B, Ba, Be, Bh, Bi, Bk, Br, C, Ca, Cd, Ce, Cf, Cl, Cm, Cn, Co, Cr, Cs, Cu, Db, Ds, Dy, ELEMENT_COUNT, Er, Es, Eu, F, Fe, Fl, Fm, Fr, Ga, Gd, Ge, H, He, Hf, Hg, Ho, Hs, I, In, Ir, K, Kr, La, Li, Lr, Lu, Lv, Mc, Md, Mg, Mn, Mo, Mt, N, Na, Nb, Nd, Ne, Nh, Ni, No, Np, O, Og, Os, P, Pa, Pb, Pd, Pm, Po, Pr, Pt, Pu, Ra, Rb, Re, Rf, Rg, Rh, Rn, Ru, S, Sb, Sc, Se, Sg, Si, Sm, Sn, Sr, Ta, Tb, Tc, Te, Th, Ti, Tl, Tm, Ts, U, V, W, Xe, Y, Yb, Zn, Zr -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic intfindAtomicNumber(String symbol) Returns the atomic number of the element in the periodic system 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 system specified by its symbol or -1 if not found.static doublegetAtomicRadius(int z) Atomic radius of the element Angstroms.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 systemstatic intgetIsotope(int z, int i) Retrieves an isotope of the elementstatic intNumber of isotopes in the periodic systemstatic 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 system.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 system 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.
-
Constructor Details
-
PeriodicSystem
public PeriodicSystem()
-
-
Method Details
-
getElementCount
public static int getElementCount()Number of elements in the periodic system- Returns:
- number of element
-
getIsotopeCount
public static int getIsotopeCount()Number of isotopes in the periodic system- 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
-
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 system specified by its symbol or -1 if not found. Case insensitive. In addition to elements of the periodic system, 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 system specified by its symbol. Case insensitive. In addition to elements of the periodic system, 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 system 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 system.- 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.
-