High-performance linear algebra library written in Rust
Project description
orthos
High-performance linear algebra library written in Rust with Python bindings.
Installation
pip install orthos
Quick Start
from orthos import Matrix, Vector
# Create matrices
a = Matrix([[1.0, 2.0], [3.0, 4.0]])
b = Matrix.identity(2)
# Matrix operations
c = a @ b # Matrix multiplication
d = a + b # Addition
e = a.transpose() # Transpose
f = a.inverse() # Inverse
# Properties
print(a.determinant()) # -2.0
print(a.trace()) # 5.0
print(a.shape) # (2, 2)
# Element access
print(a[0, 0]) # 1.0
a[0, 0] = 10.0 # Set element
# Vectors
v = Vector([1.0, 2.0, 3.0])
w = Vector([4.0, 5.0, 6.0])
print(v.dot(w)) # 32.0
print(v.norm()) # 3.7416...
print(v.normalize()) # Unit vector
# NumPy interoperability
import numpy as np
np_array = np.array([[1.0, 2.0], [3.0, 4.0]])
m = Matrix.from_numpy(np_array)
back_to_numpy = m.to_numpy()
Features
Matrix Operations
- Creation:
zeros,ones,identity, from lists, from NumPy - Arithmetic:
+,-,*(element-wise),@(matrix multiply) - Methods:
transpose(),inverse(),determinant(),trace(),scale() - Indexing:
matrix[row, col]
Vector Operations
- Creation:
zeros,ones, from lists, from NumPy - Arithmetic:
+,-, scalar multiply - Methods:
dot(),norm(),norm_squared(),normalize(),scale() - Indexing:
vector[index]
Matrix-Vector Operations
matvec(matrix, vector)- Matrix-vector multiplicationmatrix.matvec(vector)- Method form
NumPy Interoperability
Matrix.from_numpy(array)- Create from NumPy arraymatrix.to_numpy()- Convert to NumPy arrayVector.from_numpy(array)- Create from NumPy arrayvector.to_numpy()- Convert to NumPy array
Supported Platforms
| Platform | Architectures |
|---|---|
| Linux | x86_64, aarch64 |
| macOS | x86_64, Apple Silicon |
| Windows | x86_64 |
Python Version Support
- Python 3.9
- Python 3.10
- Python 3.11
- Python 3.12
- Python 3.13
Performance
orthos is built on faer, a high-performance linear algebra library in Rust. It provides competitive performance especially for small to medium matrices.
Links
License
Apache-2.0
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file orthos-0.1.3.tar.gz.
File metadata
- Download URL: orthos-0.1.3.tar.gz
- Upload date:
- Size: 26.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7c496f6ce182ad1608bddbd7192b3cfb2eb631e70d1444eb300c1cfd0907c255
|
|
| MD5 |
6c24bf2c3cec3d045eb7fda22c7cf97b
|
|
| BLAKE2b-256 |
63a8bce393d45cfe67891a03b226f6a7895f98d6e524c17cdf9d5efb7ab2511b
|
File details
Details for the file orthos-0.1.3-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: orthos-0.1.3-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 694.2 kB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
355d0e5d689758b3181d3e638b751cc2c7505348a1d184ac1017457412e872da
|
|
| MD5 |
b9f5533190ef14da9e7c0b2861bac39b
|
|
| BLAKE2b-256 |
1fe06d6f8eea9c4383ddfac0c5bff83c2feabb21fc51d83864f8faf26af23821
|
File details
Details for the file orthos-0.1.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: orthos-0.1.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 925.9 kB
- Tags: CPython 3.13, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
02d0abdfb86088ee64e3b6c156aa4f6f82b5c15c1de6f5f983b104b6cbe89f60
|
|
| MD5 |
6c79e21970c60ac278b3f6d529c43b15
|
|
| BLAKE2b-256 |
40519939ba889f7b4bcd4b00852fd8ede9c04be99f1dd05fa749ae2d60906488
|
File details
Details for the file orthos-0.1.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: orthos-0.1.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 544.0 kB
- Tags: CPython 3.13, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b85ecb06bc770e7c7de38486fb272371d54c2fd2511a32d72ab48be2a26c36e1
|
|
| MD5 |
28fa65acfee52a6a6d45d91052ba7148
|
|
| BLAKE2b-256 |
89996fdedf45d5be218b6e5b535b6f450e4d30516167f399ca1ad2ca991523e2
|
File details
Details for the file orthos-0.1.3-cp313-cp313-macosx_11_0_arm64.whl.
File metadata
- Download URL: orthos-0.1.3-cp313-cp313-macosx_11_0_arm64.whl
- Upload date:
- Size: 459.4 kB
- Tags: CPython 3.13, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
68158b2f21df7ffebb2c6c562c326d7df161d30ac7d5ef792d125bdea05781ef
|
|
| MD5 |
68eeb4d43088905a92733a793c91a66b
|
|
| BLAKE2b-256 |
5c8731d957721d1db16e985ec0ef421451e76696a92439f2a8e793d9076459ce
|
File details
Details for the file orthos-0.1.3-cp313-cp313-macosx_10_12_x86_64.whl.
File metadata
- Download URL: orthos-0.1.3-cp313-cp313-macosx_10_12_x86_64.whl
- Upload date:
- Size: 604.4 kB
- Tags: CPython 3.13, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
182f7635b1766370698f09468c8d588a469831015d4ac0c45c1954c16ba44fce
|
|
| MD5 |
12b8ac1dca52204dd0795973252dd560
|
|
| BLAKE2b-256 |
3628c697c719eff0af8a027cec899c780a5c194b68beb326c82b1226e872a667
|
File details
Details for the file orthos-0.1.3-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: orthos-0.1.3-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 694.3 kB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c9f9fe6ca29164c7ca698cecb24400250b212c3643acc8af47674580127b6c80
|
|
| MD5 |
fcc7e04a9f257f71d0d2a1b92a1a6540
|
|
| BLAKE2b-256 |
11db702d8b4557c75f5d4500f8ca58a0baa1a4606e61ba483984811d7c396e65
|
File details
Details for the file orthos-0.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: orthos-0.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 926.0 kB
- Tags: CPython 3.12, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fcf0f67a0ea6b813e8736f8709d6a81b6099866fdec148755c02089cc76d69de
|
|
| MD5 |
f1d1f8739b57964c8e68f923d05afa37
|
|
| BLAKE2b-256 |
683d0294e12803a0df9e9b922ca0fd699adfae5dbed255e29258cd73bd25a6ee
|
File details
Details for the file orthos-0.1.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: orthos-0.1.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 544.1 kB
- Tags: CPython 3.12, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
250106b62ab39c472ef27b093a45eccac4f1ef2a7bb21b57d8523db65ec00b85
|
|
| MD5 |
3a1a75fad74f83c759673392ad4ca9de
|
|
| BLAKE2b-256 |
44250f6d61b0da5274905f3f019a6cb0d5c799168c5293986b50b05f422b0fb2
|
File details
Details for the file orthos-0.1.3-cp312-cp312-macosx_11_0_arm64.whl.
File metadata
- Download URL: orthos-0.1.3-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 459.4 kB
- Tags: CPython 3.12, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
de28d0c354728ab3a49bb2d087becec47c605a394a7bfd8a08e14e3e8b70434d
|
|
| MD5 |
40b2ede8e50f886c78524436eebff9ab
|
|
| BLAKE2b-256 |
d215ddbdcd13b1d457167a6b75b5539e8392dc90b6276b9eace3b28c27859e7a
|
File details
Details for the file orthos-0.1.3-cp312-cp312-macosx_10_12_x86_64.whl.
File metadata
- Download URL: orthos-0.1.3-cp312-cp312-macosx_10_12_x86_64.whl
- Upload date:
- Size: 604.4 kB
- Tags: CPython 3.12, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fa3919a117f4c01c75fd3d4032071562ed15f30f7c152f8de4d635d56d8541c4
|
|
| MD5 |
204fd648ae14de6c934c907ad7e80171
|
|
| BLAKE2b-256 |
46b23193d49e02913e6f4e7ece1ea48dfcd3082f8db2b85bf7355caef9a8b88d
|
File details
Details for the file orthos-0.1.3-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: orthos-0.1.3-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 691.5 kB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0da9495c124859835510372782039db4efc4ef8fa47ac6914c069d3c40a9ace1
|
|
| MD5 |
5b6e189d1fd273206abcfa3e66d4bbcc
|
|
| BLAKE2b-256 |
f5f86cab4549d0117f537a7c6addc2cf6ab59b362857d06568324260cd0e1a3e
|
File details
Details for the file orthos-0.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: orthos-0.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 925.7 kB
- Tags: CPython 3.11, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6058f98935d5e6f927e52c8c92fbd7e33cfce5e2944f2ddc80be0600a119485b
|
|
| MD5 |
5ab6701ef795f999171c271706d8b22b
|
|
| BLAKE2b-256 |
6389918acc7df4ced06b3a621fb7d9b0e4a53845331bd01895c31c37c5d9b67d
|
File details
Details for the file orthos-0.1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: orthos-0.1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 544.1 kB
- Tags: CPython 3.11, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b3cd585f55fada3b5dbd9399d092fe9e424728ab1afc761e70f2eadd1fb0b84a
|
|
| MD5 |
1005a6cd864b8c5f6274606d1cde8240
|
|
| BLAKE2b-256 |
3434e2755e1c4ddee319853556ee4e21b1d83f6c4ca0e0ebfbd0756b89e779b6
|
File details
Details for the file orthos-0.1.3-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: orthos-0.1.3-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 459.8 kB
- Tags: CPython 3.11, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
91809ddd5e45af42c78412a106aeacea4b1ab564074e2466d5517511f517742b
|
|
| MD5 |
5709ca79b616098f74bb16abc71be279
|
|
| BLAKE2b-256 |
dcfb664c3384def6853bd6a58e886864688f58de55f28d3b2880aa8dea5a58e6
|
File details
Details for the file orthos-0.1.3-cp311-cp311-macosx_10_12_x86_64.whl.
File metadata
- Download URL: orthos-0.1.3-cp311-cp311-macosx_10_12_x86_64.whl
- Upload date:
- Size: 605.2 kB
- Tags: CPython 3.11, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8d9ac6f27ba21f4f18ca9df9fd7b9b8d4af42443506567a4e40c2948a4a25920
|
|
| MD5 |
7595e2df79fcfe9fb3996dc78d9a1353
|
|
| BLAKE2b-256 |
71907456403f30c457f0498fd2f14bfd763fdfd38c01740241923d6557ea09e8
|
File details
Details for the file orthos-0.1.3-cp310-cp310-win_amd64.whl.
File metadata
- Download URL: orthos-0.1.3-cp310-cp310-win_amd64.whl
- Upload date:
- Size: 691.6 kB
- Tags: CPython 3.10, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
051ecab29ece7ec8ad79258652d05504aeffedde76eefc63daf55f1fb4b61f12
|
|
| MD5 |
33806d519980f5f9b7e3005ab27d164b
|
|
| BLAKE2b-256 |
d4ee3617c4abf148c41403129b8c15e582db0085f93a7005f42fc316ff42a7f6
|
File details
Details for the file orthos-0.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: orthos-0.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 925.9 kB
- Tags: CPython 3.10, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b1ad0acfe7bf5b48e15ef039bef9f727cbf9c3295625792c1f36a6bea16c42d7
|
|
| MD5 |
0b45ff8003d10a06d2b197c813415063
|
|
| BLAKE2b-256 |
1b0b7e646a2eeb162406e7782b5d7cff90a5915c9108f5c5f48f60064ac70d8c
|
File details
Details for the file orthos-0.1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: orthos-0.1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 544.3 kB
- Tags: CPython 3.10, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
af3f1c8703946feb9bf3195704b3af36f9c3684c39e544a0456b4b140ad7714c
|
|
| MD5 |
2239498a8578adc7eec4c03f0b1f7c52
|
|
| BLAKE2b-256 |
d76116206711e8e3e696e63ce0d8cda389727bc30355686656406b2fdb02c979
|
File details
Details for the file orthos-0.1.3-cp310-cp310-macosx_11_0_arm64.whl.
File metadata
- Download URL: orthos-0.1.3-cp310-cp310-macosx_11_0_arm64.whl
- Upload date:
- Size: 460.0 kB
- Tags: CPython 3.10, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
08fbec78d9d43c063cc992b4b777ffd0398f9bcff722a6791a9b4d1ac358858c
|
|
| MD5 |
375dab99d3563c3bbb525c859f9fa283
|
|
| BLAKE2b-256 |
06118c527db75d51751f2d7633ae30bcf3624c7bc7f2636f25920a459a73ff49
|
File details
Details for the file orthos-0.1.3-cp310-cp310-macosx_10_12_x86_64.whl.
File metadata
- Download URL: orthos-0.1.3-cp310-cp310-macosx_10_12_x86_64.whl
- Upload date:
- Size: 605.4 kB
- Tags: CPython 3.10, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9209e7b77094970fde524dafea20024b9150e189c28202751ea0c5e81a2fab73
|
|
| MD5 |
f18e6c7a33a29112420145e213faa3f3
|
|
| BLAKE2b-256 |
5cdb2dd5a9b4c66dfd4af521b9c896bd5207c51d5128a460f76a1a040da81cc3
|
File details
Details for the file orthos-0.1.3-cp39-cp39-win_amd64.whl.
File metadata
- Download URL: orthos-0.1.3-cp39-cp39-win_amd64.whl
- Upload date:
- Size: 692.1 kB
- Tags: CPython 3.9, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e4ce8230c5291a2de207e2be5989c6d1fa2807bc824bdf8be750a9a0b1517eb4
|
|
| MD5 |
b5cf5858a0efb557af948801f8f9a764
|
|
| BLAKE2b-256 |
a0aac3d9d50632d246dc0846741a14693c75177f4b3688fb48e1b7a886d9616f
|
File details
Details for the file orthos-0.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: orthos-0.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 926.4 kB
- Tags: CPython 3.9, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e56a0ee5d50c923ea0b9d1531c4772403bd6bdb11d9bd2a1d40e6c5b58e559f5
|
|
| MD5 |
fdb9faf1ca429b54761619aee7d0e8c7
|
|
| BLAKE2b-256 |
6c8fd0bcf845d62edc1e98c2f90f2ea5a71b663a9a9705f74618899e26be35fa
|
File details
Details for the file orthos-0.1.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: orthos-0.1.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 544.9 kB
- Tags: CPython 3.9, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f723b3461dbe3e6c9e96fe17114e514a82740ded2ba564ec71813938aca310d6
|
|
| MD5 |
620af3f56f60ea5b9a635ca147c30f14
|
|
| BLAKE2b-256 |
880c0474f5b4824a1683381684f5cc51ca56b8da02802686224e9c66f91a0ebd
|
File details
Details for the file orthos-0.1.3-cp39-cp39-macosx_11_0_arm64.whl.
File metadata
- Download URL: orthos-0.1.3-cp39-cp39-macosx_11_0_arm64.whl
- Upload date:
- Size: 460.9 kB
- Tags: CPython 3.9, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
98c3e268e4239f62c9102561adb094a018a040b5d6269ee85d125571d55b5f5a
|
|
| MD5 |
f82a2bf25476538cb9a69eb7941046d9
|
|
| BLAKE2b-256 |
42e6787962ae747803fd6df3707fba17105cfcc94526d030a89b2adc9b7b0dfa
|
File details
Details for the file orthos-0.1.3-cp39-cp39-macosx_10_12_x86_64.whl.
File metadata
- Download URL: orthos-0.1.3-cp39-cp39-macosx_10_12_x86_64.whl
- Upload date:
- Size: 606.2 kB
- Tags: CPython 3.9, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
83709c3cabb9536377c03f9ca2cdb60f79d12053de4d8ad09db6d903e2dc7e53
|
|
| MD5 |
ad2fc9a8968e9be0dc6b4783757f2d2f
|
|
| BLAKE2b-256 |
1a817258139644571456b90042bafffb91f85fb55d21225d26747f43d85ecbe1
|