Welcome to the ORCHESTRA website!

Latest changes: 28 January 2016, Hans Meeussen


ORCHESTRA (Objects Representing CHEmical Speciation and TRAnsport models) is a framework for composing chemical speciation and mass transport models and consists of:

1.     A runnable .jar file (in the form of a Java executable ).

2.     A separate text file with model object definitions (Object database).

The object database contains the definitions of chemical model elements, such as  "components", "species", "minerals", "surfaces", "sites" etc. which make it possible to use ORCHESTRA in a similar way to well- known chemical speciation models, such as  PHREEQC, MINTEQ, GWB or ECOSAT. 

Just as with these models ORCHESTRA allows to specify the exact chemical system in input files.


What is different with ORCHESTRA?

        ALL model equations are given as input in text format at run time, so NO model equation hidden in the source code.

        The structure of model definitions is hierarchical and Object Oriented.

        Users can construct new models by defining new model objects and keywords.

        ORCHESTRA is written in Java and runs on Windows, Linux, Solaris, and Apple OSX.


What are the advantages?

        ORCHESTRA is very flexible as it can easily be extended with new chemical physical biological process models.

        The physical separation of calculation solver and model definitions not only results in a small and efficient calculation solver executable (350 kb)  

        but also in very compact model definitions (object database 30 kb).

        Model calculations are transparent, as all model equations are available in text format and not hidden within the source code.

        The small size of the calculation solver makes it very suitable for parallel processing on modern multi core hardware.



A number of on-line introductory examples can be found (here).

An older set of examples (without the graphical user interface) can be found (here).

An old example in an earlier ORCHESTRA version that only requires Java 1.1 can be found (here).

Examples of published ORCHESTRA applications can be found (here).



The first version of ORCHESTRA was developed at the Macaulay Institute in Aberdeen, Scotland, UK.
During  2001-2002  development was continued at  Alterra, Wageningen University and Research Center, The Netherlands. From 2002-20100 at the Energy research Centre of the Netherlands, (ECN).
From September 2010, development is being continued at the Nuclear Research and Consultancy Group, (NRG).

The following people have contributed significanty to the development and testing of ORCHESTRA:
Willem van Riemsdijk, Wendy van Beinum, David Kinniburgh, David Lumsdon, Jeanine Geelhoed, Jeroen Filius, Vincent Meeussen, Ed Paterson, Nelleke Domburg, Joris Dijkstra, Li Ping Weng, Thomas Schroder, Jos Vink.


        Download the Orchestra program.(runnable .jar file, ca. 350 kb). Note: on some systems it is necessary to right click this link and use "save as" option.

        Download the Orchestra program + thermodynamic databases + example files in a self contained zipped folder.(ca. 400 kb, version 2011).
To get started: unzip the file, go to one of the example project folders, and click on the runorchestra.bat file.



        Syntax of concert file.

        Syntax of calculator input file.

        Syntax of node definition file.

        Syntax of data input file.

        Predefined chemical objects.



        How to get started downloading and using ORCHESTRA.

        How to set up simple batch calculations.

        How to select different reaction databases.

        How to include solid solutions in calculations.

        How to make predominance diagrams.

        How to use adsorption models.

        How to use my own dataset as input for literature Soil model.



ORCHESTRA: An Object-Oriented Framework for Implementing Chemical Equilibrium Models

Johannes C. L. Meeussen, (2003) Environmental Science & Technology 37 (6) 1175-1182.

Publications in which ORCHESTRA is used (here)