2012-04-02 10 views
2

Ich bin auf der Suche nach der besten Wahl der C++ Mathematik-Bibliothek, um einige Operationen von LabView-Blöcke zu erleichtern.Welche Mathematik Bibliothek zu konvertieren LabView Blöcke

Ich muss viele komplexe Mathematik Dinge auf C++ gleichermaßen realisieren: lineare Regression, Peak-Erkennung, Ableitung für den Graphen und viele andere gleichermaßen.

Ich fand es eine Menge von Bibliotheken dafür sind: http://en.wikipedia.org/wiki/List_of_numerical_libraries#C_and_C.2B.2B

Welche Bibliothek ist besser für meine Aufgaben zu wählen?

(derzeit Im über boost BLAS denken, aber ich arbeitete nie zuvor mit ihm so vielleicht dieser Wahl ist falsch)

Antwort

3

Beachten Sie, dass es nicht viel mehr ist als uBLAS grundlegende lineare Algebra zu fördern; und selbst wenn man den größeren Schub "Math and Numerics" Abschnitt betrachten, es kann kaum ein komplettes wissenschaftliches Rechnen Paket betrachtet werden.

GSL ist sehr gut, dass es ziemlich comprehensive. Aber es ist sehr viel eine‚C‘Bibliothek, so dass Sie brauchen bereit sein, mit rohen Zeigern zu array Daten und Funktionszeiger Rückrufe anstelle von höheren Klassen zu arbeiten.

(Persönlich in diesen Tagen finde ich mich mit Python/Numpy/Scipy so viel wie möglich; der Anwendungsbereich von Scipy ist truly incredible und Numpy-Arrays sind fantastisch einfach zu handhaben, wenn es eine LabView/Python/Scipy-Integration gäbe, die andere Anforderungen erfüllen würde, wäre es die erste Sache, die ich suchen würde.

+0

aber GSL ist GPL ... – Cynede

+0

@Alessa: Hinweis für die Zukunft: Wenn Sie Einschränkungen für die Lizenzierung haben, ist es eine gute Idee, sie in der ursprünglichen Frage aufzulisten! Die einzige andere große, kompetitive Sammlung von Zahlencodes, die ich verwendet habe, stammt aus dem Buch Numerical Recipes http://www.nr.com/, von dem ich glaube, dass es für kommerzielle Zwecke http://www.nr.com/licenses lizenziert werden kann /. Die Fortran-Wurzeln des Codes (1 indizierte Arrays) machen es etwas nervig für Leute, die an 'C' gewöhnt sind, aber ansonsten sind es alles gute Dinge. – timday