{"id":18113364,"url":"https://github.com/numeric-rust/numeric","last_synced_at":"2025-07-25T18:40:43.196Z","repository":{"id":52266760,"uuid":"37862637","full_name":"numeric-rust/numeric","owner":"numeric-rust","description":"N-dimensional matrix class for Rust","archived":false,"fork":false,"pushed_at":"2021-05-02T21:29:11.000Z","size":1008,"stargazers_count":62,"open_issues_count":6,"forks_count":9,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-06-04T22:59:02.436Z","etag":null,"topics":["linear-algebra","linear-solvers","matrix","matrix-multiplication","rust","tensor"],"latest_commit_sha":null,"homepage":null,"language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/numeric-rust.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-06-22T15:13:06.000Z","updated_at":"2025-01-29T02:19:09.000Z","dependencies_parsed_at":"2022-09-15T04:53:18.425Z","dependency_job_id":null,"html_url":"https://github.com/numeric-rust/numeric","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"purl":"pkg:github/numeric-rust/numeric","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/numeric-rust%2Fnumeric","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/numeric-rust%2Fnumeric/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/numeric-rust%2Fnumeric/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/numeric-rust%2Fnumeric/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/numeric-rust","download_url":"https://codeload.github.com/numeric-rust/numeric/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/numeric-rust%2Fnumeric/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267046662,"owners_count":24026905,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-25T02:00:09.625Z","response_time":70,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["linear-algebra","linear-solvers","matrix","matrix-multiplication","rust","tensor"],"created_at":"2024-11-01T02:08:02.318Z","updated_at":"2025-07-25T18:40:43.163Z","avatar_url":"https://github.com/numeric-rust.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Crates.io](https://img.shields.io/crates/v/numeric.svg)](https://crates.io/crates/numeric)\n\n# Numeric Rust\n\nGeneral-purpose N-dimensional matrix class for Rust. It links to OpenBLAS and\nLAPACK to make tensor operations fast (such as matrix multiplications and\nlinear solvers). It utilizes Rust's move semantics as much as possible to avoid\nunnecessary copies.\n\n## Documentation\n\n* http://numeric.rs/doc/numeric/index.html\n\n## Features\n\nSome of the completed and planned features:\n\n* [x] Element-wise addition, subtraction, multiplication, division\n* [x] Matrix multiplication and scalar product\n* [x] Indexing\n* [x] Slicing\n* [x] Generic (anything from `Tensor\u003cbool\u003e` to `Tensor\u003cf64\u003e`)\n* [x] Mathematical functions\n* [x] Linear solver\n* [x] Basic random number generation\n* [x] Creation macro\n* [x] Updating slices\n* [x] Saving/loading HDF5\n* [x] Strided slices\n* [x] Broadcasted axes\n* [x] Basic support for complex numbers\n* [x] Singular Value Decomposition\n* [ ] Matrix inverse\n\nRecent progress is summarized in [CHANGELOG.md](CHANGELOG.md). For planned\nfeatures, take a look at [TODO.md](TODO.md).\n\n## Example\n\n```rust\n#[macro_use(tensor)]\nextern crate numeric;\n\nuse numeric::Tensor;\n\nfn main() {\n    let a: Tensor\u003cf64\u003e = Tensor::range(6).reshape(\u0026[2, 3]);\n    let b = tensor![7.0, 3.0, 2.0; -3.0, 2.0, -5.0];\n    let c = tensor![7.0, 3.0, 2.0];\n\n    let d = \u0026a + \u0026b;         // a new tensor is returned\n    println!(\"d = {}\", d);\n\n    let e = a.dot(\u0026c);       // matrix multiplication (returns a new tensor)\n    println!(\"e = {}\", e);\n\n    let f = a + \u0026b;          // a is moved (no new memory is allocated)\n    println!(\"f = {}\", f);\n\n    // Higher-dimensional\n    let g: Tensor\u003cf64\u003e = Tensor::ones(\u0026[2, 3, 4, 5]);\n    println!(\"g = {}\", g);\n}\n```\n\nOutput:\n\n```\nd =\n 7 4 4\n 0 6 0\n[Tensor\u003cf64\u003e of shape 2x3]\ne =\n  7 43\n[Tensor\u003cf64\u003e of shape 2]\nf =\n 7 4 4\n 0 6 0\n[Tensor\u003cf64\u003e of shape 2x3]\ng =\n...\n[Tensor\u003cf64\u003e of shape 2x3x4x5]\n```\n\n## Contribute\n\nWe love pull requests and there are tons of things to work on for this project.\nIf you want suggestions for contributions, check out [TODO.md](TODO.md) (a\nnon-exhaustive list of what would be useful additions). Add your name to the\n[CONTRIBUTORS.md](CONTRIBUTORS.md) file as part of your PR, no matter how small\nit may seem.\n\n## Acknowledgements\n\nNumeric Rust is primarily inspired by Numpy and borrows heavily from that\nproject. Even the name is a play on **Num**eric **Py**thon. Another source of\nsome inspiration is Torch7.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnumeric-rust%2Fnumeric","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnumeric-rust%2Fnumeric","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnumeric-rust%2Fnumeric/lists"}