Skip to main content

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 multiplication
  • matrix.matvec(vector) - Method form

NumPy Interoperability

  • Matrix.from_numpy(array) - Create from NumPy array
  • matrix.to_numpy() - Convert to NumPy array
  • Vector.from_numpy(array) - Create from NumPy array
  • vector.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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

orthos-0.1.3.tar.gz (26.3 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

orthos-0.1.3-cp313-cp313-win_amd64.whl (694.2 kB view details)

Uploaded CPython 3.13Windows x86-64

orthos-0.1.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (925.9 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

orthos-0.1.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (544.0 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

orthos-0.1.3-cp313-cp313-macosx_11_0_arm64.whl (459.4 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

orthos-0.1.3-cp313-cp313-macosx_10_12_x86_64.whl (604.4 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

orthos-0.1.3-cp312-cp312-win_amd64.whl (694.3 kB view details)

Uploaded CPython 3.12Windows x86-64

orthos-0.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (926.0 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

orthos-0.1.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (544.1 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

orthos-0.1.3-cp312-cp312-macosx_11_0_arm64.whl (459.4 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

orthos-0.1.3-cp312-cp312-macosx_10_12_x86_64.whl (604.4 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

orthos-0.1.3-cp311-cp311-win_amd64.whl (691.5 kB view details)

Uploaded CPython 3.11Windows x86-64

orthos-0.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (925.7 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

orthos-0.1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (544.1 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

orthos-0.1.3-cp311-cp311-macosx_11_0_arm64.whl (459.8 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

orthos-0.1.3-cp311-cp311-macosx_10_12_x86_64.whl (605.2 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

orthos-0.1.3-cp310-cp310-win_amd64.whl (691.6 kB view details)

Uploaded CPython 3.10Windows x86-64

orthos-0.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (925.9 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

orthos-0.1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (544.3 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

orthos-0.1.3-cp310-cp310-macosx_11_0_arm64.whl (460.0 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

orthos-0.1.3-cp310-cp310-macosx_10_12_x86_64.whl (605.4 kB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

orthos-0.1.3-cp39-cp39-win_amd64.whl (692.1 kB view details)

Uploaded CPython 3.9Windows x86-64

orthos-0.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (926.4 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

orthos-0.1.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (544.9 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

orthos-0.1.3-cp39-cp39-macosx_11_0_arm64.whl (460.9 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

orthos-0.1.3-cp39-cp39-macosx_10_12_x86_64.whl (606.2 kB view details)

Uploaded CPython 3.9macOS 10.12+ x86-64

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

Hashes for orthos-0.1.3.tar.gz
Algorithm Hash digest
SHA256 7c496f6ce182ad1608bddbd7192b3cfb2eb631e70d1444eb300c1cfd0907c255
MD5 6c24bf2c3cec3d045eb7fda22c7cf97b
BLAKE2b-256 63a8bce393d45cfe67891a03b226f6a7895f98d6e524c17cdf9d5efb7ab2511b

See more details on using hashes here.

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

Hashes for orthos-0.1.3-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 355d0e5d689758b3181d3e638b751cc2c7505348a1d184ac1017457412e872da
MD5 b9f5533190ef14da9e7c0b2861bac39b
BLAKE2b-256 1fe06d6f8eea9c4383ddfac0c5bff83c2feabb21fc51d83864f8faf26af23821

See more details on using hashes here.

File details

Details for the file orthos-0.1.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for orthos-0.1.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 02d0abdfb86088ee64e3b6c156aa4f6f82b5c15c1de6f5f983b104b6cbe89f60
MD5 6c79e21970c60ac278b3f6d529c43b15
BLAKE2b-256 40519939ba889f7b4bcd4b00852fd8ede9c04be99f1dd05fa749ae2d60906488

See more details on using hashes here.

File details

Details for the file orthos-0.1.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for orthos-0.1.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b85ecb06bc770e7c7de38486fb272371d54c2fd2511a32d72ab48be2a26c36e1
MD5 28fa65acfee52a6a6d45d91052ba7148
BLAKE2b-256 89996fdedf45d5be218b6e5b535b6f450e4d30516167f399ca1ad2ca991523e2

See more details on using hashes here.

File details

Details for the file orthos-0.1.3-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for orthos-0.1.3-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 68158b2f21df7ffebb2c6c562c326d7df161d30ac7d5ef792d125bdea05781ef
MD5 68eeb4d43088905a92733a793c91a66b
BLAKE2b-256 5c8731d957721d1db16e985ec0ef421451e76696a92439f2a8e793d9076459ce

See more details on using hashes here.

File details

Details for the file orthos-0.1.3-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for orthos-0.1.3-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 182f7635b1766370698f09468c8d588a469831015d4ac0c45c1954c16ba44fce
MD5 12b8ac1dca52204dd0795973252dd560
BLAKE2b-256 3628c697c719eff0af8a027cec899c780a5c194b68beb326c82b1226e872a667

See more details on using hashes here.

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

Hashes for orthos-0.1.3-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 c9f9fe6ca29164c7ca698cecb24400250b212c3643acc8af47674580127b6c80
MD5 fcc7e04a9f257f71d0d2a1b92a1a6540
BLAKE2b-256 11db702d8b4557c75f5d4500f8ca58a0baa1a4606e61ba483984811d7c396e65

See more details on using hashes here.

File details

Details for the file orthos-0.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for orthos-0.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fcf0f67a0ea6b813e8736f8709d6a81b6099866fdec148755c02089cc76d69de
MD5 f1d1f8739b57964c8e68f923d05afa37
BLAKE2b-256 683d0294e12803a0df9e9b922ca0fd699adfae5dbed255e29258cd73bd25a6ee

See more details on using hashes here.

File details

Details for the file orthos-0.1.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for orthos-0.1.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 250106b62ab39c472ef27b093a45eccac4f1ef2a7bb21b57d8523db65ec00b85
MD5 3a1a75fad74f83c759673392ad4ca9de
BLAKE2b-256 44250f6d61b0da5274905f3f019a6cb0d5c799168c5293986b50b05f422b0fb2

See more details on using hashes here.

File details

Details for the file orthos-0.1.3-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for orthos-0.1.3-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 de28d0c354728ab3a49bb2d087becec47c605a394a7bfd8a08e14e3e8b70434d
MD5 40b2ede8e50f886c78524436eebff9ab
BLAKE2b-256 d215ddbdcd13b1d457167a6b75b5539e8392dc90b6276b9eace3b28c27859e7a

See more details on using hashes here.

File details

Details for the file orthos-0.1.3-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for orthos-0.1.3-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 fa3919a117f4c01c75fd3d4032071562ed15f30f7c152f8de4d635d56d8541c4
MD5 204fd648ae14de6c934c907ad7e80171
BLAKE2b-256 46b23193d49e02913e6f4e7ece1ea48dfcd3082f8db2b85bf7355caef9a8b88d

See more details on using hashes here.

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

Hashes for orthos-0.1.3-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 0da9495c124859835510372782039db4efc4ef8fa47ac6914c069d3c40a9ace1
MD5 5b6e189d1fd273206abcfa3e66d4bbcc
BLAKE2b-256 f5f86cab4549d0117f537a7c6addc2cf6ab59b362857d06568324260cd0e1a3e

See more details on using hashes here.

File details

Details for the file orthos-0.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for orthos-0.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6058f98935d5e6f927e52c8c92fbd7e33cfce5e2944f2ddc80be0600a119485b
MD5 5ab6701ef795f999171c271706d8b22b
BLAKE2b-256 6389918acc7df4ced06b3a621fb7d9b0e4a53845331bd01895c31c37c5d9b67d

See more details on using hashes here.

File details

Details for the file orthos-0.1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for orthos-0.1.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 b3cd585f55fada3b5dbd9399d092fe9e424728ab1afc761e70f2eadd1fb0b84a
MD5 1005a6cd864b8c5f6274606d1cde8240
BLAKE2b-256 3434e2755e1c4ddee319853556ee4e21b1d83f6c4ca0e0ebfbd0756b89e779b6

See more details on using hashes here.

File details

Details for the file orthos-0.1.3-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for orthos-0.1.3-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 91809ddd5e45af42c78412a106aeacea4b1ab564074e2466d5517511f517742b
MD5 5709ca79b616098f74bb16abc71be279
BLAKE2b-256 dcfb664c3384def6853bd6a58e886864688f58de55f28d3b2880aa8dea5a58e6

See more details on using hashes here.

File details

Details for the file orthos-0.1.3-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for orthos-0.1.3-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 8d9ac6f27ba21f4f18ca9df9fd7b9b8d4af42443506567a4e40c2948a4a25920
MD5 7595e2df79fcfe9fb3996dc78d9a1353
BLAKE2b-256 71907456403f30c457f0498fd2f14bfd763fdfd38c01740241923d6557ea09e8

See more details on using hashes here.

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

Hashes for orthos-0.1.3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 051ecab29ece7ec8ad79258652d05504aeffedde76eefc63daf55f1fb4b61f12
MD5 33806d519980f5f9b7e3005ab27d164b
BLAKE2b-256 d4ee3617c4abf148c41403129b8c15e582db0085f93a7005f42fc316ff42a7f6

See more details on using hashes here.

File details

Details for the file orthos-0.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for orthos-0.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b1ad0acfe7bf5b48e15ef039bef9f727cbf9c3295625792c1f36a6bea16c42d7
MD5 0b45ff8003d10a06d2b197c813415063
BLAKE2b-256 1b0b7e646a2eeb162406e7782b5d7cff90a5915c9108f5c5f48f60064ac70d8c

See more details on using hashes here.

File details

Details for the file orthos-0.1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for orthos-0.1.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 af3f1c8703946feb9bf3195704b3af36f9c3684c39e544a0456b4b140ad7714c
MD5 2239498a8578adc7eec4c03f0b1f7c52
BLAKE2b-256 d76116206711e8e3e696e63ce0d8cda389727bc30355686656406b2fdb02c979

See more details on using hashes here.

File details

Details for the file orthos-0.1.3-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for orthos-0.1.3-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 08fbec78d9d43c063cc992b4b777ffd0398f9bcff722a6791a9b4d1ac358858c
MD5 375dab99d3563c3bbb525c859f9fa283
BLAKE2b-256 06118c527db75d51751f2d7633ae30bcf3624c7bc7f2636f25920a459a73ff49

See more details on using hashes here.

File details

Details for the file orthos-0.1.3-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for orthos-0.1.3-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 9209e7b77094970fde524dafea20024b9150e189c28202751ea0c5e81a2fab73
MD5 f18e6c7a33a29112420145e213faa3f3
BLAKE2b-256 5cdb2dd5a9b4c66dfd4af521b9c896bd5207c51d5128a460f76a1a040da81cc3

See more details on using hashes here.

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

Hashes for orthos-0.1.3-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 e4ce8230c5291a2de207e2be5989c6d1fa2807bc824bdf8be750a9a0b1517eb4
MD5 b5cf5858a0efb557af948801f8f9a764
BLAKE2b-256 a0aac3d9d50632d246dc0846741a14693c75177f4b3688fb48e1b7a886d9616f

See more details on using hashes here.

File details

Details for the file orthos-0.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for orthos-0.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e56a0ee5d50c923ea0b9d1531c4772403bd6bdb11d9bd2a1d40e6c5b58e559f5
MD5 fdb9faf1ca429b54761619aee7d0e8c7
BLAKE2b-256 6c8fd0bcf845d62edc1e98c2f90f2ea5a71b663a9a9705f74618899e26be35fa

See more details on using hashes here.

File details

Details for the file orthos-0.1.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for orthos-0.1.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f723b3461dbe3e6c9e96fe17114e514a82740ded2ba564ec71813938aca310d6
MD5 620af3f56f60ea5b9a635ca147c30f14
BLAKE2b-256 880c0474f5b4824a1683381684f5cc51ca56b8da02802686224e9c66f91a0ebd

See more details on using hashes here.

File details

Details for the file orthos-0.1.3-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for orthos-0.1.3-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 98c3e268e4239f62c9102561adb094a018a040b5d6269ee85d125571d55b5f5a
MD5 f82a2bf25476538cb9a69eb7941046d9
BLAKE2b-256 42e6787962ae747803fd6df3707fba17105cfcc94526d030a89b2adc9b7b0dfa

See more details on using hashes here.

File details

Details for the file orthos-0.1.3-cp39-cp39-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for orthos-0.1.3-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 83709c3cabb9536377c03f9ca2cdb60f79d12053de4d8ad09db6d903e2dc7e53
MD5 ad2fc9a8968e9be0dc6b4783757f2d2f
BLAKE2b-256 1a817258139644571456b90042bafffb91f85fb55d21225d26747f43d85ecbe1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page