Designed especially for neurobiologists, FluoRender is an interactive tool for multi-channel fluorescence microscopy data visualization and analysis.
Deep brain stimulation
BrainStimulator is a set of networks that are used in SCIRun to perform simulations of brain stimulation such as transcranial direct current stimulation (tDCS) and magnetic transcranial stimulation (TMS).
Developing software tools for science has always been a central vision of the SCI Institute.

SCI Publications


S. Vakkalanka, M. DeLisi, G. Gopalakrishnan, R.M. Kirby. “Scheduling Considerations for Building Dynamic Verification Tools for MPI,” In Proceedings of the 6th Workshop on Parallel and Distributed Systems: Testing, Analysis, and Debugging, Seattle, WA, PADTAD '08, Vol. 3, ACM, pp. 1--6. 2008.
ISBN: 978-1-60558-052-4
DOI: 10.1145/1390841.1390844

S. Vakkalanka, G. Gopalakrishnan, R.M. Kirby. “Dynamic Verification of MPI Programs with Reductions in Presence of Split Operations and Relaxed Orderings,” In Computer Aided Verification Lecture Notes in Computer Science , Vol. 5123, pp. 66--79. July, 2008.
DOI: 10.1007/978-3-540-70545-1_9


Dynamic verification methods are the natural choice for debugging real world programs when model extraction and maintenance are expensive. Message passing programs written using the MPI library fall under this category. Partial order reduction can be very effective for MPI programs because for each process, all its local computational steps, as well as many of its MPI calls, commute with the corresponding steps of all other processes. However, when dependencies arise among MPI calls, they are often a function of the runtime state. While this suggests the use of dynamic partial order reduction (DPOR), three aspects of MPI make previous DPOR algorithms inapplicable: (i) many MPI calls are allowed to complete out of program order; (ii) MPI has global synchronization operations (e.g., barrier) that have a special weak semantics; and (iii) the runtime of MPI cannot, without intrusive modifications, be forced to pursue a specific interleaving because of MPI’s liberal message matching rules, especially pertaining to ‘wildcard receives’. We describe our new dynamic verification algorithm ‘POE’ that exploits the out of order completion semantics of MPI by delaying the issuance of MPI calls, issuing them only according to the formation of match-sets, which are ample ‘big-step’ moves. POE guarantees to manifest any feasible interleaving by dynamically rewriting wildcard receives by specific-source receives. This is the first dynamic model-checking algorithm with reductions for (a large subset of) MPI that guarantees to catch all deadlocks and local assertion violations, and is found to work well in practice.

R.T. Whitaker, R.M. Kirby, J.G. Sinstra, M.D. Meyer. “Multimaterial Meshing of MRI Head Data for Bioelectric Field Simulations,” In Proceedings of the 17th International Meshing Roundtable, 2008.


The problem of body fitting meshes that are both adaptive and geometrically accurate is important in a variety of biomedical applications in a multitude of clinical settings, including electrocardiology, neurology, and orthopedics. Adaptivity is necessary because of the combination of large-scale and smallscale structures (e.g. relatively small blood vessels spanning a human head). Geometric accuracy is important for several reasons. In some cases, such as computational fluid dynamics, the fine-scale structure of the fluid domain is important for qualitative and quantitative accuracy of the solutions. More generally, finite element approximations of elliptic problems with rough coefficients require increased spatial resolution normal to material boundaries [3]. The problem of constructing meshes from biomedical images is particularly difficult because of the complexity and irregularity of the structures, and thus tuning or correcting meshes by hand is quite difficult and time consuming. Many researchers and, indeed, commercial products simply subdivide the underlying hexahedral image grid and assign material properties to tetrahedra based on standard decomposition of each hexahedron into tetrahedra.

This paper presents a small case study of the results of a recently developed method for multimaterial, tetrahedral meshing of biomedical volumes [6]. The method uses an iterative relaxation of surface point point positions that are constrained to subsets of the volume that correspond to boundaries between different materials. In this paper we briefly review the method and present results on a set of MRI head images for use in bioelectric field simulation and source localization.

Y. Yang, X. Chen, G. Gopalakrishnan, R.M. Kirby. “Efficient Stateful Dynamic Partial Order Reduction,” In Proceedings of Model Checking Software: 15th International SPIN Workshop, Los Angeles, CA, Vol. 5156, pp. 288--305. August, 2008.
DOI: 10.1007/978-3-540-85114-1_20


In applying stateless model checking methods to realistic multithreaded programs, we find that stateless search methods are ineffective in practice, even with dynamic partial order reduction (DPOR) enabled. To solve the inefficiency of stateless runtime model checking, this paper makes two related contributions. The first contribution is a novel and conservative light-weight method for storing abstract states at runtime to help avoid redundant searches. The second contribution is a stateful dynamic partial order reduction algorithm (SDPOR) that avoids a potential unsoundness when DPOR is naively applied in the context of stateful search. Our stateful runtime model checking approach combines light-weight state recording with SDPOR, and strikes a good balance between state recording overheads, on one hand, and the elimination of redundant searches, on the other hand. Our experiments confirm the effectiveness of our approach on several multithreaded benchmarks in C, including some practical programs.


S. Curtis, R.M. Kirby, J.K. Ryan, C.-W. Shu. “Post-Processing for the Discontinuous Galerkin Method Over Non-Uniform Meshes,” In SIAM Journal of Scientific Computing, Vol. 30, No. 1, pp. 272--289. 2007.

S.E. Geneser, R.M. Kirby, D. Xiu, F.B. Sachse. “Stochastic Markovian Modeling of Electrophysiology of Ion Channels: Reconstruction of Standard Deviations in Macroscopic Currents,” In Journal of Theoretical Biology, Vol. 245, No. 4, pp. 627--637. 2007.
DOI: 10.1016/j.jtbi.2006.10.016


Markovian models of ion channels have proven useful in the reconstruction of experimental data and prediction of cellular electrophysiology. We present the stochastic Galerkin method as an alternative to Monte Carlo and other stochastic methods for assessing the impact of uncertain rate coefficients on the predictions of Markovian ion channel models. We extend and study two different ion channel models: a simple model with only a single open and a closed state and a detailed model of the cardiac rapidly activating delayed rectifier potassium current. We demonstrate the efficacy of stochastic Galerkin methods for computing solutions to systems with random model parameters. Our studies illustrate the characteristic changes in distributions of state transitions and electrical currents through ion channels due to random rate coefficients. Furthermore, the studies indicate the applicability of the stochastic Galerkin technique for uncertainty and sensitivity analysis of bio-mathematical models.

Keywords: Stochastic Galerkin, Polynomial chaos, Stochastic processes, Markov modeling, Ion channels

C.W. Hamman, R.M. Kirby, M. Berzins. “Parallelization and Scalability of a Spectral Element Channel Flow Solver for Incompressible Navier-Stokes Equations,” In Concurrency and Computation: Practice and Experience, Vol. 14, No. 10, pp. 1403--1422. 2007.

C.R. Hamman, R.M. Kirby, M. Berzins. “Parallel Direct Simulation of Incompressible Navier Stokes Equations,” In Concurrency and Computation, Vol. 19, No. 10, pp. 1403-1427. 2007.

R.M. Kirby, Z. Yosibash, G.E. Karniadakis. “Towards Stable Coupling Methods for High-Order Discretizations of Fluid-Structure Interaction: Algorithms and Observations,” In Journal of Computational Physics, Vol. 223, No. 2, pp. 489--518. 2007.

M.D. Meyer, B. Nelson, R.M. Kirby, R.T. Whitaker. “Particle Systems for Efficient and Accurate Finite Element Visualization,” In IEEE Transactions on Visualization and Computer Graphics, Vol. 13, No. 5, pp. 1015--1026. 2007.

M.D. Meyer, R.M. Kirby, R.T. Whitaker. “Topology, Accuracy, and Quality of Isosurface Meshes Using Dynamic Particles,” In IEEE Transactions on Visualization and Computer Graphics, Vol. 13, No. 6, IEEE, pp. 1704--1711. Nov, 2007.

E.P. Newren, A.L. Fogelson, R.D. Guy, R.M. Kirby. “Unconditionally Stable Discretizations of the Immersed Boundary Equations,” In Journal of Computational Physics, Vol. 222, No. 2, pp. 702--719. 2007.

E.P. Newren, A.L. Fogelson, R.D. Guy, R.M. Kirby. “Unconditionally Stable Discretizations of the Immersed Boundary Equations,” In Journal of Computational Physics, Vol. 222, No. 2, pp. 702--719. March, 2007.

T. Ochotta, C.E. Scheidegger, J. Schreiner, Y. Lima, R.M. Kirby, C.T. Silva. “A Unified Projection Operator for Moving Least Squares Surfaces,” SCI Institute Technical Report, No. UUSCI-2007-006, University of Utah, 2007.

R. Palmer, G. Gopalakrishnan, R.M. Kirby. “Semantics Driven Dynamic Partial-Order Reduction of MPI-based Parallel Programs,” In Proceedings of Parallel and Distributed Systems: Testing and Debugging (PADTAD), London, UK, Note: Awarded Best Paper, 2007.

S. Pervez, G. Gopalakrishnan, R.M. Kirby, R. Palmer, R. Thakur, W. Gropp. “Practical Model Checking Method for Verifying Correctness of MPI Programs,” In Recent Advances in Parallel Virtual Machine and Message Passing Interface - Proceedings of EuroPVM-MPI 2007, Paris, France, Vol. 4757/2007, pp. 344--353. 2007.

Y. Yang, X. Chen, G. Gopalakrishnan, R.M. Kirby. “Distributed Dynamic Partial Order Reduction Based Verification of Threaded Software,” In Proceedings of Model Checking Software: 14th International SPIN Workshop, Berlin, Germany, Vol. 4595/2007, pp. 58--75. July, 2007.


C.W. Hamman, R.M. Kirby, J.C. Klewicki. “On the Lamb Vector Divergence as a Momentum Field Diagnostic Employed in Turbulent Channel Flow,” In Proceedings of the 59th Annual Meeting of the American Physical Society, Division of Fluid Dynamics, Tampa Bay, Fl, November, 2006.

I. Ionescu, J.E. Guilkey, M. Berzins, R.M. Kirby, J.A. Weiss. “Simulation of Soft Tissue Failure Using the Material Point Method,” In Journal of Biomechanical Engineering, Vol. 128, No. 6, pp. 917--924. 2006.

R.M. Kirby, C.R. Johnson, M. Berzins. “Involving Undergraduates in Computational Science and Engineering Research: Successes and Challenges,” In Proceedings of Computational Science - ICCS 2006: 6th International Conference, Reading, UK, Lecture Notes in Computer Science, Vol. 3992, May 28-31, 2006.