cornerTL cornerTR
Alchem
cornerBL cornerBR
cornerTL cornerTR
Keeping Up
cornerBL cornerBR
cornerTL cornerTR
Software
cornerBL cornerBR
cornerTL cornerTR
Resources
cornerBL cornerBR
cornerTL cornerTR
Search
cornerBL cornerBR
cornerTL cornerTR
Private Area
cornerBL cornerBR
cornerTL cornerTR
Article

Chemeq

Georges Khaznadar  (10 February 2006)

Chemeq permet de traiter élégament la typographie des composés chimiques et des équations-bilan de réactions. Certaines formes dérivées sont aussi formées (lois de Gulder-Wage, lois de Nernst, calculs de masse molaire). Chemeq est un outil léger et rapide, et peut être intégré dans d’autres logiciels.

DESCRIPTION
      Chemeq  is  a chemical equation analyzer. It is a fast lexical and syn-
      taxic analyser which helps to find out chemical  informations  embedded
      in  source  chemical equations. Data can be output in various sophisti-
      cated formats, depending  on  options.  'chemeq'  defaults  to  'chemeq
      -mlcwn'.

OPTIONS
      Options  are active only if chemeq parses an equation of chemical reac-
      tion. If chemeq parses the formula of a simple chemical, no  option  is
      taken  in account, the output is just a straightforward TeX string rep-
      resenting the simple chemical.

      -h     Displays Help.

      -M     Outputs al list of space separated molecular weights.

      -m     Outputs a Minimal output. It allows  chemeq  to  be  idempotent,
             i.e. the command 'chemeq | chemeq' is equivalent to 'chemeq'.

      -l     Outputs a LaTeX string representing the chemical equation.

      -c     Outputs  a message giving informations about the Conservation of
             elements and charges in the equation. 'OK' means that both  ele-
             ments and electric charges are balanced.

      -w     Outputs  the LaTeX string representing the Gulder-Waage equation
             related to the input chemical equation, or the Nernst  equation,
             if the input equation is a redox semi-equation.

      -n     Outputs  a  Normalized string accounting for the input equation.
             Two chemical equations having the  same  normalized  string  are
             chemically  equivalent,  even  if  the  molecules  are scrambled
             around and the coefficient are not equal but proportionnal.

ENVIRONMENT VARIABLES
      chemeq_input
             if set, this variables's value overrides the standard  input. If
             this  variable  is not set, the variable w_chemeq_input is taken
             in account (useful for the WIMS server).

      chemeq_option
             if set, this variable's  value  overrides  the  options.If  this
             variable  is  not  set, the variable w_chemeq_option is taken in
             account (useful for the WIMS server).

EXAMPLES
      echo "1/2 Cu^2+ + OH- ->  1/2Cu(OH)2s" | chemeq
             will display informations about the reaction of hydroxyde and Cu
             II ions.

      echo "MnO4^- + 8H3O^+ + 5e- --> Mn^2+ + 12 H2O" | chemeq
             will  display  informations  about  the reaction of reduction of
             permanganate ions in an acid environment.

      echo "MnO4^- + 8H3O^+ + 5e- --> Mn^2+ + 12 H2O" | chemeq -w
             will display the LaTeX format for the Nernst law related to  the
             reduction of permanganate ions in an acid environment.

      echo "MnO4^- + 8H3O^+ + 5e- --> Mn^2+ + 8 H2O" | chemeq -c
             will  highlight  the  lack  of  conservation of elements H and O

      echo "MnO4^- + 8H3O^+ + 5e- --> Mn^2+ + 8 H2O" | chemeq -c
             will  highlight  the  lack  of  conservation of elements H and O
             (water molecules are not well balanced).

NOTE: syntax of ions
      allthough in some cases, shorter expressions are sucessfully parsed, it
      is  safer  to  consider  that  an "up arrow" (^) must be put before the
      charge symbols of an ion.  Examples : H3O^+, Fe(CN)6^4-, OH^-

AUTHORS
      Georges Khaznadar,
        <georgesk@ofset.org>

KNOWN BUGS
      When not specified, chemical entities coming from  the  standard  input
      are believed to be in aqueous solutions. Water is considered by default
      as the main solvent. Only one liquid (aqueous) phase is currently taken
      in  account.   All  solid  chemical entities are considered as parts of
      separated phases.  Suffixes _s, _g and _aq can be used to  enforce  the
      type of some chemical entities.

cornerBL cornerBR