Skip to main content

Domain-agnostic coherence control compiler built on SCPN's Kuramoto/UPDE framework

Project description

SCPN Phase Orchestrator

Domain-agnostic coherence control compiler built on Kuramoto/UPDE phase dynamics.

CI PyPI Docs License: AGPL v3 Python 3.10+

Synchronization Manifold

What It Does

Treats Kuramoto phase dynamics as a universal synchrony state-space. Any hierarchical coupled-cycle system — plasma, cloud infrastructure, traffic, power grids, factories, biology — maps onto the same engine.

Core Pipeline

Domain Binder → Oscillator Extractors (P/I/S) → UPDE Engine → Supervisor → Actuation Mapper

3-Channel Oscillator Model

Channel Source Phase Extraction
Physical (P) Continuous waveforms Hilbert transform, zero-crossing
Informational (I) Event/decision streams Event-phase from message timing
Symbolic (S) Discrete state sequences Ring-phase θ=2πs/N, graph-walk

4 Universal Control Knobs

Knob Meaning
K Coupling strength (Knm matrix)
α Phase lag (transport/actuator delays)
ζ Driver strength (external forcing)
Ψ Reference phase (control target)

Dual Objective

  • R_good: Coherence to maintain (actuator ↔ target phase-lock)
  • R_bad: Coherence to suppress (harmful mode-locking)

Quickstart

pip install -e ".[dev]"

# Validate a domain binding spec
spo validate domainpacks/minimal_domain/binding_spec.yaml

# Run a domain simulation
spo run domainpacks/queuewaves/binding_spec.yaml --steps 1000

# Replay from audit log
spo replay audit.jsonl --output report.json

Platform Support

Platform Python engine Rust FFI (optional)
Linux Full Full
macOS Full Full
Windows Full Experimental (requires MSVC toolchain)

The PyPI package is pure Python. Rust FFI provides optional acceleration and is built from source via maturin develop.

Domainpacks

Pack Domain Purpose
bio_stub Biology Multi-scale biological oscillators (4 layers, 16 oscillators)
cardiac_rhythm Cardiology Gap-junction coupling, arrhythmia (4 layers, 10 oscillators)
chemical_reactor Process control Hopf bifurcation, Semenov limit (4 layers, 10 oscillators)
circadian_biology Chronobiology SCN clock-gene coupled oscillators (4 layers, 10 oscillators)
epidemic_sir Epidemiology Epidemic wave synchronisation (3 layers, 8 oscillators)
firefly_swarm Ecology Flash synchronisation, Mirollo-Strogatz (2 layers, 8 oscillators)
fusion_equilibrium Fusion equilibrium Grad-Shafranov + FusionCoreBridge (6 layers, 12 oscillators)
geometry_walk Graph systems Random-walk phase coupling (2 layers, 8 oscillators)
laser_array Photonics Semiconductor laser phase-locking (3 layers, 8 oscillators)
manufacturing_spc Manufacturing Statistical process control (3 layers, 9 oscillators)
metaphysics_demo P/I/S showcase Imprint + geometry ablation (3 layers, 7 oscillators)
minimal_domain Synthetic Minimal-but-complete pipeline example (2 layers, 4 oscillators)
neuroscience_eeg Neuroscience EEG band->phase, seizure detection (6 layers, 14 oscillators)
plasma_control Tokamak plasma MHD/transport multi-scale control (8 layers, 16 oscillators)
pll_clock Telecommunications PLL network clock synchronisation (3 layers, 8 oscillators)
power_grid Power systems Swing equation = Kuramoto (5 layers, 12 oscillators)
quantum_simulation Quantum computing Qubit register phase coupling (3 layers, 8 oscillators)
queuewaves Cloud/queues Retry storm desynchronisation (3 layers, 6 oscillators)
rotating_machinery Vibration Harmonics, ISO 10816 boundaries (4 layers, 10 oscillators)
swarm_robotics Robotics Vicsek collective motion (3 layers, 8 oscillators)
traffic_flow Transportation Signal coordination = phase sync (4 layers, 10 oscillators)

Adding a Domain

  1. Create domainpacks/<name>/binding_spec.yaml declaring layers, oscillator families, coupling, drivers, objectives, and boundaries.
  2. Optionally add policy.yaml for declarative supervisor rules.
  3. Validate: spo validate domainpacks/<name>/binding_spec.yaml
  4. Run: spo run domainpacks/<name>/binding_spec.yaml --steps 1000

See metaphysics_demo for a full example exercising all three channels, imprint modulation, geometry projection, and policy-driven control. Spec format reference: binding_spec.schema.json.

Development

pip install -e ".[dev]"
ruff check src/ tests/
ruff format --check src/ tests/
pytest tests/ -v --tb=short
mkdocs build

License

AGPL-3.0-or-later. Commercial licensing available — contact protoscience@anulum.li.

Citation

See CITATION.cff.


© 1998–2026 Miroslav Šotek. All rights reserved. Contact: www.anulum.li | protoscience@anulum.li

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

scpn_phase_orchestrator-0.4.1.tar.gz (111.0 kB view details)

Uploaded Source

Built Distribution

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

scpn_phase_orchestrator-0.4.1-py3-none-any.whl (97.3 kB view details)

Uploaded Python 3

File details

Details for the file scpn_phase_orchestrator-0.4.1.tar.gz.

File metadata

  • Download URL: scpn_phase_orchestrator-0.4.1.tar.gz
  • Upload date:
  • Size: 111.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for scpn_phase_orchestrator-0.4.1.tar.gz
Algorithm Hash digest
SHA256 dbd7036355c4779424afc8d45b57b5b2b96269a256392f831ad2b95a634e2357
MD5 991183d9406881e5aa626ca47bcfa369
BLAKE2b-256 eb1d724754850654baab567fd56b063760c37bbf9f9e09639c1487a4f9f23cfe

See more details on using hashes here.

Provenance

The following attestation bundles were made for scpn_phase_orchestrator-0.4.1.tar.gz:

Publisher: publish.yml on anulum/scpn-phase-orchestrator

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file scpn_phase_orchestrator-0.4.1-py3-none-any.whl.

File metadata

File hashes

Hashes for scpn_phase_orchestrator-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 14cbd019295dad4bfb0fa1874df06dcd620fd2f3ebc2773869cbae637e954cc7
MD5 7b1857ebb7cfa8e8bca51aac44105c2c
BLAKE2b-256 33fe67aae463e6faf729e84e393b3e2233b3c1c457fb23e74e964ec63928a861

See more details on using hashes here.

Provenance

The following attestation bundles were made for scpn_phase_orchestrator-0.4.1-py3-none-any.whl:

Publisher: publish.yml on anulum/scpn-phase-orchestrator

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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