Wykaz bibliotek numerycznych

To jest lista bibliotek numerycznych , które są bibliotekami używanymi w tworzeniu oprogramowania do wykonywania obliczeń numerycznych . Nie jest to pełna lista, ale lista bibliotek numerycznych z artykułami w Wikipedii, z kilkoma wyjątkami.

Wybór typowej biblioteki zależy od szeregu wymagań, takich jak: pożądane funkcje (np. wielkowymiarowa algebra liniowa, obliczenia równoległe, równania różniczkowe cząstkowe), licencja, czytelność API, przenośność lub zależność od platformy/kompilatora (np. Linux, Windows, Visual C++, GCC), wydajność, łatwość obsługi, stałe wsparcie ze strony programistów, zgodność ze standardami, wyspecjalizowana optymalizacja kodu pod kątem określonych scenariuszy aplikacji, a nawet wielkość bazy kodu do zainstalowania.

Wielojęzyczny

  • ALGLIB to biblioteka analizy numerycznej typu open source, która może być używana z języków C++, C#, FreePascal, Delphi, VBA.
  • ArrayFire to wysokowydajna biblioteka oprogramowania typu open source do obliczeń równoległych z łatwym w użyciu interfejsem API.
  • Biblioteki numeryczne IMSL to biblioteki funkcji analizy numerycznej zaimplementowane w standardowych językach programowania, takich jak C, Java, C# .NET, Fortran i Python.
  • Biblioteka NAG to zbiór procedur matematycznych i statystycznych dla wielu języków programowania (C, C++, Fortran, Visual Basic, Java, Python i C#) oraz pakietów (MATLAB, Excel, R, LabVIEW).
  • GNU Octave to otwarty język programowania i biblioteka wysokiego poziomu, w tym interfejs wiersza poleceń i GUI, analogiczne do komercyjnych alternatyw, takich jak Maple, MATLAB, Mathematica itp. API, funkcje i biblioteki można wywoływać z wielu platform, w tym wysokiego poziomu programy inżynierskie, w których funkcje są w wielu przypadkach bezproblemowo interpretowane i integrowane w sposób podobny do MATLAB-a. Może być również używany z orientacją wsadową.
  • librsb to biblioteka typu open source do wysokowydajnych obliczeń rzadkich macierzy, zapewniająca wielowątkowe prymitywy do budowy iteracyjnych solwerów (implementuje również standard Sparse BLAS ). Może być używany z C, C++, Fortran i dedykowanego GNU Octave .

C

C++

  • Adept to połączona biblioteka automatycznego różnicowania i tablic .
  • Advanced Simulation Library to bezpłatne, akcelerowane sprzętowo oprogramowanie do symulacji wielofizycznych typu open source z wewnętrznym silnikiem obliczeniowym opartym na OpenCL .
  • ALGLIB to komercyjna biblioteka do analizy numerycznej typu open source w wersji C++
  • Armadillo to biblioteka algebry liniowej C++ (matematyka macierzowa i wektorowa), mająca na celu dobrą równowagę między szybkością a łatwością użycia. Wykorzystuje klasy szablonów i ma opcjonalne łącza do BLAS i LAPACK. Składnia ( API ) jest podobna do MATLAB-a .
  • Blitz++ to wysokowydajna biblioteka matematyki wektorowej napisana w C++.
  • Boost.uBLAS C++ do obliczeń numerycznych
  • deal.II to biblioteka obsługująca wszystkie rozwiązania elementów skończonych równań różniczkowych cząstkowych.
  • Dlib to nowoczesna biblioteka C++ z łatwą w użyciu algebrą liniową i narzędziami optymalizacyjnymi, które korzystają ze zoptymalizowanych bibliotek BLAS i LAPACK.
  • Eigen to biblioteka matematyki wektorowej o wydajności porównywalnej z biblioteką Math Kernel Library firmy Intel
  • Projekt Hermes : biblioteka C++/Python do szybkiego prototypowania adaptacyjnych solwerów hp-FEM do przestrzeni i czasu.
  • IML++ to biblioteka C++ do rozwiązywania liniowych układów równań, zdolna do radzenia sobie z gęstymi, rzadkimi i rozproszonymi macierzami.
  • IT++ to biblioteka C++ do algebry liniowej (macierze i wektory), przetwarzania sygnałów i komunikacji. Funkcjonalność podobna do MATLAB i Octave.
  • LAPACK++ , biblioteka opakowująca C++ dla LAPACK i BLAS
  • MFEM to darmowa, lekka, skalowalna biblioteka C++ do metod elementów skończonych .
  • Intel MKL , Intel Math Kernel Library (w C i C++), biblioteka zoptymalizowanych procedur matematycznych do zastosowań naukowych, inżynieryjnych i finansowych, napisana w C/C++ i Fortran. Podstawowe funkcje matematyczne obejmują BLAS, LAPACK, ScaLAPACK, rzadkie solwery, szybkie transformaty Fouriera i matematykę wektorową.
  • mlpack to biblioteka typu open source do uczenia maszynowego, wykorzystująca funkcje języka C++ w celu zapewnienia maksymalnej wydajności i elastyczności przy jednoczesnym zapewnieniu prostego i spójnego interfejsu API
  • MTL4 to ogólna biblioteka szablonów C++ zapewniająca rzadką i gęstą funkcjonalność BLAS. MTL4 zapewnia intuicyjny interfejs (podobny do MATLAB-a ) i szerokie zastosowanie dzięki programowaniu generycznemu .
  • Biblioteka NAG ma API C++
  • NTL to biblioteka C++ do teorii liczb.
  • Trilinos to wysiłek mający na celu opracowanie algorytmów i technologii umożliwiających rozwiązanie wielkoskalowych, złożonych problemów inżynierskich i naukowych z wielu dziedzin fizyki. Jest to zbiór pakietów .

Delfy

  • ALGLIB - biblioteka analizy numerycznej typu open source.

Języki .NET Framework C# , F# , VB.NET i PowerShell

  • Accord.NET to zbiór bibliotek do obliczeń naukowych, w tym numerycznej algebry liniowej, optymalizacji, statystyki, sztucznych sieci neuronowych, uczenia maszynowego, przetwarzania sygnałów i wizji komputerowej. LGPLv3, częściowo GPLv3.
  • AForge.NET to biblioteka wizji komputerowej i sztucznej inteligencji. Implementuje szereg algorytmów genetycznych, logiki rozmytej i uczenia maszynowego z kilkoma architekturami sztucznych sieci neuronowych z odpowiednimi algorytmami uczącymi. LGPLv3 i częściowo GPLv3.
  • ALGLIB to biblioteka analizy numerycznej typu open source w wersji C#. Podwójna licencja: GPLv2+, licencja komercyjna.
  • ILNumerics.Net Komercyjne, wysokowydajne, bezpieczne dla typu numeryczne klasy tablicowe i funkcje dla matematyki ogólnej, FFT i algebry liniowej, przeznaczone dla .NET/mono, 32 i 64 bit, składnia podobna do skryptu w C#, sterowanie wykresami 2D i 3D, wydajne zarządzanie pamięcią.
  • Biblioteki numeryczne IMSL mają wersję C# (na licencji komercyjnej). IMSL .Net ogłosił koniec życia pod koniec 2020 roku.
  • Math.NET Numerics ma na celu dostarczenie metod i algorytmów do obliczeń numerycznych w nauce, inżynierii i codziennym użytkowaniu. Omawiane tematy obejmują funkcje specjalne, algebrę liniową, modele prawdopodobieństwa, liczby losowe, interpolację, przekształcenia całkowe i wiele innych. Darmowe oprogramowanie na licencji MIT/X11.
  • Measurement Studio to komercyjny zintegrowany pakiet kontrolek interfejsu użytkownika i bibliotek klas do użytku w opracowywaniu aplikacji testowych i pomiarowych. Biblioteki klas analizy zapewniają różnorodne cyfrowe przetwarzanie sygnałów, filtrowanie sygnałów, generowanie sygnałów, wykrywanie pików i inne ogólne funkcje matematyczne.
  • ML.NET to bezpłatna biblioteka oprogramowania do uczenia maszynowego dla języka programowania C# .
  • Biblioteka NAG ma API C#. Licencja komercyjna.
  • NMath firmy CenterSpace : Komercyjne biblioteki komponentów numerycznych dla platformy .NET, w tym klasy przetwarzania sygnałów (FFT), ramy algebry liniowej (LAPACK i BLAS) oraz pakiet statystyk.

Fortran

Jawa

  • SuanShu to biblioteka matematyczna Java o otwartym kodzie źródłowym. Obsługuje analizę numeryczną, statystykę i optymalizację.
  • Perl

    Pyton

    • NumPy , biblioteka na licencji BSD, która dodaje obsługę manipulacji dużymi, wielowymiarowymi tablicami i macierzami; zawiera również duży zbiór funkcji matematycznych wysokiego poziomu. NumPy służy jako podstawa wielu innych bibliotek numerycznych, w szczególności SciPy . De facto standard operacji macierzowych/tensorowych w Pythonie.
    • Pandas , biblioteka do manipulacji i analizy danych.
    • SageMath to duża aplikacja matematyczna, która integruje pracę prawie 100 projektów wolnego oprogramowania i obsługuje algebrę liniową, kombinatorykę, matematykę numeryczną, rachunek różniczkowy i inne.
    • SciPy , duża biblioteka narzędzi naukowych na licencji BSD. De facto standard obliczeń naukowych w Pythonie.
    • ScientificPython , biblioteka z innym zestawem narzędzi naukowych
    • SymPy , biblioteka oparta na licencji New BSD do obliczeń symbolicznych. Funkcje Sympy sięgają od podstawowej arytmetyki symbolicznej po rachunek różniczkowy, algebrę, matematykę dyskretną i fizykę kwantową.

    Inni

    Zobacz też

    Linki zewnętrzne