Heart rhythms. Introduction
Pacemakers generate regular oscillating rhythms (waves)
in a normal heart. Tachycardia and fibrillation are attributed
to spiral and chaotic waves in heart tissue. Understanding
(at least accurate simulations) of nonlinear waves propagation and
instabilities may help to cure diseased heart.
My notes are rather chaotic yet because the subject is too extensive.
For more information look at
The Virtual Heart.
Excitable media and models of cardiac cell Action Potential (AP)
In 1952 Alan Hodgkin and Andrew Huxley proposed the first model to explain
the ionic mechanisms underlying the initiation and propagation of action
potentials in the squid giant axon (see Hodgkin-Huxley model).
Since then many models of cardiac cell AP appear (see
Models
of cardiac cell in Scholarpedia).
We consider some of them
Simplified models:
FitzHugh-Nagumo (1961),
Karma (1993),
Fenton-Karma (1998),
Bueno-Orovio-Cherry-Fenton (2008),
Ionic models:
Noble (1962),
Beeler-Reuter (1977),
Luo-Rudy I (1991),
Tusscher-Noble-Noble-Panfilov (2004, 2006).
JavaScript, Java, C... ?
To explore heart models these pages use JavaScript and html5. The scripts
are flexible, simple and free (public domain).
I hope you can modify it or make your own models.
See Interactive Mandelbrot set and
Animated Lissajous figures examples in JS + html5.
In the Java and
JavaScript time tests I've got similar
efficiency (10 years ago Java applet was only ~25% slower than similar C
program). So both JIT compilers are very impressive.
And we have GPU for heavy calculations! WebGL is used for all 2,3D simulations
(see WebGL and simulations on GPU).
Need for speed. WebCL vs. WebGL
Based on OpenGL ES (made to support mobile phones and tablets) WebGL has many
restrictions: no double precision, no multiple output (only one 4 "color" cannel),
saving data only in float32 textures (no 32, 64 bit buffers). Therefore in complex models
(BR, LR, TNNP) with many variables (6-19) we have to use 2-5 shaders to update all
of them (this double texture reading at least).
On Geforce GTX 560 WebCL based FHN 1k model is 19/13 faster than
WebGL based one see test folder. It is very likely
because WebCL uses float2 buffers to store u, v data (in WebGL I
have to use float4 (i.e. 2 times larger) textures due to browsers
"feature" yet) and buffers are cached in Fermy GPUs.
Unfortunately my scripts are not very stable yet in the Nokia WebCL extension for Firefox.
To see WebCL based applications
you need a modern graphical card, OpenCL driver and FireFox with the
Nokia Research WebCL extension.
Cloud computing
NVIDIA proposed Virtual Desktop
Infrastructure solutions to transform Windows desktops (by adding a fully
virtualized GPU board) into cloud-like resources accessible by end users from any
device, anywhere, at any time. So your phone or tablet with Windows 8 could enter a remote server
and run hard GPU based simulations on html pages.
Heart rhythms
updated 24 May 2012