IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Mathématiques Discussion :

Les bibliothèques de mathématiques et de calcul numérique


Sujet :

Mathématiques

  1. #1
    Modérateur
    Avatar de ToTo13
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Janvier 2006
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 793
    Points : 9 860
    Points
    9 860
    Par défaut Les bibliothèques de mathématiques et de calcul numérique
    Bonjour,

    voilà une nouvelle discussion dans laquelle nous pourrons désormais recenser les différentes bibliothèques de math.

    Donc je commence :

    Numerical recipse in C : Cours et codes sources en C, sans aucun doute la plus grande référence du domaine
    Table des matières =>
    2 - Solution of Linear Algebraic Equations
    3 - Interpolation and Extrapolation
    4 - Integration of Functions
    5 - Evaluation of Functions
    6 - Special Functions
    7 - Random Numbers
    8 - Sorting
    9 - Root Finding and Nonlinear Sets of Equations
    10 - Minimization or Maximization of Functions
    11 - Eigensystems
    12 - Fast Fourier Transform
    13 - Fourier and Spectral Applications
    14 - Statistical Description of Data
    15 - Modeling of Data
    16 - Integration of Ordinary Differential Equations
    17 - Two Point Boundary Value Problems
    18 - Integral Equations and Inverse Theory
    19 - Partial Differential Equations
    20 - Less-Numerical Algorithms



    - Jama, pour Java Matrix.
    Consignes aux jeunes padawans : une image vaut 1000 mots !
    - Dans ton message respecter tu dois : les règles de rédaction et du forum, prévisualiser, relire et corriger TOUTES les FAUTES (frappes, sms, d'aurteaugrafe, mettre les ACCENTS et les BALISES) => ECRIRE clairement et en Français tu DOIS.
    - Le côté obscur je sens dans le MP => Tous tes MPs je détruirai et la réponse tu n'auras si en privé tu veux que je t'enseigne.(Lis donc ceci)
    - ton poste tu dois marquer quand la bonne réponse tu as obtenu.

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 603
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 603
    Points : 17 913
    Points
    17 913
    Billets dans le blog
    2
    Par défaut
    j'ajouterais (et c'est aussi valable pour le traitement d'images), la très célèbre et utlsée Graphics Gems :

    http://tog.acm.org/GraphicsGems/

    Source code, exemples...

    Disponible au téléchargement, PDF, html...

    Table des matières trop importante pour figurer ici.
    En gros : tous algos géométriques, en plusieurs versions, y compris 2D et 3D
    "Un homme sage ne croit que la moitié de ce qu’il lit. Plus sage encore, il sait laquelle".

    Consultant indépendant.
    Architecture systèmes complexes. Programmation grosses applications critiques. Ergonomie.
    C, Fortran, XWindow/Motif, Java

    Je ne réponds pas aux MP techniques

  3. #3
    Alp
    Alp est déconnecté
    Expert éminent sénior

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Points : 11 860
    Points
    11 860
    Par défaut
    Pour le C++, on trouve pas mal de modules reltifs aux maths et au calcul numérique dans Boost.

  4. #4
    Rédacteur

    Homme Profil pro
    Comme retraité, des masses
    Inscrit en
    Avril 2007
    Messages
    2 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 83
    Localisation : Suisse

    Informations professionnelles :
    Activité : Comme retraité, des masses
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 2 978
    Points : 5 179
    Points
    5 179
    Par défaut
    Bonjour à tous!

    Aux bibliothèques déjà citées par d'autres, j'ajouterais l'excellent site www.netlib.org qui regorge de ressources gratuites en Fortran 77, 90 et 95, ainsi qu'en C et C++.

    Pour les équations différentielles ordinaires, je recommande aussi le site de G. Wanner et E. Hairer de l'Université de Genève: www.unige.ch/~hairer/software.html

    Jean-Marc Blanc
    Calcul numérique de processus industriels
    Formation, conseil, développement

    Point n'est besoin d'espérer pour entreprendre, ni de réussir pour persévérer. (Guillaume le Taiseux)

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    110
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 110
    Points : 130
    Points
    130
    Par défaut
    Bonjour,

    une bibliothèque pour la gestion des matrices creuses, résolution numérique de systèmes linéaires (directes et itératives), EDO et d'autres que j'oublie, tout en séquentiel mais surtout parallèle:

    Petsc : http://www-unix.mcs.anl.gov/petsc/petsc-as/

    Il comporte plusieurs packages installables avec tels que SuperLU, Boost ou FFTW...

    Une vraie boîte à outil

  6. #6
    Membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2009
    Messages : 37
    Points : 46
    Points
    46
    Par défaut Intel MKL
    Bonjour,

    Pour l'algèbre linéaire, entre autre, il y a la librairie MKL d'Intel.
    Librairie optimisée pour les processeurs Intel (Windows et Linux) avec notamment un solveur sparse très efficace.

    Intel MKL

    Une version gratuite est disponible pour Linux (pour usage non commercial bien sur).

  7. #7
    Membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2009
    Messages : 37
    Points : 46
    Points
    46
    Par défaut Boeing BCSLIB-EXT
    La librairie payante BCSLIB-EXT développée par Boeing (quelques universités doivent bien l'avoir...) contient un solver sparse itératif pour gros système (plusieurs millions de degrés de liberté) (très utilisé dans le domaine des éléments finis).

    Boeing BCSLIB-EXT

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 43
    Points : 34
    Points
    34
    Par défaut Pour Java...
    Bonjour,
    Java aurait bien besoin d'une bonne librairie de calcul scientifique. Voici ce qui existe pour le moment

    1. COLT, la librairie développée par le CERN (mais la dernière mise à jour date de 2004)

    2. JTransforms pour la FFT, très bien.

    3. Commons-maths (appache). Je n'ai pas testé cette librairie, qui semble dynamique, car l'interface ne me plaît pas : toutes les méthodes créent des objets pour stocker le résultat, plutôt que de stocker celui-ci dans un objet transmis en paramètre (économie d'appel à new...). Qu'en pensez-vous ?

    J'aimerais beaucoup avoir un échange à propos des librairies scientifiques en Java, et j'ai commencé à me lancer (tout doucement...) au portage de SLATEC en Java. Avis aux intéressés.

    S

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 43
    Points : 34
    Points
    34
    Par défaut ... et pour C/C++
    La GNU scientific library (GSL). Très, très complète !!!
    S

  10. #10
    Rédacteur

    Homme Profil pro
    Comme retraité, des masses
    Inscrit en
    Avril 2007
    Messages
    2 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 83
    Localisation : Suisse

    Informations professionnelles :
    Activité : Comme retraité, des masses
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 2 978
    Points : 5 179
    Points
    5 179
    Par défaut
    Salut!
    Java aurait bien besoin d'une bonne librairie de calcul scientifique.
    Mais Java est-il conçu pour le calcul scientifique?

    Je pense que la solution est à chercher dans l'utilisation conjointe de 2 langages. Je m'explique: Fortran est ce qu'il y a de mieux pour les gros calculs scientifiques, mais n'offre aucune possibilité pour l'interface homme-machine; on peut contourner cette difficulté en utilisant dans un programme Fortran des sous-programmes de la bibliothèque Japi (Université de Bregenz) qui sont écrits en Java.
    Jean-Marc Blanc
    Calcul numérique de processus industriels
    Formation, conseil, développement

    Point n'est besoin d'espérer pour entreprendre, ni de réussir pour persévérer. (Guillaume le Taiseux)

  11. #11
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    Citation Envoyé par vincent69 Voir le message
    Bonjour,

    Pour l'algèbre linéaire, entre autre, il y a la librairie MKL d'Intel.
    Librairie optimisée pour les processeurs Intel (Windows et Linux) avec notamment un solveur sparse très efficace.

    Intel MKL

    Une version gratuite est disponible pour Linux (pour usage non commercial bien sur).
    De manière plus générale, il s'agit d'une bibliothèque proposant BLAS, CBLAS et LAPACK en version optimisée, ainsi qu'une FFT (avec en plus interface FFTW). AMD propose sa version ACML.
    La plus connue équivalente (à la FFT près) est ATLAS.

  12. #12
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 43
    Points : 34
    Points
    34
    Par défaut
    Citation Envoyé par FR119492 Voir le message
    Mais Java est-il conçu pour le calcul scientifique?

    Jean-Marc Blanc
    Eternel débat... Pour ma part, j'ai complètement adopté Java pour tous mes calculs. Je gagne énormément en temps de développement. De temps en temps, je suis pris de remords, et reviens vers le C, afin d'avoir un programme "qui tourne plus vite", mais lorsque je vois le temps que je mets à écrire un programme qui fonctionne, je me dis que Java est plutôt bien...
    Pour le temps de calcul : certes, Java n'est pas aussi rapide, mais du moment qu'il n'est pas horriblement lent (et ce n'est pas le cas), cela me convient.
    Sébastien

  13. #13
    Membre habitué

    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2007
    Messages : 35
    Points : 185
    Points
    185
    Par défaut
    Bonjour,

    J'ajoute la famille IMSL (International Mathematical and Statistical Library), qui couvre une large variété de langages et de fonctionnalités :

    IMSL Fortran
    IMSL C/C++
    JMSL (Java)
    IMSL C#
    PyIMSL Studio (Python)


    -SebGR

  14. #14
    Rédacteur
    Avatar de Zavonen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 772
    Détails du profil
    Informations personnelles :
    Âge : 76
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 772
    Points : 1 913
    Points
    1 913
    Par défaut
    Ne pas oublier le couple Numpy+Scipy dans l'univers python ainsi que les nombreux modules graphiques associés (Matplotlib etc...). Le tout formant une alternative crédible à Matlab. Seul problème: les développements trop rapides de Python qui font que les bibliothèques ont du mal à suivre. Le portage sous Python 3.0 n'est pas encore achevé.
    Ce qu'on trouve est plus important que ce qu'on cherche.
    Maths de base pour les nuls (et les autres...)

  15. #15
    Membre régulier
    Inscrit en
    Septembre 2007
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 15
    Points : 74
    Points
    74
    Par défaut
    La bibliothèque C++ du CERN

    ROOT
    Lien wikipedia

  16. #16
    Membre confirmé
    Avatar de Le Farfadet Spatial
    Homme Profil pro
    En cours de précision…
    Inscrit en
    Avril 2008
    Messages
    186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : En cours de précision…

    Informations forums :
    Inscription : Avril 2008
    Messages : 186
    Points : 604
    Points
    604
    Par défaut
    Salut à tous !

    Eigen est une bibliothèque C++ d’algèbre linéaire portable et performante.

    Giac est une bibliothèque C++ de calcul formel.

    À bientôt.

    Le Farfadet Spatial

  17. #17
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 302
    Points : 53 163
    Points
    53 163
    Par défaut
    AMD vient de passer sa bibliothèque APPML (Accelerated Parallel Processing Math Libraries) en open source (licence Apache 2.0)

    Il s'agit d’implémentations OpenCL des bibliothèques BLAS et FFT :



    Source : AMD releases APPML source code, creates clMath library
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

Discussions similaires

  1. Les bibliothèques
    Par vincent0 dans le forum Bibliothèques
    Réponses: 7
    Dernier message: 15/08/2006, 16h36
  2. Les Bibliothèques en C++
    Par Psuchoo dans le forum Bibliothèques
    Réponses: 1
    Dernier message: 25/10/2005, 14h30
  3. Réponses: 7
    Dernier message: 05/10/2005, 11h29
  4. Réponses: 6
    Dernier message: 16/09/2005, 10h53
  5. Les bibliothèques dans l'esprit Open (liens)
    Par shenron666 dans le forum API graphiques
    Réponses: 0
    Dernier message: 07/06/2005, 12h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo