Introduction | Download | Documentation | About
Introduction
PNL is a numerical library for C and C++ programmers. It is free software under the GNU LGPL.
A wide range of routines are available on the following topics
- Complex Numbers
- Cumulative Distribution Functions
- Fast Fourier Transform
- Hyper Matrices
- Laplace Inversion
- Least-Squares fitting
- Linear Algebra
- List / array containers
- MPI bindings
- Multidimensional root Finding
- Multivariate polynomial regression
- Numerical Integration
- Optimization with inequality constraints including linear programming
- Permutations
- Random number generators (including a parallel one)
- Sorting
- Special Functions
PNL is thread-safe and suitable for use in a parallel environment.
Download and Installation
To download the library, simply clone, fork or download a zip of the Github repo.
Alternatively, releases are available here.
The users of Visual Studio can directly use binary releases.
For more details on installing and using the library, see the README file on the Github page.
Documentation
PNL comes with a manual describing all the routines exported by the library. This documentation written in LaTeX can be produced in both PDF or HTML formats.
About the library
The PNL project started in 2007 and has been mainly developed by Jérôme Lelong since then with some contributions by Céline Labart, Ismail Laachir and David Pommier.
This library is currently used by the PREMIA software (a software to price and hedge financial derivatives).
People from the following universities or labs have reported to use the library: Ecole Centrale Paris, Ecole des Ponts (CERMICS), INRIA (MATHRISK), Nanyang Technological University (Division of Mathematical Sciences), University Grenoble Alpes (LJK), University of Paris East (LAMA), University of Savoie (LAMA), University Paris 13 (LAGA), University of Udine.