GPU Accelerators

Finite element methods and morphology are used in current animation tools, and will be employed in the future in the gaming industry. We are moving library tools from the CPU to the GPU, from meshing facilities to linear algebra routines.

Mesher

In order to compile and contribute to this project you need a C++11 or C++14 compiler, and OpenCL drivers.

Carbon Nanotubes Analysis

The CNT (Carbon Nanotubes) materials are the new kids on the block, providing a huge stiffness with minimal additional weight. We have developed an analysis library with Fenics, but due to its limitations we're porting it to the Fenics library. It is under current development and it should not be considered production-ready.

Sindy

In order to compile and contribute to this project you need a C++11 or C++14 compiler, and the Fenics library (see your compiler).

A NGS generic programming library

The libseq software is a C++11 and C++14 programming library with facilities designed for Next Generation Sequencing (NGS) analysis. It is under current development and it should not be considered production-ready. The software makes use of heavy templating in order to achieve a runtime boost by using static polymorphism and class traits.

Libseq

In order to compile and contribute to this project you need a C++11 or C++14 compiler, the Boost library, Intel's Threading Building Blocks library, the HDF5 library, and the MPI (Message Passing Interface) distributed programming library (see your compiler).

The source code is available under the BSD license.

An A* NGS error correction algorithm

This work proposes an error correction method based on the de Bruijn graph that permits its execution on Gigabyte-sized data sets using normal desktop computers. The implementation makes extensive use of hashing techniques, and implements an A* algorithm for optimal error correction, minimizing the distance between an erroneous read and its possible replacement with the Needleman-Wunsch score. Our approach outperforms other popular methods both in terms of random access memory usage and computing times.

Sequence

In order to compile and contribute to this project you need A C++11 compiler, the Boost library, and Intel's Threading Building Blocks library.

The source code is available under the BSD license.

Fracture Mechanics

This projects exploits the Fenics application that comprises several de facto standard libraries for automated, efficient solution of differential equations. It is a complete rewrite of a previous Python-based solution due to the huge performance limitations, and the inability to parallelize the solution.

Fenicspp

In order to compile and contribute to this project you need a C++11 compiler, and the Fenics Finite Element application.

The source code is available under the BSD license.

Mobile Computing & Kinect

In recent years I've collaborated with museums and institutions for the realization of mobile applications (on iOS and Android), as well as didactic programs using the Kinect 2 sensor. My application Palazzo Massimo in LIS and ASL won in 2014 the European Excellence Award for Accessible Tourism (European Commission, Bruxelles).

Technologies

Mobile applications are multiplatform, and developed with Corona SDK or Xamarin. Kinect applications are developed with .Net.

These are not open source projects. See the theses proposals for more information.

High-throughput Error Correction by Oligomers

This work presents a novel error correction algorithm based on k-mer strings with their associated overlap graph, along with an open-source, multi-threaded, implementation. The algorithm, named HErCoOl (High-throughput Error Correction by Oligomers), needs minimal tuning, only an overall error rate and –optionally– information about the genome sizes. HErCoOl was compared against other state-of-the art methods, using empirical NGS data obtained with Roche 454 technology, focusing the benchmarks on mixtures of related species. Results show that HErCoOl improves significantly over the current methods, and the parallelisation scales well with the size of input NGS genome producing long sequence reads, such as Roche 454 or Ion Torrent. HErCoOl provides a fast and efficient error correction of NGS data, especially for mixed samples. Its platform-independent, open-source, multi-threaded implementation assures flexibility for being employed and integrated in any NGS data analysis software.

HErCoOl

This is a past project, and it is no longer developed. The reason is performance, as NGS technologies progress, we need to achieve always increasing performances.

The source code is available under the GPLv2 license.