{"id":13719020,"url":"https://github.com/ruby-numo/numo-linalg","last_synced_at":"2025-05-07T11:30:32.098Z","repository":{"id":48596512,"uuid":"56326316","full_name":"ruby-numo/numo-linalg","owner":"ruby-numo","description":"Linear Algebra Library for Ruby/Numo::NArray","archived":false,"fork":false,"pushed_at":"2023-12-15T07:39:29.000Z","size":2214,"stargazers_count":37,"open_issues_count":9,"forks_count":9,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-10-20T20:29:32.887Z","etag":null,"topics":["blas","lapack","linalg","linear-algebra-library","matrix","narray","numo","ruby"],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ruby-numo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2016-04-15T14:29:20.000Z","updated_at":"2024-06-18T20:28:39.000Z","dependencies_parsed_at":"2024-01-07T21:13:37.171Z","dependency_job_id":"4d1643b4-8457-4e27-b1ec-9014cfb54540","html_url":"https://github.com/ruby-numo/numo-linalg","commit_stats":{"total_commits":279,"total_committers":10,"mean_commits":27.9,"dds":"0.39426523297491034","last_synced_commit":"c76099dad94cdd8895a361e803a06244020d1a65"},"previous_names":["ruby-numo/linalg"],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ruby-numo%2Fnumo-linalg","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ruby-numo%2Fnumo-linalg/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ruby-numo%2Fnumo-linalg/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ruby-numo%2Fnumo-linalg/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ruby-numo","download_url":"https://codeload.github.com/ruby-numo/numo-linalg/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224592341,"owners_count":17337077,"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","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":["blas","lapack","linalg","linear-algebra-library","matrix","narray","numo","ruby"],"created_at":"2024-08-03T01:00:41.121Z","updated_at":"2024-11-14T08:31:04.674Z","avatar_url":"https://github.com/ruby-numo.png","language":"Ruby","funding_links":[],"categories":["Numeric and Symbolic Computation"],"sub_categories":[],"readme":"# Numo::Linalg : Linear Algebra library with BLAS/LAPACK binding to Numo::NArray\n\n[![Binder](http://mybinder.org/badge.svg)](http://mybinder.org/repo/ruby-numo/numo-linalg)\n[![Build Status](https://github.com/ruby-numo/numo-linalg/workflows/build/badge.svg)](https://github.com/ruby-numo/numo-linalg/actions)\n\n[GitHub](https://github.com/ruby-numo/numo-linalg) |\n[RubyGems](https://rubygems.org/gems/numo-linalg)\n\nUnder development!\n\n## Introduction\n\nThis is a binding of BLAS/LAPACK for Numo::NArray using dynamic linking loader.\nThis design allows you to change backend libraries without re-compiling.\n\n### [Numo::Linalg API](http://ruby-numo.github.io/numo-linalg/yard/Numo/Linalg.html)\n\n* Matrix and vector products\n    * dot, matmul\n* Decomposition\n    * lu, lu\\_fact, lu\\_inv, lu\\_solve, ldl, cholesky, cho\\_fact, cho\\_inv, cho\\_solve,\n      qr, svd, svdvals, orth, null_space\n* Matrix eigenvalues\n    * eig, eigh, eigvals, eigvalsh\n* Norms and other numbers\n    * norm, cond, det, slogdet, matrix\\_rank, matrix\\_power\n* Solving equations and inverting matrices\n    * solve, lstsq, inv, pinv\n\n### Low-level modules\n\n* [Numo::Linalg::Blas](http://ruby-numo.github.io/numo-linalg/yard/Numo/Linalg/Blas.html) - Low-level BLAS functions\n* [Numo::Linalg::Lapack](http://ruby-numo.github.io/numo-linalg/yard/Numo/Linalg/Lapack.html) - Low-level LAPACK functions\n\n## Installation\n\n* Install [Numo::NArray](https://github.com/ruby-numo/narray)\n\n* Install [LAPACK](http://www.netlib.org/lapack/) or alternative package.\n\n    * Numo::Linalg requires C-interface\n      [CBLAS](http://www.netlib.org/blas/#_cblas) and\n      [LAPACKE](http://www.netlib.org/lapack/lapacke.html) interface.\n      These are included in LAPACK package.\n\n    * Recommended: use one of following faster libraries:\n        * [ATLAS](https://sourceforge.net/projects/math-atlas/)\n        * [OpenBLAS](http://www.openblas.net/)\n        * [Intel MKL](https://software.intel.com/intel-mkl)\n\n    * Note that the performance depends on the backend library as shown in\n      [benchmark](https://github.com/ruby-numo/numo-linalg/tree/master/bench).\n\n* Install Numo::Linalg\n\n```shell\n$ gem install numo-linalg\n```\n\nor\n\n```shell\n$ git clone https://github.com/ruby-numo/numo-linalg.git\n$ cd linalg\n$ rake build\n$ gem install pkg/numo-linalg-*.gem\n```\n\n## Using\n\n* Load Numo::Linalg module with default backend:\n\n```ruby\nrequire \"numo/linalg\"\n```\n\n* Read also instruction for [Selecting Backend Library](https://github.com/ruby-numo/numo-linalg/tree/master/doc/select-backend.md).\n\n## Authors\n\n* Masahiro Tanaka\n* Makoto Kishimoto\n* Atsushi Tatsuma\n\n## Acknowledgments\n\n* This work is partly supported by 2016 Ruby Association Grant.\n\n## ToDo\n\n* More functions\n* write test\n* Documentation\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fruby-numo%2Fnumo-linalg","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fruby-numo%2Fnumo-linalg","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fruby-numo%2Fnumo-linalg/lists"}