Skip to content

GATB Core Online Tutorial

Genscale Team edited this page Dec 6, 2016 · 1 revision

Introduction

GATB-Core is a modern c++/11 library that natively provides high-performance and memory-efficient operations to handle Fasta/Fastq files, k-mers, bloom filters and de Bruijn graphs.

Learning GATB-Core API (Application Programming Interface) is the purpose of this tutorial: provide you with theoretical concepts and corresponding code snippets to design and write GATB-Core tools.

Requirements

  • Being a c++ developer: the GATB-Core library is intended to be used by developers having skills in c++ programming.
  • Having a web browser: this tutorial will provide you with an online GATB software compiler and runner, so you do not have to install the library on your system.

Rookie Trail: Learning GATB-Core basics

  • Banks: reading and writing Fasta and Fastq files containing DNA reads.
  • k-mers: creating, computing, iterating k-mers.
  • de Buijn graph: building and loading graphs, iterating over nodes, looking for branching nodes, etc.

Start the Rookie Trail

Expert Trail: Learning GATB-Core advanced APIs

  • More on de Bruijn graphs
  • Multithreading made easy
  • Storage: creating, saving and loading collection of objects (e.g. k-mers).
  • Application and Tool: quick creation of GATB-Core based command-line softwares.

Start the Expert Trail

Advanced Trail: re-creating DiscoSNP

Let’s see how to convert theory to practice… re-create DiscoSNP, a reference-free detection software of isolated SNPs.

Start the Advanced Trail