# Available Software Libraries

To get an up-to-date list of the installed software libraries, log on to Rivanna and run the following command in a terminal window:

```
module keyword lib
```

To get more information about a specific module version, run the module spider command, for example:

```
module spider hdf5/1.10.4
```

**List of Software Library Modules**

Module | Category | Description |
---|---|---|

armadillo | numlib | Armadillo is an open-source C++ linear algebra library (matrix maths) aiming towards a good balance between speed and ease of use. Integer, floating point and complex numbers are supported, as well as a subset of trigonometric and statistics functions. |

arpack-ng | numlib | ARPACK is a collection of Fortran77 subroutines designed to solve large scale eigenvalue problems. |

blitz++ | lib | Blitz++ is a (LGPLv3+) licensed meta-template library for array manipulation in C++ with a speed comparable to Fortran implementations, while preserving an object-oriented interface |

caffe2 | lib | Caffe is a deep learning framework made with expression, speed, and modularity in mind |

clhep | numlib | The CLHEP project is intended to be a set of HEP-specific foundation and utility classes such as random generators, physics vectors, geometry and linear algebra. CLHEP is structured in a set of packages independent of any external package. |

cudnn | numlib | The NVIDIA CUDA Deep Neural Network library (cuDNN) is a GPU-accelerated library of primitives for deep neural networks. |

fftw | numlib | FFTW is a C subroutine library for computing the discrete Fourier transform (DFT) in one or more dimensions, of arbitrary input size, and of both real and complex data. |

fgsl | numlib | FGSL: A Fortran interface to the GNU Scientific Library |

freexl | lib | FreeXL is an open source library to extract valid data from within an Excel (.xls) spreadsheet. |

glew | lib | The OpenGL Extension Wrangler Library (GLEW) is a cross-platform open-source C/C++ extension loading library. GLEW provides efficient run-time mechanisms for determining which OpenGL extensions are supported on the target platform. |

gsl | numlib | The GNU Scientific Library (GSL) is a numerical library for C and C++ programmers. The library provides a wide range of mathematical routines such as random number generators, special functions and least-squares fitting. |

hypre | numlib | Hypre is a library for solving large, sparse linear systems of equations on massively parallel computers. The problems of interest arise in the simulation codes being developed at LLNL and elsewhere to study physical phenomena in the defense, environmental, energy, and biological sciences. |

imsl | numlib | IMSL Libraries provide optimized mathematical and statistical algorithms that can be embedded into C, C++, .NET, Java™, and Fortran applications, including many databases. IMSL enhances application performance, reliability, portability, scalability, and maintainability as well as developer productivity. |

inkscape | lib | Inkscape is a free and open source professional vector graphics editor. |

lapack | numlib | LAPACK is written in Fortran90 and provides routines for solving systems of simultaneous linear equations, least-squares solutions of linear systems of equations, eigenvalue problems, and singular value problems. |

leda | lib | RStudio is a set of integrated tools designed to help you be more productive with R. LEDA is a C++ class library for efficient data types and algorithms that provide algorithmic in-depth knowledge of graph- and network problems, geometric computations, combinatorial opimization and other. |

levmar | numlib | Levmar is an implementation of Levenberg-Marquardt in C |

libgd | lib | GD is an open source code library for the dynamic creation of images by programmers. |

libgeotiff | lib | Library for reading and writing coordinate system information from/to GeoTIFF files |

libglade | lib | Libglade is a library for constructing user interfaces dynamically from XML descriptions. |

libharu | lib | libHaru is a free, cross platform, open source library for generating PDF files. |

libmatheval | lib | GNU libmatheval is a library (callable from C and Fortran) to parse and evaluate symbolic expressions input as text. |

libspatialite | lib | SpatiaLite is an open source library intended to extend the SQLite core to support fully fledged Spatial SQL capabilities. |

libyaml | lib | LibYAML is a YAML parser and emitter written in C. |

mpi4py | lib | MPI for Python (mpi4py) provides bindings of the Message Passing Interface (MPI) standard for the Python programming language, allowing any Python program to exploit multiple processors. |

mysqlclient | lib | Python interface to MySQL |

openblas | numlib | OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version. |

openjpeg | lib | OpenJPEG is an open-source JPEG 2000 codec written in C. |

p3dfft | numlib | P3DFFT is a library for large-scale computer simulations on parallel platforms. |

parmetis | numlib | ParMETIS is an MPI-based parallel library that implements a variety of algorithms for partitioning unstructured graphs, meshes, and for computing fill-reducing orderings of sparse matrices. |

petsc | numlib | PETSc, pronounced PET-see (the S is silent), is a suite of data structures and routines for the scalable (parallel) solution of scientific applications modeled by partial differential equations. |

phonopy | lib | Phonopy is an open source package of phonon calculations based on the supercell approach. |

proj | lib | Program proj is a standard Unix filter function which converts geographic longitude and latitude coordinates into cartesian coordinates |

pybind11 | lib | pybind11 is a lightweight header-only library that exposes C++ types in Python and vice versa, mainly to create Python bindings of existing C++ code. |

pyyaml | lib | PyYAML is a YAML parser and emitter for the Python programming language. |

qwt | lib | The Qwt library contains GUI Components and utility classes which are primarily useful for programs with a technical background. |

readosm | lib | ReadOSM is an open source library to extract valid data from within an Open Street Map input file. |

scalapack | numlib | The ScaLAPACK (or Scalable LAPACK) library includes a subset of LAPACK routines redesigned for distributed memory MIMD parallel computers. |

sdl2 | lib | SDL: Simple DirectMedia Layer, a cross-platform multimedia library |

shapelib | lib | The Shapefile C Library provides the ability to write simple C programs for reading, writing and updating (to a limited extent) ESRI Shapefiles, and the associated attribute file (.dbf). |

slepc | numlib | SLEPc (Scalable Library for Eigenvalue Problem Computations) is a software library for the solution of large scale sparse eigenvalue problems on parallel computers. It is an extension of PETSc and can be used for either standard or generalized eigenproblems, with real or complex arithmetic. It can also be used for computing a partial SVD of a large, sparse, rectangular matrix, and to solve quadratic eigenvalue problems. |

suitesparse | numlib | SuiteSparse is a collection of libraries manipulate sparse matrices. |

zstd | lib | Zstandard is a real-time compression algorithm, providing high compression ratios. It offers a very wide range of compression/speed trade-off, while being backed by a very fast decoder. It also offers a special mode for small data, called dictionary compression, and can create dictionaries from any sample set. |