VOX-FE GUI developments
Posted: 25 Jan 2015 | 15:55
For the last few years, I have had the opportunity to collaborate with Prof. Michael Fagan of the Medical and Biological Engineering group at the University of Hull on the development of his VOX-FE voxel finite-element (FE) bone modelling software. Past projects under EPSRC and HECToR dCSE funding allowed us to improve the scaling of the core solver and implementent parallel I/O, but it has become increasingly apparently that this was papering over the cracks, and a complete re-engineering of the code base would be required to make it portable, scalable and flexible enough to be useable.
We are currently nearing the end of an ARCHER eCSE grant that has allowed us to do just that. Neelofer Banglawala has been working on the re-implementation of the FE solver (she writes about it in this blog post), while Richard Holbrey, a research fellow at Hull, has re-written the entire GUI from scratch. He reports:
"The VOX-FE GUI was initially developed on Windows using the Borland/Embarcadero 32-bit C++Builder toolkit, which had several limitations including the maximum total memory of 4GB, and being tied to a Windows platform. Porting this code to the more recent 64-bit compiler proved to be difficult due to lack of support (eg for OpenGL). Re-writing the GUI as a ParaView plugin was favoured due to cross-platform availability, in-built visualization (clipping, contouring etc.) and the possibility of working in parallel with very large data sets. The plugin architecture also forces the user/author to consider working with data which may reside remotely, so that, for example, metadata have to carefully selected and transmitted as needed."
The new GUI (see image above) can now be run on any ParaView-supported platform, including Windows, Linux, Mac OS, and even directly on the front-end of ARCHER. This can be especially useful if large models are being prepared which would otherwise need to be transferred to ARCHER over SSH before running the solver in parallel. With the new implementation completed, VOX-FE can fit easily into the workflow of many research groups, as Richard explains:
"Many research and engineering departments are able to make use of in-house Computed Tomography (CT) imaging facilities down to a resolution a few microns. Thus it is relatively straightforward to scan objects such as a fox's skull (see image at the top of this post) to investigate important properties such as bite efficiency. In assembling the FE problem, it is usually necessary to sub-sample the data in order to accommodate the resulting matrix; fine detail, such as that of the trabecular architecture, is often subsumed into a more 'homogenized' bone model.
"To include detail at the level of trabecular bone or soft tissue in FE analysis is currently prohibitive. Yet advances in accelerator technology (eg synchrotron) allow even more exquisite images to be obtained. In the head of a dragonfly (order Odonata), for example, individual muscle groups can be identified (see image below; resolution 2.4 nm). The predatory behaviour and capabilities of the dragonfly are of particular interest to evolutionary biologists, and researchers at Hull and Bonn are hoping to collaborate, using tools developed on ARCHER, to examine the development of jaw features across a range of Odonata."
The new version of the VOX-FE suite, comprising the ParaView-based GUI and the PETSc-based solver, will shortly be made available to the community as open-source.