Chaste: A test-driven approach to software development for biological modelling
Pitt-Francis J., Pathmanathan P., Bernabeu MO., Bordas R., Cooper J., Fletcher AG., Mirams GR., Murray P., Osborne JM., Walter A., Chapman SJ., Garny A., van Leeuwen IMM., Maini PK., Rodríguez B., Waters SL., Whiteley JP., Byrne HM., Gavaghan DJ.
Chaste ('Cancer, heart and soft-tissue environment') is a software library and a set of test suites for computational simulations in the domain of biology. Current functionality has arisen from modelling in the fields of cancer, cardiac physiology and soft-tissue mechanics. It is released under the LGPL 2.1 licence. Chaste has been developed using agile programming methods. The project began in 2005 when it was reasoned that the modelling of a variety of physiological phenomena required both a generic mathematical modelling framework, and a generic computational/simulation framework. The Chaste project evolved from the Integrative Biology (IB) e-Science Project, an inter-institutional project aimed at developing a suitable IT infrastructure to support physiome-level computational modelling, with a primary focus on cardiac and cancer modelling. Program summary: Program title: Chaste. Catalogue identifier: AEFD_v1_0. Program summary URL: http://cpc.cs.qub.ac.uk/summaries/AEFD_v1_0.html. Program obtainable from: CPC Program Library, Queen's University, Belfast, N. Ireland. Licensing provisions: LGPL 2.1. No. of lines in distributed program, including test data, etc.: 5 407 321. No. of bytes in distributed program, including test data, etc.: 42 004 554. Distribution format: tar.gz. Programming language: C++. Operating system: Unix. Has the code been vectorised or parallelized?: Yes. Parallelized using MPI. RAM: < 90 Megabytes for two of the scenarios described in Section 6 of the manuscript (Monodomain re-entry on a slab or Cylindrical crypt simulation). Up to 16 Gigabytes (distributed across processors) for full resolution bidomain cardiac simulation. Classification: 3. External routines: Boost, CodeSynthesis XSD, CxxTest, HDF5, METIS, MPI, PETSc, Triangle, Xerces. Nature of problem: Chaste may be used for solving coupled ODE and PDE systems arising from modelling biological systems. Use of Chaste in two application areas are described in this paper: cardiac electrophysiology and intestinal crypt dynamics. Solution method: Coupled multi-physics with PDE, ODE and discrete mechanics simulation. Running time: The largest cardiac simulation described in the manuscript takes about 6 hours to run on a single 3 GHz core. See results section (Section 6) of the manuscript for discussion on parallel scaling. © 2009 Elsevier B.V. All rights reserved.