A high-performance fundamental package for scientific computing with multi-dimensional arrays, linear algebra, and FFT.
Project description
HeroPy: High-Performance Scientific Computing in Python
HeroPy is the fundamental package for scientific computing with Python, meticulously crafted by the Death Legion Team. It provides a powerful N-dimensional array object, sophisticated mathematical functions, and the core data structures necessary for modern data science and machine learning.
Why HeroPy?
In the evolving landscape of numerical computing, HeroPy stands as a robust foundation for handling large, multi-dimensional arrays and matrices. Designed for performance and ease of use, HeroPy enables complex mathematical operations on entire blocks of data without the need for slow Python loops.
Core Features
- N-Dimensional Array (
ndarray): A versatile, multi-dimensional array object with support for advanced indexing, slicing, and NumPy-style broadcasting. - Linear Algebra (
linalg): High-level mathematical functions for matrix multiplication (dot), transposition, and vector operations. - Fourier Transforms (
fft): Efficient Fast Fourier Transform (FFT) capabilities for signal processing and spectral analysis. - Random Number Generation (
random): Sophisticated random number generation with support for various distributions like Uniform and Normal (Gaussian). - Extensible Architecture: Built to be the bedrock of the Python data science ecosystem, compatible with machine learning and data analysis workflows.
Installation
# Clone the repository
git clone <repo-url>
cd heropy
export PYTHONPATH=$PYTHONPATH:.
Usage
import heropy as hp
from heropy.linalg import dot
# Create arrays
a = hp.ndarray([[1, 2], [3, 4]])
b = hp.ndarray([10, 20])
# Arithmetic with broadcasting
c = a + b
# Matrix multiplication
d = dot(a, a)
# FFT
from heropy.fft import fft
freq = fft([1, 0, 1, 0])
Performance Note
HeroPy is currently implemented in pure Python for maximum portability and clarity. While it provides the core data structures and operations, performance for very large datasets may be limited compared to C-accelerated libraries.
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 Distribution
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 heropy-0.1.0.tar.gz.
File metadata
- Download URL: heropy-0.1.0.tar.gz
- Upload date:
- Size: 7.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c60c5c2adc516ef8c528986e08593104480daa6f800e1f2901e7496599d8adba
|
|
| MD5 |
46dc36d627f56ce53bc7fe874d30acac
|
|
| BLAKE2b-256 |
a89c54806d4a1a6a6ed3110e77c30f2e970bb37cc9e6044c2d9c9dd613c49217
|
File details
Details for the file heropy-0.1.0-py3-none-any.whl.
File metadata
- Download URL: heropy-0.1.0-py3-none-any.whl
- Upload date:
- Size: 6.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6b1fcdb24d4c6c43d2d887ac5a81825bfff99cb582d55b2746e365c7359f0fec
|
|
| MD5 |
caafdde7c0585361d42072c4fa432e19
|
|
| BLAKE2b-256 |
842adbdd59b3aeddd849f4e38aca6eee7ec17a9d48d9cd27ab9626808cb65d0d
|