Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

awesome-scientific-computing

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

Last synced: 4 days ago
JSON representation

  • Other libraries and tools

    • Mesh tools

      • GitHub
      • pyGAM - Generalized Additive Models in Python.
      • FFTW - Discrete Fourier transforms in one or more dimensions, of arbitrary input size, real and complex.
      • Qhull - Convex hull, Delaunay triangulation, Voronoi diagram, halfspace intersection about a point, etc.
      • custom open source license
      • GSL - Random number generators, special functions, and least-squares fitting etc.
      • Savannah
      • OpenFOAM - Free, open source CFD (computational fluid dynamics) software.
      • FiPy - Finite-volume PDE solver.
      • SLEPc - Scalable Library for Eigenvalue Problem Computations.
      • Chebfun - Computing with functions to about 15-digit accuracy.
      • pyMOR - Model Order Reduction with Python.
      • cvxpy - Modeling language for convex optimization problems.
      • PyWavelets - Wavelet transforms in Python.
      • NFFT - Nonequispaced fast Fourier transform.
      • preCICE - Coupling library for partitioned multi-physics simulations (FSI, CHT, and more).
      • Dedalus - Solve partial differential equations with spectral methods.
      • shenfun - High-performance Python library for the spectral Galerkin method.
      • FFTW - Discrete Fourier transforms in one or more dimensions, of arbitrary input size, real and complex.
      • Qhull - Convex hull, Delaunay triangulation, Voronoi diagram, halfspace intersection about a point, etc.
      • SLEPc - Scalable Library for Eigenvalue Problem Computations.
      • GitHub
      • Qhull - Convex hull, Delaunay triangulation, Voronoi diagram, halfspace intersection about a point, etc.
      • GitHub
      • quadpy - Numerical integration (quadrature, cubature) in Python.
      • GitHub
      • accupy - Accurate sums and dot products for Python.
      • GitLab
      • GitHub
      • GitHub
      • GitHub
      • GitHub
      • orthopy - Compute orthogonal polynomials efficiently.
      • GitHub
      • GitHub
      • PyGMO - Massively parallel optimization.
      • GitHub
      • GitHub
      • PyDMD - Dynamic Mode Decomposition (DMD) in Python.
      • HPDDM - High-performance unified framework for domain decomposition methods.
  • Meshing

    • Mesh tools

      • pmp-library - Polygon mesh processing library.
      • Mmg - Robust, open-source & multidisciplinary software for remeshing.
      • MOAB - Representing and evaluating mesh data.
      • meshio - I/O for various mesh formats, file conversion.
      • Bitbucket
      • optimesh - Triangular mesh smoothing.
      • GitHub
      • meshplex - Fast tools for simplex meshes.
    • Triangular and tetrahedral meshing

      • Gmsh - Three-dimensional finite element mesh generator with pre- and post-processing facilities.
      • GitLab
      • MeshPy - Quality triangular and tetrahedral mesh generation.
      • CGAL - Algorithms for computational geometry.
      • 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.
      • TetWild - Generate tetrahedral meshes for triangular surface meshes.
      • TriWild - Robust triangulation with curve constraints.
      • fTetWild - Same as TetWild, but faster.
      • Gmsh - Three-dimensional finite element mesh generator with pre- and post-processing facilities.
      • CGAL - Algorithms for computational geometry.
      • pygmsh - Python interface for Gmsh.
      • GitHub
      • GitHub
      • pygalmesh - Python interface for CGAL's 3D meshing capabilities.
      • GitHub
      • dmsh - Simple generator for unstructured triangular meshes, inspired by distmesh.
      • GitHub
      • GitHub
      • GitHub
      • SeismicMesh - Parallel 2D/3D triangle/tetrahedral mesh generation with sliver removal.
    • Quadrilateral and hexahedral meshing

  • Data formats

    • Mesh tools

      • NetCDF - Software libraries and data formats for array-oriented scientific data.
      • HDF5 - Data model, library, and file format for storing and managing data.
      • 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
      • GitHub
      • GitHub
  • Sparse linear solvers

    • Mesh tools

      • SuperLU - Direct solution of large, sparse, nonsymmetric systems of linear equations.
      • PyAMG - Algebraic Multigrid Solvers in Python.
      • hypre - Library of high-performance preconditioners and solvers.
      • GitHub
      • GitHub
      • GitHub
  • Visualization

    • Mesh tools

      • 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.
      • Polyscope - Viewer and user interface for 3D geometry processing.
      • PyVista - 3D plotting and mesh analysis through a streamlined interface for VTK.
      • vedo - Library for scientific analysis and visualization of 3D objects based on VTK.
      • yt - Toolkit for analysis and visualization of volumetric data.
      • F3D - Cross-platform, fast, and minimalist 3D viewer with scientific visualization tools.
      • TTK - Topological data analysis and visualization.
      • ParaView - Multi-platform data analysis and visualization application based on VTK.
      • vedo - Library for scientific analysis and visualization of 3D objects based on VTK.
      • GitHub
      • GitHub
      • GitHub
      • GitHub
      • GitHub
      • GitHub
      • GitHub
      • morphologica - Header-only, modern OpenGL code to visualize numerical simulations at runtime. (C++, Apache 2.0, GitHub)
  • Basic linear algebra

    • BLAS - Standard building blocks for performing basic vector and matrix operations.
    • GitHub
    • OpenBLAS - Optimized BLAS library based on GotoBLAS2.
    • LAPACK - Routines for solving systems of linear equations, linear least-squares, eigenvalue problems, etc.
    • Eigen - C++ template library for linear algebra.
    • Ginkgo - High-performance manycore linear algebra library, focus on sparse systems.
    • GitHub
    • OpenBLAS - Optimized BLAS library based on GotoBLAS2.
    • GitHub
    • GitHub
    • BLIS - High-performance BLAS-like dense linear algebra libraries.
    • GitHub
    • GitLab
    • GitHub
    • blaze - High-performance C++ math library for dense and sparse arithmetic.
  • Multi-purpose toolkits

    • PETSc - Parallel solution of scientific applications modeled by PDEs.
    • DUNE Numerics - Toolbox for solving PDEs with grid-based methods.
    • GitLab
    • SciPy - Python modules for statistics, optimization, integration, linear algebra, etc.
    • NumPy - Fundamental package needed for scientific computing with Python.
    • DifferentialEquations.jl - Toolbox for solving different types of differential equations numerically. (Julia, MIT, [GitHub](https://github.com/SciML/DifferentialEquations.jl))
    • DUNE Numerics - Toolbox for solving PDEs with grid-based methods.
    • SciPy - Python modules for statistics, optimization, integration, linear algebra, etc.
    • GitLab
    • GitHub
  • Finite Elements

    • FEniCS - Computing platform for solving PDEs in Python and C++.
    • GitHub - project/))
    • libMesh - Framework for the numerical simulation of PDEs using unstructured discretizations.
    • deal.II - Software library supporting the creation of finite element codes.
    • Netgen/NGSolve - High performance multiphysics finite element software.
    • Firedrake - Automated system for the solution of PDEs using the finite element method.
    • MOOSE - Multiphysics Object Oriented Simulation Environment.
    • MFEM - Free, lightweight, scalable C++ library for finite element methods.
    • SfePy - Simple Finite Elements in Python.
    • FreeFEM - High level multiphysics-multimesh finite element language.
    • GitHub
    • libceed - Code for Efficient Extensible Discretizations.
    • FEniCS - Computing platform for solving PDEs in Python and C++.
    • libMesh - Framework for the numerical simulation of PDEs using unstructured discretizations.
    • deal.II - Software library supporting the creation of finite element codes.
    • Netgen/NGSolve - High performance multiphysics finite element software.
    • Firedrake - Automated system for the solution of PDEs using the finite element method.
    • MFEM - Free, lightweight, scalable C++ library for finite element methods.
    • SfePy - Simple Finite Elements in Python.
    • FreeFEM - High level multiphysics-multimesh finite element language.
    • libceed - Code for Efficient Extensible Discretizations.
    • GitHub
    • GitHub
    • GitHub
    • GitHub
    • GitHub
    • GitHub
    • GitHub
    • GitHub
    • scikit-fem - Simple finite element assemblers.
  • Community