Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

awesome-scientific-computing

:sunglasses: Curated list of awesome software for numerical analysis and scientific computing
https://github.com/nschloe/awesome-scientific-computing

  • BLAS - Standard building blocks for performing basic vector and matrix operations.
  • GitHub
  • OpenBLAS - Optimized BLAS library based on GotoBLAS2.
  • GitHub
  • BLIS - High-performance BLAS-like dense linear algebra libraries.
  • LAPACK - Routines for solving systems of linear equations, linear least-squares, eigenvalue problems, etc.
  • GitHub
  • Eigen - C++ template library for linear algebra.
  • GitLab
  • Ginkgo - High-performance manycore linear algebra library, focus on sparse systems.
  • GitHub
  • blaze - High-performance C++ math library for dense and sparse arithmetic.
  • PETSc - Parallel solution of scientific applications modeled by PDEs.
  • GitLab
  • DUNE Numerics - Toolbox for solving PDEs with grid-based methods.
  • GitLab
  • SciPy - Python modules for statistics, optimization, integration, linear algebra, etc.
  • GitHub
  • NumPy - Fundamental package needed for scientific computing with Python.
  • GitHub
  • DifferentialEquations.jl - Toolbox for solving different types of differential equations numerically. (Julia, MIT, [GitHub](https://github.com/SciML/DifferentialEquations.jl))
  • FEniCS - Computing platform for solving PDEs in Python and C++.
  • GitHub - project/))
  • libMesh - Framework for the numerical simulation of PDEs using unstructured discretizations.
  • GitHub
  • deal.II - Software library supporting the creation of finite element codes.
  • GitHub
  • Netgen/NGSolve - High performance multiphysics finite element software.
  • GitHub
  • Firedrake - Automated system for the solution of PDEs using the finite element method.
  • GitHub
  • MOOSE - Multiphysics Object Oriented Simulation Environment.
  • GitHub
  • MFEM - Free, lightweight, scalable C++ library for finite element methods.
  • GitHub
  • SfePy - Simple Finite Elements in Python.
  • GitHub
  • FreeFEM - High level multiphysics-multimesh finite element language.
  • GitHub
  • libceed - Code for Efficient Extensible Discretizations.
  • GitHub
  • scikit-fem - Simple finite element assemblers.
  • Gmsh - Three-dimensional finite element mesh generator with pre- and post-processing facilities.
  • GitLab
  • pygmsh - Python interface for Gmsh.
  • MeshPy - Quality triangular and tetrahedral mesh generation.
  • GitHub
  • CGAL - Algorithms for computational geometry.
  • GitHub
  • pygalmesh - Python interface for CGAL's 3D meshing capabilities.
  • TetGen - Quality tetrahedral mesh generator and 3D Delaunay triangulator.
  • Triangle - Two-dimensional quality mesh generator and Delaunay triangulator.
  • distmesh - Simple generator for unstructured triangular and tetrahedral meshes.
  • trimesh - Loading and using triangular meshes with an emphasis on watertight surfaces.
  • GitHub
  • dmsh - Simple generator for unstructured triangular meshes, inspired by distmesh.
  • TetWild - Generate tetrahedral meshes for triangular surface meshes.
  • GitHub
  • TriWild - Robust triangulation with curve constraints.
  • GitHub
  • fTetWild - Same as TetWild, but faster.
  • GitHub
  • SeismicMesh - Parallel 2D/3D triangle/tetrahedral mesh generation with sliver removal.
  • QuadriFlow - Scalable and robust quadrangulation from triangulation.
  • GitHub
  • meshio - I/O for various mesh formats, file conversion.
  • MOAB - Representing and evaluating mesh data.
  • Bitbucket
  • optimesh - Triangular mesh smoothing.
  • pmp-library - Polygon mesh processing library.
  • GitHub
  • Mmg - Robust, open-source & multidisciplinary software for remeshing.
  • GitHub
  • meshplex - Fast tools for simplex meshes.
  • NetCDF - Software libraries and data formats for array-oriented scientific data.
  • GitHub
  • HDF5 - Data model, library, and file format for storing and managing data.
  • GitHub
  • XDMF - eXtensible Data Model and Format for data from High Performance Computing codes.
  • GitLab
  • Zarr - Format for the storage of chunked, compressed, N-dimensional arrays.
  • GitHub
  • SuperLU - Direct solution of large, sparse, nonsymmetric systems of linear equations.
  • GitHub
  • PyAMG - Algebraic Multigrid Solvers in Python.
  • GitHub
  • hypre - Library of high-performance preconditioners and solvers.
  • GitHub
  • ParaView - Multi-platform data analysis and visualization application based on VTK.
  • GitLab
  • VTK - Process images and create 3D computer graphics.
  • GitLab
  • Mayavi - 3D scientific data visualization and plotting in Python.
  • GitHub
  • Polyscope - Viewer and user interface for 3D geometry processing.
  • GitHub
  • PyVista - 3D plotting and mesh analysis through a streamlined interface for VTK.
  • GitHub
  • vedo - Library for scientific analysis and visualization of 3D objects based on VTK.
  • GitHub
  • yt - Toolkit for analysis and visualization of volumetric data.
  • GitHub
  • F3D - Cross-platform, fast, and minimalist 3D viewer with scientific visualization tools.
  • GitHub
  • TTK - Topological data analysis and visualization.
  • GitHub
  • morphologica - Header-only, modern OpenGL code to visualize numerical simulations at runtime. (C++, Apache 2.0, GitHub)
  • FFTW - Discrete Fourier transforms in one or more dimensions, of arbitrary input size, real and complex.
  • GitHub
  • Qhull - Convex hull, Delaunay triangulation, Voronoi diagram, halfspace intersection about a point, etc.
  • custom open source license
  • GitHub
  • GSL - Random number generators, special functions, and least-squares fitting etc.
  • Savannah
  • OpenFOAM - Free, open source CFD (computational fluid dynamics) software.
  • GitHub
  • quadpy - Numerical integration (quadrature, cubature) in Python.
  • FiPy - Finite-volume PDE solver.
  • GitHub
  • accupy - Accurate sums and dot products for Python.
  • SLEPc - Scalable Library for Eigenvalue Problem Computations.
  • GitLab
  • Chebfun - Computing with functions to about 15-digit accuracy.
  • GitHub
  • pyMOR - Model Order Reduction with Python.
  • GitHub
  • cvxpy - Modeling language for convex optimization problems.
  • GitHub
  • PyWavelets - Wavelet transforms in Python.
  • GitHub
  • NFFT - Nonequispaced fast Fourier transform.
  • GitHub
  • preCICE - Coupling library for partitioned multi-physics simulations (FSI, CHT, and more).
  • GitHub
  • orthopy - Compute orthogonal polynomials efficiently.
  • pyGAM - Generalized Additive Models in Python.
  • GitHub
  • Dedalus - Solve partial differential equations with spectral methods.
  • GitHub
  • PyGMO - Massively parallel optimization.
  • GitHub
  • shenfun - High-performance Python library for the spectral Galerkin method.
  • GitHub
  • PyDMD - Dynamic Mode Decomposition (DMD) in Python.
  • HPDDM - High-performance unified framework for domain decomposition methods.
  • SciComp StackExchange - Computational Science on the StackExchange network.
  • Wolfgang Bangerth's video class - MATH 676: Finite element methods in scientific computing.
  • Nick Higham's blog - Mostly on MATLAB, general computing advice.
  • Nick Trefethen's Video Lectures - 36 video lectures on approximation theory/practice and scientific computing.
  • John D. Cook's blog - Feats of scientific computing.
  • Jack Dongarra's software list - List of freely available software for the solution of linear algebra problems.
  • NA Digest - Collection of articles on topics related to numerical analysis and those who practice it.
  • Gabriel Peyré on Twitter - One tweet a day on computational mathematics.
  • Discord: Numerical Software - Discord messaging server on numerical software.