A dynamic Python math library containing numerous mathematical functions implemented from scratch.
Project description
AxiomX
A lightweight, pure-Python mathematical engine with an interactive graphing system.
Description
AxiomX is a custom-built mathematics library designed to explore and implement core mathematical concepts from first principles — without relying on heavy external libraries like NumPy or Matplotlib.
It provides tools for:
- Fundamental mathematics
- Calculus operations
- Matrix manipulation
- Interactive graph plotting
Features
Core Mathematics
- Trigonometric functions (sin, cos, tan and their reciprocals) and their inverses.
- Hyperbolic functions (sinh, cosh, tanh and their reciprocals) and their inverses.
- Exponential and Logarithmic functions.
- Custom implementations (no external math engines).
Calculus
- Integration
- Summation
- Convergence detection
Constants
- π (pi)
- e (Euler's number)
- Square Roots of 2, 3 and 5
- Golden ratio, Silver ratio
- Metallic ratios
- Bernoulli numbers
- Stieltjes numbers
Find the Easter egg in AxiomX!
Matrix operations
- Matrix addition, subtraction, multiplication and division.
- Matrix inverse, rank and determinant.
Graphing
AxiomX is now having an advanced graphing system in AxiomX.graph. It now supports the following:
- Plotting multiple functions (without list)
- Improved anti-aliasing
- Supports resetting the zoom level
- Supports exporting graph in high resolution (using
PIL) - Dynamic grid, axis and graph lines
Installation
You can install it via PIP:
pip install AxiomX
Or install it using the wheel file in the downloads section.
Quick Start
Basic Usage
import AxiomX.trig as t
import AxiomX.constants as c
print(t.sin(c.pi / 2)) # prints 1.0
print(t.cos(c.pi)) # prints -1.0
Plot a Graph
from AxiomX.graph import plot
plot(lambda x:x**3) # plots graph of x³
Plot multiple functions in one graph
from AxiomX.graph import plot
from AxiomX.trig import *
plot(lambda x: sin(x)**2, lambda y: cos(y)**2, lambda z: 1) # explanation for sin²x + cos²x = 1
Graph Controls
- Arrow keys - panning around the graph
- Page Up - Zoom out
- Page Down - Zoom in
- Spacebar - reset zoom to 100%
Project Structure:
AxiomX/
│
├── calculus.py # Differentiation, integration
├── constants.py # Mathematical constants
├── exp.py # Exponentials and logs
├── functions.py # General math utilities
├── graph.py # Interactive graphing engine
├── hyperbolic.py # Hyperbolic functions
├── matrix.py # Matrix operations
├── sqrt_2.py # √2 expansion (special module)
├── trig.py # Trigonometric functions
└── __init__.py
Note
This library is designed for mathematical and educational purposes. It is NOT intended to replace high-performance libraries like NumPy or SciPy.
Version
0.1.41421 (that's √2!)
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 axiomx-0.1.41421.tar.gz.
File metadata
- Download URL: axiomx-0.1.41421.tar.gz
- Upload date:
- Size: 14.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
795299ebe268f3c333baaa3a3e5ecdcd1e4b8cd3f780dd96d5212d13e48d926b
|
|
| MD5 |
e9209ab1771f48f656561b40c043960a
|
|
| BLAKE2b-256 |
9908d39fb5ff2332485762ab8edff3dbb248a1f06b512a6c5540f1d364bcee94
|
File details
Details for the file axiomx-0.1.41421-py3-none-any.whl.
File metadata
- Download URL: axiomx-0.1.41421-py3-none-any.whl
- Upload date:
- Size: 16.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
947f4181d48004f29d5168bfa74ee6e609528e5fbbb062e366f4ac7cd3ae8b45
|
|
| MD5 |
399b54bc59b99d711bd106ea315a0fa7
|
|
| BLAKE2b-256 |
4d291fe9fc7581acf7ea08cae5c8cebcb6642f4116a1a59bd0a2dcc8a741dbd6
|