An introduction to arb

What is arb?

arb solves arbitrary partial differential equations on unstructured meshes using (principally) the finite volume method. The code is written in fortran, with some meta-programming done in perl with help from the symbolic algebra package maxima.

The primary strengths of arb are:

CELL_UNKNOWN <temperature> [K] "<P>*<V>/(<R>)" ON <allcells>

represents an unknown temperature field stored at cell centres, with units Kelvin, its initial expression in terms of other variables, and the region over which it is defined (being all cells within the simulation domain)

The typical thing you want to do with arb is solve multiphysics problems using Eulerian methods, including Navier-Stokes, non-Newtonian, and/or multiphase flows, coupled chemical reactions, and heat and mass transfer problems.

Compared to other partial differential equation solvers the disadvantages of arb are:

What is needed to run arb?

arb requires a UNIX type environment to run, and is tested on the Apple OsX and ubuntu and red hat linux platforms. Certain third party programs are used by arb:

By combining gfortran with the UMFPACK sparse linear solver, arb can be run using freely available GPL licensed software. Installation utilises the package manager for each operating system, using macports on OsX.

Getting started

Further details about how to install and run arb are given in Getting started.

Contributors

arb was originally devised by Dalton Harvie, but is now a open-source collaborative project. In addition to the public master branch housed on the github, development of arb is mainly conducted using a private git repository. Please contact @daltonh for access if you want to contribute to the development of arb.

Citing

If you use arb to conduct research, please cite it using the publication, ‘An implicit finite volume method for arbitrary transport equations’ (Harvie, Dalton J. E.), In ANZIAM J. (CTAC2010), volume 52, 2012.

Licence

arb is released under the GNU General Public License. Full details of the licence are in the arb licence file.

arb

v0.70

manual

contents