Action Potential Prediction Project
ApPredict is a free open source program for prediction of action potential changes under drug-block of ion channels. The ion channel block is modelled as conductance block, see Gary Mirams’ book chapter for details of this, and it can be used with a number of action potential models (specified using CellML), different pacing rates, and blockade of the following ion channels can be included:
- IKr (hERG),
- ICaL (CaV1.2),
- INa (NaV1.5),
- INaL (NaV1.5, late or persistent),
- IKs (KCNQ1),
- Ito (Kv4.3),
- IK1 (KCNN4).
If you have any questions/comments, please get in touch with
gary.mirams@nottingham.ac.uk
.
Web Portal
A web-based portal interface to this program is now available: https://chaste.cs.ox.ac.uk/ActionPotential/ (feedback welcome), if you use this you can ignore all the instructions below – it’s all set up for you!
The Science
For an overview of what ApPredict is doing, why, and how well it is performing, please see the user guide which is hosted on Figshare and the ApPredict paper.
Using ApPredict
Installation
N.B. you don’t need to do any of the below to use the web portal version of ApPredict.
Pre-requisites
ApPredict requires a ‘Code User’ or ‘Code Developer’ version of Chaste to be installed and compiled. See GettingStarted for a guide on what we mean, and how to do this.
Code User: Stable Release Version
A stable version of ApPredict, compatible with the latest release of Chaste, is available either to download, or as a tag within github.
Option 1: Download
Download both:
- the latest release of Chaste from https://github.com/Chaste/Chaste/releases, and
- the corresponding release of ApPredict from https://github.com/Chaste/ApPredict/releases.
Option 2: Get from Github
To get both the release of Chaste and ApPredict do:
Code Developer: Development Version
Alternatively the development version can be downloaded using git, using the following instructions (as per the Repository Access Guide):
If you are not using the Ubuntu package then the environment settings will need to be updated to give the correct paths to all of Chaste’s dependencies. See the Developer Install Guide.
then similarly in the same folder
The project can be kept up to date by simply navigating to the Chaste
folder
and running
The External Developer Guide provides a guide as to the latest revision that passed all tests.
Compilation
See Step 4 of the user project guide for instructions on how to compile ApPredict (where <your_project_name>
is ApPredict
).
Running
The executable will then display a list of command line arguments.
(N.B. you may have to add Chaste libraries under the Chaste libs folder to your LD_LIBRARY_PATH
variable)
Error Codes
When you start blocking ion channels, various funny things can happen and lead to error codes in action potential evaluation. Here is a schematic of the errors you can get back from ApPredict’s main methods.
Release Notes
- ApPredict is still in active development. More recent release notes are on https://github.com/Chaste/ApPredict/releases.
Old Release Notes
- October 2017 - there are now some new error codes to get more fine-grained information out when APD evaluations fail, or there is unusual behaviour that might want to be classed separately (see above).
- April 2017 - fa8a3a4 The
LookupTableGenerator
(for uncertainty quantification calculations) is now a bit better at detecting ‘No depolarization’ because it does a pre-run with sodium channel blocked and sets the threshold for an action potential to be higher than the voltage achieved here. - Nov 2016 - the code has moved to a github repository
- In 2361a19 downsampling was improved to provide nicer visual plots.
- Feb 2016 - Release 3.4 of ApPredict is available to download. Important changes since the Release 3.3 version of ApPredict are listed here:
- In r25668:
- New command line arguments have been added that allow the ‘saturation level’ of a dose response curve to be specified with options like
--saturation-herg
or--saturation-na
etc.. The value(s) that follow are given as percentages, where 0% is the default (full block of the ion channel), 50% would mean an infinite amount of drug can only halve the conductance. Additionally, this allows agonists (activators) to be modelled by specifying saturation levels above 100% (in which case the IC50 is really an EC50, but interface still says IC50).
- New command line arguments have been added that allow the ‘saturation level’ of a dose response curve to be specified with options like
- As of r24408: A number of additional options to:
- Allow any CellML model to be used (when tagged with Chaste metadata - all the ones included in ApPredict/src/cellml are ready to use).
- Allow the downsampling associated with voltage traces to be switched off (it is on as default to make online plotting fast).
- Allow the stimulus current properties to be changed.
- The new flags for these options can be seen by running the executable with no arguments.
- In r25668: