Skip to main content

Python simulation framework for mycorrhizal network biophysics with Freiman-Villani thermodynamic analysis

Project description

MycoNet

Python simulation framework for mycorrhizal network biophysics with Freiman–Villani thermodynamic analysis.

Python License: MIT arXiv


Overview

MycoNet implements the simulation and computational validation described in:

Mercier des Rochettes, B. (2026). MycoNet: A Python Framework for Mycorrhizal Network Biophysics. arXiv:2026.XXXXX [q-bio.QM]

Companion theory paper:

Mercier des Rochettes, B. (2026). Geometric Efficiency Bounds for Mycorrhizal Networks: A Freiman–Villani Framework. Journal of Mathematical Biology. arXiv:2026.YYYYY

The central result (Theorem 6.1): a mycorrhizal network with local Freiman index σ_r(Γ) satisfies

Ψ(Γ) ≥ C* · D / ε² · (σ_r(Γ) − K_hex)²

where K_hex = 19/7 ≈ 2.714, C* ≈ 21.8, ε is mean hyphal spacing, D is diffusivity. Networks forced by stress into irregular morphologies pay an explicit thermodynamic overhead.


Installation

pip install myconet

From source:

git clone https://github.com/[handle]/myconet
cd myconet
pip install -e ".[dev]"

Quick start

from myconet import MycoNetSimulation

sim     = MycoNetSimulation(seed=42)
results = sim.run(T=120, drought_onset=48)
results.summary()
results.plot()

Reproducing the paper

# Single run (~2 min)
python examples/drought_stress.py

# 10-run ensemble, matches paper figures (~20 min)
python examples/drought_stress.py --ensemble --save fig1.png

# Unit tests (all 10, < 2 s)
pytest tests/ -v

Key algorithms

Module Content
myconet.freiman Local Freiman index via k-NN + hex-integer FFT Minkowski sum
myconet.network HyphalNetwork, hexagonal lattice generation, drift field
myconet.transport Fokker–Planck solver, Wasserstein W₂ (Sinkhorn/POT), Fisher info
myconet.simulation MycoNetSimulation, SimulationParams, ensemble runner

Theoretical constants (all exact):

Constant Value Source
K_HEX 19/7 ≈ 2.714 Lemma 4.1: hexagonal local doubling constant
C_STAR 256·49/576 ≈ 21.8 Theorem 6.1: dissipation bound constant
c0 7/24 ≈ 0.292 Proposition 4.4: Freiman–Wasserstein constant

Citation

@software{myconet2026,
  author  = {Mercier des Rochettes, Bertrand},
  title   = {{MycoNet}: Python simulation framework for mycorrhizal network biophysics},
  year    = {2026},
  url     = {https://github.com/[handle]/myconet},
  version = {1.0.0}
}

@article{mercier2026methods,
  author  = {Mercier des Rochettes, Bertrand},
  title   = {{MycoNet}: A Python Framework for Mycorrhizal Network Biophysics},
  journal = {arXiv},
  year    = {2026},
  note    = {arXiv:2026.XXXXX [q-bio.QM]}
}

License

MIT © 2026 Bertrand Mercier des Rochettes / Quantum Proteins AI

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

myconet-1.0.0.tar.gz (3.7 kB view details)

Uploaded Source

Built Distribution

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

myconet-1.0.0-py3-none-any.whl (3.2 kB view details)

Uploaded Python 3

File details

Details for the file myconet-1.0.0.tar.gz.

File metadata

  • Download URL: myconet-1.0.0.tar.gz
  • Upload date:
  • Size: 3.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.4

File hashes

Hashes for myconet-1.0.0.tar.gz
Algorithm Hash digest
SHA256 5d45abb8e63202ab38f86befbe0ca9dd06cc97ea1d0aca80e502cb96cb19313b
MD5 a7f82a2c03884fa1d8bd4cc64bfe799b
BLAKE2b-256 028eff750ba1b3214113866158635f378a11393ffbfb55928cc31132a86d1db1

See more details on using hashes here.

File details

Details for the file myconet-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: myconet-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 3.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.4

File hashes

Hashes for myconet-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b1e10ff3f258eeae50a802f6ba9119abce1c18bce24152e6df1a3007e1a14203
MD5 fb947f95bac5076a1d4f42a7d0a3680e
BLAKE2b-256 b7e67f8075d3dbec379ca6ccd6e7bc7c802cbe17c9fe1537a8ee376459b7f8ff

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