Image Processing and Analysis for High-resolution Volumes


F3D is written in OpenCL, so it achieves platform-portable parallelism on modern multi-core CPUs and many-core GPUs. The interface and mechanisms to access F3D core are written in Java as a plugin for Fiji/ImageJ to deliver several key image-processing algorithms necessary to remove artifacts from micro-tomography data. The algorithms consist of data parallel aware filters that can efficiently utilize resources and can work on out of core datasets and scale efficiently across multiple accelerators. Optimizing for data parallel filters, streaming out of core datasets, and efficient resource and memory and data managements over complex execution sequence of filters greatly expedites any scientific workflow with image processing requirements. F3D preforms several different types of 3D image processing operations, such as non-linear filtering using bilateral filtering and/or median filtering and/or morphological operators (MM).

High performance GISAXS simulation package 


HipGISAXS is a flexible grazing-incidence small-angle X-ray scattering (GISAXS) simulation code in the framework of the distorted wave Born approximation that effectively utilizes the parallel processing power provided by graphics processors and multicore processors. The code, entitled High-Performance GISAXS, computes the GISAXS image for any given superposition of user-defined custom shapes or morphologies in a material and for various grazing-incidence angles and sample orientations. These capabilities permit treatment of a wide range of possible sample structures, including multilayered polymer films and nanoparticles on top of or embedded in a substrate or polymer film layers. In cases where the material displays regions of significant refractive index contrast, an algorithm has been implemented to perform a slicing of the sample and compute the averaged refractive index profile to be used as the reference geometry of the unperturbed system.  The parallelized simulation code is well suited for addressing the analysis efforts required by the increasing amounts of GISAXS data being produced by high-speed detectors and ultrafast light sources.


Pole EXpansion and Selected Inversion package for electronic structure calculation


The Pole EXpansion and Selected Inversion (PEXSI) method is a fast method for electronic structure calculation based on Kohn-Sham density functional theory.  It efficiently evaluates certain selected elements of matrix functions, e.g., the Fermi-Dirac function of the KS Hamiltonian, which yields a density matrix.  It can be used as an alternative to diagonalization methods for obtaining the density, energy and forces.  The PEXSI library is written in C++, and uses message passing interface (MPI) to parallelize the computation on distributed memory computing systems and achieve scalability on more than 10,000 processors. Further information and downloads


Micro-CT Analysis Plugin


Quant-CT allows image enhancement, filtering, segmentation and feature extraction from samples imaged using micro-tomography. A new set of algorithms for Quant-CT uses GPU, and we have obtained 80X speed up of several core filtering algorithms. F3D is currrently available to process data generated at ALS beamline 8.3.2; testing data from other beamlines is underway. 

Multi-GPU Accelerated Ptychography Software


Combining diffraction with microscopy and the computational power of GPUs enable  high throughput "imaging by diffraction" techniques to produce some of the sharpest images available.  By augmenting a scanning microscope with a parallel detector,  and adding a scanning stage to diffraction imaging instruments, ptychographic imaging is readily available. To sustain high throughput processing (~>TB/h) the CAMERA collaboration has recently released a software suite for high throughput real time ptychographic data analysis which is freely available and open for collaborative development. 

High-throughput Analysis and Assembly of Porous Material Structures


Zeo++ offers an unique set of capabilities for enumeration, characterization and screening of databases of porous materials such as zeolites and metal organic frameworks.