chemaxon.calculations
Class ElementalAnalyser

java.lang.Object
  extended by chemaxon.calculations.ElementalAnalyser

public class ElementalAnalyser
extends java.lang.Object

Calculates molecular formula, mass, MS mass and composition.

API usage example:

     ElementalAnalyser elemanal = new ElementalAnalyser();

     // run plugin on target molecules
     MolImporter mi = new MolImporter(input.smiles);
     Molecule mol = null;
     while ((mol = mi.read()) != null) {

            // set target molecule
            elemanal.setMolecule(mol);

            double exactMass = elemanal.exactMass();
            double mass = elemanal.mass();
            int massPrecision = elemanal.massPrecision();
            int atomCount1 = elemanal.atomCount(8); // oxygen atom count
            int atomCount2 = elemanal.atomCount(8, 0); // non-isotope oxygen count
            int atomCount3 = elemanal.atomCount(8, 16); // oxygen isotope count with massno=16
            String formula = elemanal.formula();
            String isotopeFormula = elemanal.isotopeFormula();
            String composition = elemanal.composition(2); // precision=2
            String isotopeComposition = elemanal.isotopeComposition(2); // precision=2

            // now use the results...
        }
 

Version:
Marvin 5.3.2, 04/15/2010
Author:
Gyorgy Pirok, Zsolt Mohacsi, Janos Kendi

Constructor Summary
ElementalAnalyser()
           
 
Method Summary
 int atomCount()
          Calculates the number of atoms in the molecule.
 int atomCount(int z)
          Calculates the number of atoms of a given element in the molecule (including its isotopes).
 int atomCount(int z, int m)
          Calculates the number of atoms of a given element in the molecule.
 java.lang.String composition(int precision)
          Gets the elemental analysis, the relative percent composition of a pure chemical substance by element (w/w%).
 java.lang.String dotDisconnectedFormula()
          Calculates the dot-disconnected molecular formula of a multifragment molecule.
 java.lang.String dotDisconnectedIsotopeFormula()
          Calculates the dot-disconnected isotope formula of a multifragment molecule.
 java.lang.String dotDisconnectedIsotopeFormula(boolean symbolD)
          Calculates the dot-disconnected isotope formula of a multifragment molecule.
 double exactMass()
          Calculates the weight of the MS molecule ion using the mass of the most frequent natural isotope for element atoms.
 int exactMassPrecision()
          Calculates the precision of the monoisitopic weight (number of significant decimal digits).
 java.lang.String formula()
          Calculates the molecular formula which is a string listing all atom types an their occurence in the molecule.
 java.lang.String formula(int digits)
          Calculates a fixed digit sortable molecular formula.
 Smolecule getSmolecule()
          Retrieves the input molecule
 java.lang.String isotopeComposition(int precision)
          Gets the molecular composition (w/w%).
 java.lang.String isotopeComposition(int precision, boolean symbolD)
          Gets the molecular composition (w/w%).
 java.lang.String isotopeFormula()
          Calculates the molecular formula (isotopes are separated).
 java.lang.String isotopeFormula(boolean symbolD)
          Calculates the molecular formula (isotopes are separated).
 double mass()
          Calculates the molecular weight of the molecule.
 int massPrecision()
          Calculates the precision of the molecular weight (number of decimal digits).
 void setMolecule(MoleculeGraph mol)
          Specifies a molecule to calculate with.
 void setMolecule(Smolecule mol)
          Specifies a molecule to calculate with.
 void setMolecule(java.lang.String formula)
          Specifies a molecule to calculate with.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ElementalAnalyser

public ElementalAnalyser()
Method Detail

getSmolecule

public Smolecule getSmolecule()
Retrieves the input molecule

Returns:
the molecule to calculate with

setMolecule

public void setMolecule(java.lang.String formula)
                 throws java.lang.IllegalArgumentException
Specifies a molecule to calculate with.

Parameters:
formula - the molecular formula to calculate with
Throws:
java.lang.IllegalArgumentException - if the formula is invalid
Since:
Marvin 5.3.2

setMolecule

public void setMolecule(MoleculeGraph mol)
Specifies a molecule to calculate with.

Parameters:
mol - the molecule to calculate with

setMolecule

public void setMolecule(Smolecule mol)
Specifies a molecule to calculate with.

Parameters:
mol - the molecule to calculate with
Since:
Marvin 5.3, 04/29/2009

atomCount

public int atomCount()
Calculates the number of atoms in the molecule.

Returns:
number of atoms

atomCount

public int atomCount(int z)
Calculates the number of atoms of a given element in the molecule (including its isotopes). included

Parameters:
z - atomic number of the atom (protons)
Returns:
number of the specified atoms

atomCount

public int atomCount(int z,
                     int m)
Calculates the number of atoms of a given element in the molecule. When m is 0, number of the given element atoms is returned, but its isotopes are not included

Parameters:
z - atomic number of the atom (protons)
m - mass number of the atom (protons + neutrons)
Returns:
number of the specified atoms

mass

public double mass()
Calculates the molecular weight of the molecule. The result is rounded according to the decimals of the lowest precision atomic mass value.

Returns:
molecular weigth of the molecule

massPrecision

public int massPrecision()
Calculates the precision of the molecular weight (number of decimal digits).

Returns:
the number of significant digits after the decimal point

exactMass

public double exactMass()
Calculates the weight of the MS molecule ion using the mass of the most frequent natural isotope for element atoms.

Returns:
weight of the molecule ion

exactMassPrecision

public int exactMassPrecision()
Calculates the precision of the monoisitopic weight (number of significant decimal digits).

Returns:
the number of significant digits after the decimal point

formula

public java.lang.String formula()
Calculates the molecular formula which is a string listing all atom types an their occurence in the molecule. For example the formula of benzene is C6H6.

Returns:
molecular formula

formula

public java.lang.String formula(int digits)
Calculates a fixed digit sortable molecular formula. If the digits parameter is 4, then the formula of benzene will be "C0006H0006".

Parameters:
digits - number of minimum digits
Returns:
molecular formula

isotopeFormula

public java.lang.String isotopeFormula()
Calculates the molecular formula (isotopes are separated). For example, it returns C7D5NaO2 for the deuterated sodium benzoate.

Returns:
isotope formula

isotopeFormula

public java.lang.String isotopeFormula(boolean symbolD)
Calculates the molecular formula (isotopes are separated). For example, it returns C7[2H]5NaO2 or C7D5NaO2 for the deuterated sodium benzoate depending on symbolD parameter.

Parameters:
symbolD - uses the D symbol for Deuterium and T for Tritium if true, otherwise [2H] and [3H]
Returns:
isotope formula

dotDisconnectedFormula

public java.lang.String dotDisconnectedFormula()
Calculates the dot-disconnected molecular formula of a multifragment molecule. For example, it returns C7H5O2.Na for sodium benzoate.

Returns:
the dot diconnected formula of the molecule
Since:
Marvin 4.0.5

dotDisconnectedIsotopeFormula

public java.lang.String dotDisconnectedIsotopeFormula()
Calculates the dot-disconnected isotope formula of a multifragment molecule. For example, it returns C7D5O2.Na for the deuterated sodium benzoate.

Returns:
the dot diconnected isotope formula of the molecule
Since:
Marvin 5.0

dotDisconnectedIsotopeFormula

public java.lang.String dotDisconnectedIsotopeFormula(boolean symbolD)
Calculates the dot-disconnected isotope formula of a multifragment molecule. For example, it returns C7[2H]5O2.Na or C7D5O2.Na for the deuterated sodium benzoate depending on symbolD parameter.

Parameters:
symbolD - uses the D symbol for Deuterium and T for Tritium if true, otherwise [2H] and [3H]
Returns:
the dot diconnected isotope formula of the molecule
Since:
Marvin 5.0

composition

public java.lang.String composition(int precision)
Gets the elemental analysis, the relative percent composition of a pure chemical substance by element (w/w%).

Returns:
molecular composition

isotopeComposition

public java.lang.String isotopeComposition(int precision)
Gets the molecular composition (w/w%). Isotopes are separate atom types.

Parameters:
precision - number of decimal digits
Returns:
molecular composition

isotopeComposition

public java.lang.String isotopeComposition(int precision,
                                           boolean symbolD)
Gets the molecular composition (w/w%). Isotopes are separate atom types.

Parameters:
precision - number of decimal digits
symbolD - uses the D symbol for Deuterium and T for Tritium if true, otherwise [2H] and [3H]
Returns:
molecular composition