awesome-repositories.com
Blog
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoAcerca deCómo clasificamosPrensaServidor MCP
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
dimforge avatar

dimforge/nalgebra

0
View on GitHub↗
4,745 estrellas·553 forks·Rust·Apache-2.0·3 vistasnalgebra.rs↗

Nalgebra

nalgebra es una biblioteca de álgebra lineal para Rust que proporciona operaciones de matriz y vector con soporte para dimensiones tanto en tiempo de compilación como en tiempo de ejecución. Funciona como una biblioteca de análisis numérico y una biblioteca de matrices dispersas, ofreciendo un framework matemático capaz de ejecutarse en entornos embebidos y WebAssembly sin requerir la biblioteca estándar de Rust.

El proyecto se distingue como una biblioteca de transformación geométrica, utilizando coordenadas homogéneas, cuaterniones e isometrías para manejar rotaciones, traslaciones y proyecciones 3D. Implementa una variedad de descomposiciones de matrices —incluyendo LU, QR, Cholesky, SVD y descomposición de valores propios— para resolver sistemas lineales y analizar matrices.

La biblioteca cubre áreas de capacidad amplias, incluyendo computación geométrica para transformaciones espaciales, utilidades de gráficos por computadora para la composición de matrices de proyección y exportación de datos de shaders, y gestión especializada de matrices dispersas utilizando almacenamiento comprimido por filas y columnas. También proporciona herramientas de gestión de datos para la inicialización, redimensionamiento y análisis de archivos Matrix Market.

Features

  • No-Std Mathematical Frameworks - Designed to run in resource-constrained embedded environments by eliminating dependencies on the Rust standard library.
  • Linear Algebra Libraries - A comprehensive linear algebra library for Rust supporting both compile-time and runtime dimensions for matrices and vectors.
  • 3D Graphics Pipelines - Calculates projections, rotations, and transformations for rendering 3D scenes and objects using Rust.
  • Perspective Projections - Combines object orientation, camera position, and perspective projection to map 3D scenes.
  • Embedded Mathematics Libraries - Provides a complete mathematical framework capable of running in embedded environments without the Rust standard library.
  • Mathematical Frameworks - Offers a mathematical framework specifically designed to run in WebAssembly and embedded environments without the standard library.
  • Generic Scalar Abstractions - Implements mathematical operations over generic types to support diverse numeric formats like floats and integers.
  • Scalar Abstractions - Implements matrix and vector operations using generic types to support various floating-point and integer formats.
  • No-Standard-Library Modes - Avoids dependencies on the standard library to enable execution in embedded systems and WebAssembly.
  • Scientific & Mathematical Computing - Implements a comprehensive set of tools and methods for scientific research and numerical analysis.
  • Algebraic Dimension Definitions - Creates matrices and vectors with dimensions specified at compile-time for performance or runtime for flexibility.
  • Compile-Time Dimension Checking - Uses the type system to statically verify matrix and vector dimensions, preventing runtime shape mismatches.
  • Coordinate Transformations - Implements mathematical operations to transform points and vectors between different 3D reference frames.
  • Geometric Transformation Routines - Provides routines for applying linear transformations such as scaling, rotation, and projections to typed points and vectors.
  • Rotation Calculators - Provides utilities to construct rotation matrices and unit quaternions from axis-angle or Euler angle representations.
  • Numerical Libraries - Provides optimized algorithms for matrix operations and a wide variety of numerical decompositions.
  • Compressed Sparse Storage - Supports large-scale datasets using compressed sparse row and column formats to optimize memory usage.
  • Vector Operations - Provides fundamental mathematical primitives for performing operations on vectors and matrices.
  • Homogeneous Transformation Utilities - Uses four-by-four matrices to unify translations and rotations into single transformation operations.
  • Object Transformation Matrices - Applies scaling, rotation, and translation to 3D objects using isometry types or homogeneous matrices.
  • Array View Creation - Provides non-owning references to submatrices, rows, or columns using strides for non-consecutive elements.
  • Strided - Provides non-owning references to matrix sub-sections using memory offsets to avoid data copying.
  • Game Development Engines - Provides the spatial transformation and camera matrix logic essential for building game development engines.
  • Graphics API Data Export - Converts matrices and vectors into column-major arrays or raw pointers for compatibility with graphics APIs.
  • Orthographic Projections - Implements orthographic projection matrices to render 3D scenes without perspective distortion.
  • Ray-Casting Picking Logic - Converts 2D screen-space coordinates back into 3D view-space lines for ray casting and object picking.
  • Algebraic Dispatch - Uses generic traits to provide a consistent interface for different matrix decompositions and linear solvers.
  • WebAssembly - Supports execution in browser environments by providing a WebAssembly-compatible compilation target.
  • Algebraic Type Conversions - Provides mechanisms to transform data between different matrix and vector types and scaling precisions.
  • Cholesky Decomposition Utilities - Decomposes Hermitian positive-definite matrices into lower-triangular factors for solving linear systems.
  • Geometric Point Representations - Defines points as distinct entities from vectors to correctly support translation and displacement operations.
  • Isometry Computations - Combines rotations and translations into isometries to preserve distance and orientation for objects and cameras.
  • Eigendecomposition Routines - Computes eigenvalues and eigenvectors of square matrices through eigendecomposition.
  • Similarity Transformations - Implements uniform scaling combined with rotation and translation to preserve angles and parallel lines.
  • Linear System Solvers - Provides direct linear solvers and eigen-solvers to find solutions for systems of linear equations.
  • Matrix and Vector Construction - Constructs matrices using row slices, iterators, closures, identity patterns, or random values.
  • Matrix Component Accessors - Updates individual components or entire rows and columns within a mutable matrix.
  • Matrix Decompositions - Factors rectangular matrices into singular values and vectors to determine matrix rank and pseudo-inverses.
  • LU Decompositions - Factors matrices into lower and upper triangular components to compute determinants and solve linear systems.
  • QR Decompositions - Decomposes general matrices into unitary and upper triangular matrices to facilitate the computation of inverses.
  • Matrix Resizing - Adds or removes rows and columns from a matrix using fixed-size or dynamic-size adjustments.
  • Sparse Matrix Storage - Provides memory-efficient data structures that store only non-zero elements for large datasets.
  • Unit-Norm Type Wrapping - Wraps vectors and quaternions in specific types to guarantee a magnitude of one through the type system.
  • View Matrix Calculators - Provides utilities for calculating camera view matrices based on position and orientation for 3D scenes.

Historial de estrellas

Gráfico del historial de estrellas de dimforge/nalgebraGráfico del historial de estrellas de dimforge/nalgebra

Búsqueda con IA

Explora más repositorios increíbles

Describe lo que necesitas en lenguaje sencillo: la IA clasifica miles de proyectos open-source curados por relevancia.

Start searching with AI

Alternativas open-source a Nalgebra

Proyectos open-source similares, clasificados según cuántas características comparten con Nalgebra.
  • mathnet/mathnet-numericsAvatar de mathnet

    mathnet/mathnet-numerics

    3,717Ver en GitHub↗

    This project is a numerical computing library designed for scientific and engineering mathematical operations. It functions as a comprehensive linear algebra framework, a statistical analysis library, and a toolkit for mathematical optimization and numerical integration. The library is distinguished by its provider-based native acceleration, which allows managed code to be swapped for platform-native binary libraries to increase the performance of computationally intensive routines. It also supports a hybrid approach to matrix storage, implementing separate strategies for dense and sparse mat

    C#csharpdifferentiationfft
    Ver en GitHub↗3,717
  • arrayfire/arrayfireAvatar de arrayfire

    arrayfire/arrayfire

    4,888Ver en GitHub↗

    ArrayFire is a hardware-agnostic compute framework and JIT-compiled tensor engine designed for high-performance numerical computing. It serves as a GPU numerical computing library and parallel signal processing toolkit that abstracts hardware backends, allowing the same codebase to execute across various GPU architectures and CPUs. The project distinguishes itself through a JIT engine that uses expression compilation to fuse operations and minimize memory overhead. It employs a deferred execution graph to optimize computation chains and provides interoperability primitives to share data and e

    C++arrayfirecc-plus-plus
    Ver en GitHub↗4,888
  • jounce/surgeAvatar de Jounce

    Jounce/Surge

    5,321Ver en GitHub↗

    Surge is a Swift library for high-performance numerical analysis, linear algebra, digital signal processing, and accelerated image manipulation. It utilizes the Accelerate framework to provide hardware-accelerated tools for matrix mathematics and signal processing. The library provides specialized capabilities for digital signal processing, including convolution, signal similarity analysis through cross-correlation, and domain transformations using fast Fourier transforms. It also includes a suite of tools for the rapid transformation and analysis of pixel buffers and image data. Beyond sign

    Swiftacceleratearithmeticconvolution
    Ver en GitHub↗5,321
  • mosra/magnumAvatar de mosra

    mosra/magnum

    5,169Ver en GitHub↗

    Magnum is a C++ middleware suite for cross-platform graphics development and real-time data visualization. It provides a hardware-agnostic rendering layer that translates graphics commands into platform-specific calls, ensuring consistent behavior across different GPU drivers and APIs such as Vulkan. The project focuses on decoupling application logic from underlying hardware through abstract graphics and system utilities. It features a plugin-based resource importer for 3D assets and audio, a hierarchical scene graph for spatial transformations, and a high-performance signal-based event syst

    C++
    Ver en GitHub↗5,169
Ver las 30 alternativas a Nalgebra→

Preguntas frecuentes

¿Qué hace dimforge/nalgebra?

nalgebra es una biblioteca de álgebra lineal para Rust que proporciona operaciones de matriz y vector con soporte para dimensiones tanto en tiempo de compilación como en tiempo de ejecución. Funciona como una biblioteca de análisis numérico y una biblioteca de matrices dispersas, ofreciendo un framework matemático capaz de ejecutarse en entornos embebidos y WebAssembly sin requerir la biblioteca estándar de Rust.

¿Cuáles son las características principales de dimforge/nalgebra?

Las características principales de dimforge/nalgebra son: No-Std Mathematical Frameworks, Linear Algebra Libraries, 3D Graphics Pipelines, Perspective Projections, Embedded Mathematics Libraries, Mathematical Frameworks, Generic Scalar Abstractions, Scalar Abstractions.

¿Qué alternativas de código abierto existen para dimforge/nalgebra?

Las alternativas de código abierto para dimforge/nalgebra incluyen: mathnet/mathnet-numerics — This project is a numerical computing library designed for scientific and engineering mathematical operations. It… arrayfire/arrayfire — ArrayFire is a hardware-agnostic compute framework and JIT-compiled tensor engine designed for high-performance… mosra/magnum — Magnum is a C++ middleware suite for cross-platform graphics development and real-time data visualization. It provides… jounce/surge — Surge is a Swift library for high-performance numerical analysis, linear algebra, digital signal processing, and… gaoxiang12/slambook2 — This project is a set of exercise solutions and implementation guides for visual simultaneous localization and… gfxfundamentals/webgl-fundamentals — webgl-fundamentals is a comprehensive educational resource and graphics tutorial for learning hardware-accelerated 2D…