PhysOx
PhysOx — A physics framework for voxelized space-time.
Built to work alongside UVoxID (universal voxel addressing) and tDt (time delta toolkit).
PhysOx provides general-purpose physics utilities expressed in terms of discrete voxel space (1 µm³) and ticks (time steps).
This makes it possible to simulate mechanics, dynamics, and interactions consistently across scales.
✨ Features
- Kinematics — displacement, velocity, conversions between voxels/ticks and meters/seconds.
- Dynamics — forces, acceleration, Newton’s laws in voxel units.
- Momentum & Impulse — linear momentum, collisions, impulse transfer.
- Energy — kinetic, gravitational, thermal, unit conversions (J ↔ eV).
- Gravity — gravitational force, potential, fields.
- Electromagnetism — Coulomb’s law, electric fields, electrostatic potential.
- Thermodynamics — pressure, ideal gas law, energy per voxel.
- Waves — frequency, wavelength, velocity, energy relations.
- Rotational Dynamics — angular velocity, torque, moment of inertia.
- Collision Utilities — elastic/inelastic collision solvers (2D/3D).
📦 Installation
pip install physox
🔍 Example
from physox.kinematics import displacement_voxels, to_meters
from physox.constants import VOXEL_SIZE_M
# Object with initial velocity 10 voxels/tick, accel = 1 voxel/tick², time = 5 ticks
d_vox = displacement_voxels(v0=10, a=1, t_ticks=5)
d_m = to_meters(d_vox)
print(f"Displacement: {d_vox} voxels ({d_m:.6f} m)")
Output:
Displacement: 62.5 voxels (0.000063 m)
🧪 Testing
Run the test suite with:
pytest -v
All physics modules are covered with unit tests for correctness.
📖 Roadmap
- Integrate with UVoxID (spatial indexing).
- Integrate with tDt (time deltas).
- Add probabilistic/tolerance layer for quantum-scale behavior.
- GPU/Rust backends for large-scale simulations.
📜 License
Apache 2.0 — free to use, modify, and distribute.
Metadata
Release files for physox 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| physox-0.1.0.tar.gz | 23.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| physox-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 44.3 kB
Release files / physox-0.1.0.tar.gz
| Download URL | physox-0.1.0.tar.gz |
|---|---|
| Size | 23.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2eef377cf72cd226616f4d66b7f8daba417a916d4b6ac0aef2bb0b86cb347318
|
|
BLAKE2b-256 checksum How to use checksums |
a1dbfb1ee1c211944edf5e547c9c9e8a946867dc2fdb6f51d3362a64d3556d90
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.3
|
Release files / physox-0.1.0-py3-none-any.whl
| Download URL | physox-0.1.0-py3-none-any.whl |
|---|---|
| Size | 20.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
457d4dcc29645ef00ed168a44c33f8757e4c39ebbf2b5e608f4297d455af979f
|
|
BLAKE2b-256 checksum How to use checksums |
246eef45a3c309fe8e38721251e367758687677cf4eac21cb0dffc470112df61
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.3
|