2009-06-07 26 views
4

Est-ce que quelqu'un peut indiquer une bonne bibliothèque C++ capable d'effectuer une intégration numérique 2D? Il doit être capable d'accepter un tableau 2D de valeurs connues, et l'espacement entre les points peut être supposé constant (pour un début).Bibliothèques d'intégration C++ 2D

Il est préférable d'avoir une licence qui permet de modifier le code si nécessaire.

+1

Cette question est hors-sujet sur le dépassement de pile car il s'agit d'une requête pour une ressource hors site (c'est-à-dire une bibliothèque). Vous pourriez avoir plus de chance à [Computational Science] (https://scicomp.stackexchange.com/). Les demandes de bibliothèques sont [spécifiquement sur le sujet] (https://scicomp.stackexchange.com/help/on-topic) sur ce site. – Walter

Répondre

-1

http://itpp.sourceforge.net/current/

essayer. Il peut faire ce que vous demandez et plus encore! Et vous pouvez modifier le code autant que vous le souhaitez.

J'ai lu quelque part que vous pouvez extraire des bibliothèques du code de GNU Octave et utiliser le code C++ dans vos propres applications. Je ne sais pas si c'est une tâche facile, mais vous pouvez essayer si vous avez le temps.

+0

Pouvez-vous me montrer l'intégration 2D? Tout ce que j'ai pu trouver était l'intégration 1D (http://itpp.sourceforge.net/current/group__integration.html) –

+0

L'intégration 2D n'est-elle pas une double intégrale? Tu ne peux pas le faire avec la même bibliothèque? – Sahas

+4

Pas dans l'intégration numérique. Vous avez plus d'informations que vous souhaitez utiliser. Pour chaque "point" vous avez quatre voisins à interpoler, contrairement à 1D. –

4

Il est en fait une bibliothèque C, mais si les conditions de licence GPL travaillent pour vous essayer:

http://www.gnu.org/software/gsl/

Vous voulez vérifier les options d'intégration Monte Carlo décrites ici:

http://www.gnu.org/software/gsl/manual/html_node/Monte-Carlo-Integration.html

+0

Merci, je vais m'y pencher. Je préférerais rester loin de Monte Catlo en ce moment, cependant. Je préfère avoir des résultats déterministes en ce moment. –

+0

Les méthodes de Monte Carlo ont des résultats déterministes, elles sont simplement plus "bruyantes". –

0

Cette bibliothèque Fortran est facile à lier à C++ et est dans le domaine public:

http://gams.nist.gov/cgi-bin/serve.cgi/Module/CMLIB/ADAPT/2967

Il s'agit d'une simple précision, mais il est assez facile de modifier les sources (obtenir des "sources complètes" et passer par toutes les fonctions) pour passer à la double précision.