nalgebra
libint
Our great sponsors
nalgebra | libint | |
---|---|---|
20 | 2 | |
3,732 | 212 | |
2.6% | - | |
7.8 | 9.2 | |
3 days ago | 8 days ago | |
Rust | C++ | |
Apache License 2.0 | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
nalgebra
-
Xkcd 2916: Machine
Ok, so this uses https://rapier.rs/ which is very cool
Rapier, alongside https://nalgebra.org/ (which it uses underneath) has seriously good documentation and some advanced features like cross-platform determinism (something made hard by the way floating point differs between platforms)
-
Geometric Algebra to Geometric Computing Software Developers
> Some GA libraries[1][2] define types for the different kind of objects (grades)
That's nice!
This reminds of me things like, linear algebra libraries that will type-check matrices so that a 2x2 matrix can't be added to a 2x3 matrix (but then you can have a dynamic matrix that will error only in runtime), like https://nalgebra.org/ and others.
-
Has anyone worked on a math library before?
Maybe start by looking at https://nalgebra.org/ to see what rust math libraries might look like
-
faer 0.8.0 release
And Nalgebra, while better, also seems to have slowed down on commits and responses to issues and PRs. I have a PR there for a relatively simple wrapper type for row vectors which was explicitly requested by a maintainer, which hasn't even gotten a comment since for two weeks.
-
A Rust client library for interacting with Microsoft Airsim https://github.com/Sollimann/airsim-client
nalgebra (similar to Eigen in cpp)
-
What crates are considered as de-facto standard?
nalgebra
-
Science-related crates that I should have a look at?
nalgebra is for linear algebra.
-
Hey Rustaceans! Got a question? Ask here! (31/2022)!
Take a look into math libraries, like glam, nalgebra, and cgmath. I've only used these through game engines, though, so I can't offer per-basis reviews/advice.
-
C++ is making me depressed / CUDA question
If you do not need GPU then I would recommend looking into Eigen in C++, nalgebra in Rust (with a BLAS in both cases for improved performance) or one of the above options (Julia / Python+JAX).
- Lightning talk: Stop writing Rust
libint
-
I have written a blog post about my experience using Rust for scientific numerical applications
Libraries to compute the integrals like libint2 can be configured to used MPI. Therefore, you could wrap the library API using the rust foreign function interface to compute the integrals in parallel. It is not a piece of cake when calling it directly from C++, nor it would be from Rust.
What are some alternatives?
cgmath-rs - A linear algebra and mathematics library for computer graphics.
libcint - general GTO integrals for quantum chemistry
rust-ndarray - ndarray: an N-dimensional array with array views, multidimensional slicing, and efficient operations
rsmpi - MPI bindings for Rust
glam-rs - A simple and fast linear algebra library for games and graphics
node_crunch - Allows to distribute computations across several nodes
rust-blas - BLAS bindings for Rust
Haskell-abinitio - contains a package in Haskell to calculate the electronic structure properties of molecules using the Hartree-Fock method
rulinalg - A linear algebra library written in Rust
scirust - Scientific Computing Library in Rust
arrayfire-rust - Rust wrapper for ArrayFire
rust-opencl - OpenCL bindings for Rust.