BIU - Bioinformatic Utility Library
This document provides reference information about the Bioinformatic Utility Library.
The goal
This C++ programming library provides a classes and functions often used in the bioinformatics context of our group. It collects data structures and class hierarchies for biomolecule modelling and general usefull functionalities as program parameter parsing, string conversions, etc.Features
String operations
The C++ standard has only a few predefined string operations for immediate calling. We provide a set of wrapper functions around STL functionalities to ease their usage.
Program parameter parsing
Type safe parameter parsing, parameter information generation and error message generation is an anoying part of developing new command line tools. The provided option parser will help to focus on the method than on the mentioned tasks.
Random number generation
The generation of (pseudo) random numbers is an important part for reproducible simulations and experiments. The provided generator facility allows a central and flexible application of different generators.
The following random number generators are provided:
- a wrapper around ISO C random number functions (CPU dependent results)
- linear congruent generator
- a quasi random number generator wrapping the sobol sequence generator from the GNU Scientific Library
Lattice Proteins
Currently we provide representations for lattice proteins with contact based energy functions on arbitrary lattices.
Currently the following lattice models inclusive automorphisms etc are provided:
- 2D square
- 3D cubic
- 3D face centered cubic (FCC)
The contact function can be defined on an arbitrary monomer alphabet. For structural neighbor generation move sets are provided:
- pull moves (ergodic)
- pivot moves (ergodic)
Appendix
Additionally, the documentation also features the following parts:The following lists and indices are available