International Mathematics and Statistics Library
IMSL, abrégé de International Mathematics and Statistics Library, est une bibliothèque logicielle d'objets utilisables pour le développement informatique d'applications d'analyse numérique. Les domaines typiques d'utilisation d'IMSL sont le décisionnel, le datamining[1], la recherche et développement, le contrôle de processus, l'optimisation, les calculs financiers, la bio-informatique, les simulations aéronautiques et automobiles, l'industrie pétrolière, le calcul parallèle[2], l'éducation et la recherche[3], etc[4].
Écrit en | Fortran |
---|---|
Type | Bibliothèque logicielle |
Site web | www.roguewave.com/products-services/imsl-numerical-libraries |
La première bibliothèque IMSL, pour Fortran, a été créée en 1970, suivie par la version C, dont le nom était initialement C/Base, en 1991. Plus récentes, les versions Java et C# existent respectivement depuis 2002 et depuis 2004. PyIMSL et PyIMSL Studio pour Python sont quant à eux apparus en et .
IMSL pour Fortran et IMSL pour C/C++ sont des bibliothèques parallèles (calcul HPC) pouvant fonctionner sur des fermes de calcul, des systèmes à microprocesseur multi-cœur et des calculateurs vectoriels ; ces deux bibliothèques intègrent des mécanismes de parallélisation standards tels que MPI ou OpenMP.
En 2009, Rogue Wave Software fait l'acquisition de la société Visual Numerics.
En , la nouvelle version d'IMSL C# permet à son tour de profiter des systèmes à microprocesseur multi-cœur en s'appuyant sur la TPL du framework .NET 4.0.
En , IMSL Fortran 7.0 propose aux développeurs de bénéficier des performances des GPU Nvidia en intégrant des appels transparents aux BLAS CUDA, la séquence d'appel aux routines IMSL restant inchangée. La même philosophie sera appliquée à IMSL C 8.0, en .
Versions
Fonctionnalités mathématiques et statistiques
Les bibliothèques IMSL contiennent les fonctionnalités mathématiques et statistiques suivantes :
Calcul mathématique
- Systèmes linéaires
- Problèmes de valeurs et de vecteurs propres
- Interpolation et approximation, dont :
- Splines cubiques de Kochanek-Bartels (splines TCB) (en)
- Intégration et différentiation
- Équations différentielles, dont :
- Équations aux dérivées partielles
- Solveur de l'équation de Feynman-Kac généralisée (en)
- Solveur de l'EDP de Black-Scholes
- Transformées
- Zéros de fonctions non linéaires
- Optimisation, dont :
- Fonctions spéciales
Calcul Statistique
- Statistiques de base
- Régression
- Corrélation et covariance
- Analyse de la variance et plans d'expériences
- Analyse de données catégorielles (en) et discrètes
- Statistiques non paramétriques
- Tests d'ajustements
- Séries temporelles, calcul de prévisions et datamining dont :
- Modèles GARCH (en), ARMA, ARIMA
- Réseaux de neurones pour la classification et le calcul de prévisions
- Classification naïve bayesienne
- Algorithme génétique
- Analyse multivariée, dont :
- Analyse en composantes principales
- Analyse discriminante
- Analyse de groupement (clustering hiérarchique, K-moyennes)
- Analyse de survie et de fiabilité
- Fonctions de distributions de probabilités et inverses
- Génération de nombres aléatoires, dont :
Les versions C#/.NET et Java d'IMSL contiennent aussi des fonctions de représentation graphique de données, ces langages étant couramment utilisés pour le développement d'interface homme-machine.
Plateformes disponibles
Les bibliothèques numériques IMSL sont disponibles pour de nombreuses architectures, systèmes d'exploitation et compilateurs.
- Systèmes d'exploitation : Unix, Linux, Windows et Mac OS X
- Architectures : AMD, Intel, Apple, Cray, Fujitsu, Hitachi, HP, IBM (dont Blue Gene), NEC, SGI et Sun Microsystems
- Compilateurs : Absoft, GCC, Intel, Microsoft et Portland
- Bases de données : Sybase IQ
- Plateforme de développement : ActivePython (en)
Notes et références
- Utilisation d'IMSL au sein du progiciel SAP
- Utilisation d'IMSL à l'IDRIS.
- Utilisation d'IMSL par l'université Paris-Sud 11
- (en) Rogue Wave - Case Studies
- http://www.roguewave.com/products/imsl-numerical-libraries/c-library.aspx
- http://www.roguewave.com/products/imsl-numerical-libraries/.net-library.aspx
- http://www.roguewave.com/products/imsl-numerical-libraries/java-library.aspx
- http://www.roguewave.com/products/imsl-numerical-libraries/pyimsl-studio.aspx
Bibliographie
- T. J. Aird, D. G. Kainer, The IMSL environment for software development, ACM SIGNUM Newsletter, volume 14 Issue 1, DOI:10.1145/1053417.806437
Voir aussi
Liens externes
- Portail de la programmation informatique
- Portail du logiciel
- Portail des mathématiques