Affine arithmetic and its applications

As a hobby, I develop the ASOL -- Affine Solver in C++. The solver finds all solutions to systems of nonlinear equations. Characteristic components of its branch-and-prune algorithm are affine arithmetic as a linearization technique, contracting methods involving constraint propagation on directed acyclic graphs (DAG) and linear programming. The solver has an interface to the AMPL modeling environment.

My most recent results

Although ASOL is still just a proof-of-concept implementation, it finds even those solutions that are missed by commercial solvers. The algorithm is presented in my most recent manuscript entitled Computing multiple steady states in homogeneous azeotropic and ideal two-product distillation (DOI). Further implementation details are given in Computation of an extractive distillation column with affine arithmetic (DOI).

The parts presenting the algorithms are human readable and are independent of chemical engineering.

The primary purpose of this site is to make my preprints and source codes of my projects publicly available and to share some links that I find helpful.