A general simulator for reaction-based biogeochemical processes

Yilin Fang, Steven B. Yabusaki, Gour Tsyh Yeh

Research output: Contribution to journalArticlepeer-review

11 Scopus citations


As more complex biogeochemical situations are being investigated (e.g., evolving reactivity, passivation of reactive surfaces, dissolution of sorbates), there is a growing need for biogeochemical simulators to flexibly and facilely address new reaction forms and rate laws. This paper presents an approach that accommodates this need to efficiently simulate general biogeochemical processes, while insulating the user from additional code development. The approach allows for the automatic extraction of fundamental reaction stoichiometry and thermodynamics from a standard chemistry database, and the symbolic entry of arbitrarily complex user-specified reaction forms, rate laws, and equilibria. The user-specified equilibria and kinetic rates (i.e., they are not defined in the format of the standardized database) are interpreted by the Maple V (Waterloo Maple) symbolic mathematical software package. FORTRAN 90 code is then generated by Maple for (1) the analytical Jacobian matrix (if preferred over the numerical Jacobian matrix) used in the Newton-Raphson solution procedure, and (2) the residual functions for governing equations, user-specified equilibrium expressions and rate laws. Matrix diagonalization eliminates the need to conceptualize the system of reactions as a tableau, which comprises a list of components, species, the stoichiometric matrix, and the formation equilibrium constant vector that forms the species from components (Morel and Hering, 1993), while identifying a minimum rank set of basis species with enhanced numerical convergence properties. The newly generated code, which is designed to operate in the BIOGEOCHEM biogeochemical simulator, is then compiled and linked into the BIOGEOCHEM executable. With these features, users can avoid recoding the simulator to accept new equilibrium expressions or kinetic rate laws, while still taking full advantage of the stoichiometry and thermodynamics provided by an existing chemical database. Thus, the approach introduces efficiencies in the specification of biogeochemical reaction networks and eliminates opportunities for mistakes in preparing input files and coding errors. Test problems are used to demonstrate the features of the procedure.

Original languageEnglish
Pages (from-to)64-72
Number of pages9
JournalComputers and Geosciences
Issue number1
StatePublished - Feb 2006


  • Diagonalization
  • Reaction network
  • Symbolic programming
  • Thermodynamic database


Dive into the research topics of 'A general simulator for reaction-based biogeochemical processes'. Together they form a unique fingerprint.

Cite this