mhtirogla
Home
Systems
API
Pricing
About
Log in
← Back
Home
›
Systems
›
Simulation and scientific computing
cfd-fem-solver
engineering simulation solver
OpenFOAM, FEniCS
System
Techniques · 11
Primitives · 21
cfd-fem-solver
Halo exchange
distributed · medium: Each rank stores its block plus a border copy of its neighbours' edge cells, refreshed by small messages every step; communication scales with block surface, not volume.
›
Delaunay triangulation
geometry · medium: Bowyer-Watson and incremental flips; maximizes minimum angles, dual of Voronoi
Graph partitioning
graphs · medium: Split a graph into k balanced parts with few edges between them; multilevel coarsen-partition-refine (METIS, KaHIP) for quality, streaming heuristics (LDG, Fennel) for one-pass scale.
›
Finite elements
numerics · medium: Writes the PDE in weak form, approximates it with piecewise polynomials on a mesh and assembles a sparse system; handles any geometry.
›
Finite volume method
numerics · medium: Conservative cell-averaged discretization with numerical fluxes on structured and unstructured meshes
Flux limiters upwinding
numerics · medium: Upwind schemes, TVD flux limiters, MUSCL and Riemann solvers for shock-capturing advection
Gmres
numerics · medium: GMRES with restarts: Arnoldi, Givens rotations, for nonsymmetric sparse systems
Sparse matrices (CSR)
numerics · low: Compressed sparse row stores only nonzeros as row pointers, column indices and values; SpMV streams them once, so it is memory-bandwidth bound.
›
Conjugate gradient
numerics · low: Krylov iteration for symmetric positive definite Ax = b using one matrix-vector product and two dot products per step; converges in about √κ iterations.
›
Gaussian quadrature
numerics · low: Approximate an integral by a weighted sum of n function values at roots of orthogonal polynomials; exact for polynomials up to degree 2n-1.
›
Unstructured mesh representation
numerics · low: Cell-face-node connectivity in CSR form for FEM and FVM meshes; partition-friendly ordering
Finite differences
numerics · low: Replace derivatives with weighted differences of grid values; simple stencils plus a stability condition (CFL) turn PDEs like heat, advection and waves into array loops.
›
Multigrid
numerics · low: Smooths high-frequency error on the fine grid and solves the smooth remainder on coarser grids; O(n) elliptic solves at any resolution.
›
Collective communication
ml-training · low: The family of group exchanges (broadcast, reduce, all-gather, reduce-scatter, all-to-all) and the latency-plus-bytes cost model that picks ring, tree or direct algorithms by message size and topology.
›
Newton root finding
numerics · low: Linearize at the guess and jump to the tangent root; quadratic convergence near a simple root, made robust by brackets (1D) or line search.
›
Stiff solvers (implicit, BDF)
numerics · low: Implicit steps solve a small nonlinear system so fast decaying modes stay stable at any step size; BDF methods are the stiff-ODE workhorse.
›
Eager rendezvous protocol
distributed · low: MPI point-to-point: eager sends for small messages, rendezvous handshake for large ones
Rdma
networking · low: RDMA verbs over InfiniBand/RoCE: queue pairs, memory registration, one-sided ops
Zero-copy I/O
networking · low: Move bytes between files, sockets and NICs by passing page references instead of copying through user space: sendfile, splice, MSG_ZEROCOPY, kTLS.
›
Exact geometric predicates
geometry · low: Robust orient and incircle tests with adaptive-precision floats (Shewchuk) or exact arithmetic
Space filling curves
geometry · low: Z-order/Morton (geohash) and Hilbert curves mapping multi-dimensional points to sortable keys
Half edge mesh
graphics · low: Half-edge mesh connectivity for editable polygon meshes
d-ary heap
data-structures · low: Array heap with d children per node (d = 4 typical): half the binary heap's depth, siblings in one cache line, faster priority queues.
›
+ 4 more techniques
+ 5 more primitives
System
Techniques · 11
Primitives · 21
cfd-fem-solver
Halo exchange
distributed · medium: Each rank stores its block plus a border copy of its neighbours' edge cells, refreshed by small messages every step; communication scales with block surface, not volume.
›
Delaunay triangulation
geometry · medium: Bowyer-Watson and incremental flips; maximizes minimum angles, dual of Voronoi
Graph partitioning
graphs · medium: Split a graph into k balanced parts with few edges between them; multilevel coarsen-partition-refine (METIS, KaHIP) for quality, streaming heuristics (LDG, Fennel) for one-pass scale.
›
Finite elements
numerics · medium: Writes the PDE in weak form, approximates it with piecewise polynomials on a mesh and assembles a sparse system; handles any geometry.
›
Finite volume method
numerics · medium: Conservative cell-averaged discretization with numerical fluxes on structured and unstructured meshes
Flux limiters upwinding
numerics · medium: Upwind schemes, TVD flux limiters, MUSCL and Riemann solvers for shock-capturing advection
Gmres
numerics · medium: GMRES with restarts: Arnoldi, Givens rotations, for nonsymmetric sparse systems
Incomplete factorization preconditi…
numerics · medium: Sparse approximate LU or Cholesky factors (ILU, IC) that precondition Krylov solvers: fewer iterations than Jacobi, less memory than a direct solve.
›
Sparse direct solver
numerics · medium: Solve sparse Ax = b exactly by reordering, symbolic analysis, numeric LLᵀ/LU and triangular solves; fill-in, not flops per entry, decides the cost.
›
Pressure projection method
physics · medium: Chorin projection: solve a pressure Poisson equation to make velocity divergence-free (MAC grid, SIMPLE, PISO)
Fill-reducing ordering
numerics · medium: Permute a sparse symmetric matrix before Cholesky/LU so the factor has few new nonzeros; minimum degree, nested dissection and RCM trade quality, speed and parallelism.
›
Sparse matrices (CSR)
numerics · low: Compressed sparse row stores only nonzeros as row pointers, column indices and values; SpMV streams them once, so it is memory-bandwidth bound.
›
Conjugate gradient
numerics · low: Krylov iteration for symmetric positive definite Ax = b using one matrix-vector product and two dot products per step; converges in about √κ iterations.
›
Gaussian quadrature
numerics · low: Approximate an integral by a weighted sum of n function values at roots of orthogonal polynomials; exact for polynomials up to degree 2n-1.
›
Unstructured mesh representation
numerics · low: Cell-face-node connectivity in CSR form for FEM and FVM meshes; partition-friendly ordering
Finite differences
numerics · low: Replace derivatives with weighted differences of grid values; simple stencils plus a stability condition (CFL) turn PDEs like heat, advection and waves into array loops.
›
Multigrid
numerics · low: Smooths high-frequency error on the fine grid and solves the smooth remainder on coarser grids; O(n) elliptic solves at any resolution.
›
Collective communication
ml-training · low: The family of group exchanges (broadcast, reduce, all-gather, reduce-scatter, all-to-all) and the latency-plus-bytes cost model that picks ring, tree or direct algorithms by message size and topology.
›
Newton root finding
numerics · low: Linearize at the guess and jump to the tangent root; quadratic convergence near a simple root, made robust by brackets (1D) or line search.
›
Stiff solvers (implicit, BDF)
numerics · low: Implicit steps solve a small nonlinear system so fast decaying modes stay stable at any step size; BDF methods are the stiff-ODE workhorse.
›
Eager rendezvous protocol
distributed · low: MPI point-to-point: eager sends for small messages, rendezvous handshake for large ones
Rdma
networking · low: RDMA verbs over InfiniBand/RoCE: queue pairs, memory registration, one-sided ops
Zero-copy I/O
networking · low: Move bytes between files, sockets and NICs by passing page references instead of copying through user space: sendfile, splice, MSG_ZEROCOPY, kTLS.
›
Exact geometric predicates
geometry · low: Robust orient and incircle tests with adaptive-precision floats (Shewchuk) or exact arithmetic
Space filling curves
geometry · low: Z-order/Morton (geohash) and Hilbert curves mapping multi-dimensional points to sortable keys
Half edge mesh
graphics · low: Half-edge mesh connectivity for editable polygon meshes
d-ary heap
data-structures · low: Array heap with d children per node (d = 4 typical): half the binary heap's depth, siblings in one cache line, faster priority queues.
›
PRNGs (PCG, xoshiro)
numerics · low: Small, fast, statistically strong non-cryptographic generators: PCG32 and xoshiro256**, with seeding, parallel streams and unbiased ranges.
›
Runge-Kutta 4
numerics · low: The classic four-stage, fourth-order ODE step; error drops 16× when the step halves, with no derivatives or past steps needed.
›
LU and Cholesky factorization
numerics · low: Factor A = PLU (any square matrix, partial pivoting) or A = LLᵀ (SPD) once in O(n³), then solve each right-hand side in O(n²).
›
Explicit Euler
numerics · low: Step an ODE forward by its current slope, y += h·f(t, y); first-order, one evaluation per step, the baseline every other integrator is measured against.
›
Thomas tridiagonal solver
numerics · low: O(n) tridiagonal linear solve used in implicit finite-difference and spline schemes
Copy for AI
Similar systems
Share the most building blocks with this one.
reservoir-sim
52 %
multiphysics
50 %
structural-fem
40 %
storm-surge
40 %
nonlinear-solver
35 %