Chemical Kinetics in Objectica

Stephan Leibbrandt

Abstract

Modeling chemical kinetics in a reactor easily ends up with a long piece of source code. Writing down the model on a piece of paper is much shorter, because we interpret the text during reading. Let us take 2 (Subscript[H, 2])+(Subscript[O, 2]) -> (Subscript[H, 2])O. In our mind we know that this is a chemical reaction with some reaction enthalpy, that (Subscript[O, 2]) is a molecule with a certain weight, that a mass balance must take into account that (Subscript[H, 2])O is composed of H and O, ... . A «traditional» programming approach would call over and over again an appropriate function for every piece of information. It is much more elegant to create a model in which each model part contains the necessary information and can be used like in the paper version of the model. Every model part is then an object with a kind of «intelligence».

Objectica is a third party application package written purely in Mathematica and easily defines such objects. Because they are lightweight and fast in access, you can also create big models. Every aspect of object oriented modeling is directly implemented in a natural and short syntax — Objectica is designed to create models. Chemical kinetics is just one example. I introduce you into the syntax as well as the concepts of Objectica and all examples shown here are built from scratch in order to facilitate the transfer of the ideas to your own projects, potentially in a totally different subject.