TREEMOR: Bio-Seismic Sensing & Planetary Infrasound Resonance
Project description
๐ฒ TREEMOR
Bio-Seismic Sensing & Planetary Infrasound Resonance
"When forests become Earth's sentinels, conservation becomes infrastructure."
โ Transforming 3 trillion trees into a planetary-scale seismic monitoring network
๐ฏ Overview
TREEMOR (TREe-based Earth MOtion Resonance) is a revolutionary nine-parameter biomechanical seismology framework that transforms the world's forests into a distributed seismic and infrasound monitoring network. Unlike conventional seismometers that measure ground motion at discrete points, TREEMOR leverages the inherent mechanical sensitivity of living trees as natural vibration sensors.
Key Capabilities
- ๐ Global Coverage: Utilizes 3.04 trillion trees across 4.06 billion hectares (31% of Earth's land)
- ๐ก Real-Time Detection: 91.7% accuracy for Mโฅ3.5 earthquakes within 200 km radius
- โก Early Warning: 8-15 seconds P-wave lead time before destructive S-waves
- ๐ Dual-Mode Sensing: Simultaneous seismic + atmospheric infrasound detection
- ๐ฐ Cost-Effective: 160ร cheaper than traditional seismometer networks
- ๐ฌ Open Science: Fully open-source code, data, and methodology
๐ Quick Start
Installation
# Install from PyPI
pip install treemor
# Or install from source
git clone https://gitlab.com/gitdeeper9/treemor.git
cd treemor
pip install -e .
Basic Usage
import treemor as tm
from treemor import ForestSeismicNetwork
# Initialize a tree sensor
tree = tm.TreeSensor(
species="Pseudotsuga menziesii", # Douglas fir
height=52.0, # meters
dbh=1.2, # diameter at breast height (m)
soil_type="bedrock", # coupling conditions
location=(47.6062, -122.1918387821) # lat, lon
)
# Calculate FSIN parameters
fsin = tree.calculate_fsin()
print(f"Resonance Frequency: {fsin.f0:.2f} Hz")
print(f"Coupling Coefficient: {fsin.xi:.3f}")
print(f"TSSI Score: {tree.tssi:.2f}")
# Real-time seismic monitoring
network = ForestSeismicNetwork()
network.add_sensor(tree)
network.start_monitoring(callback=alert_handler)
๐ The Nine-Parameter FSIN Framework
TREEMOR integrates nine governing biomechanical parameters into the Forest Seismic Intelligence Nonet (FSIN):
| # | Parameter | Symbol | Description | Typical Range |
|---|---|---|---|---|
| 1 | Resonance Frequency | fโ | Natural vibration frequency | 0.3-2.5 Hz |
| 2 | Seismic Coupling | ฮพ | Energy transfer efficiency (soilโtree) | 0.4-0.95 |
| 3 | Damping Ratio | ฮถ | Biological energy dissipation | 0.05-0.15 |
| 4 | Infrasonic Cross-Section | ฯ_inf | Atmospheric pressure wave detector area | 30-80 mยฒ |
| 5 | Sap Pressure Oscillation | ฮP_sap | Hydraulic response to mechanical stress | 100-500 kPa |
| 6 | Bending Stiffness | EI | Structural rigidity parameter | 10โธ-10ยนโฐ Nยทmยฒ |
| 7 | Root-Soil Impedance | Z_RS | Acoustic coupling at underground interface | 0.8-8.0 MPaยทs/m |
| 8 | Atmospheric Decoupling | ADI | Seismic vs. wind signal discrimination | 0.1-100 |
| 9 | Bio-Seismic Lead Time | ฯ_lead | P-wave to S-wave warning interval | 4-15 seconds |
Composite Metric
$$ \text{TSSI} = \sum_{i=1}^{9} w_i \cdot \text{FSIN}_i^* $$
Tree Seismic Sensitivity Index (TSSI): 0-1 scale quantifying overall detection capability
- TSSI > 0.8: Exceptional sensor (bedrock anchoring, optimal resonance)
- TSSI 0.6-0.8: Good sensor
- TSSI 0.3-0.6: Moderate sensor
- TSSI < 0.3: Poor sensor
๐ฌ Scientific Validation
Test Sites
| Site | Location | Trees | Period | Events | Key Results |
|---|---|---|---|---|---|
| PNSN | Cascade Range, WA, USA | 47 | 2019-2024 | 312 | M6.8 Vancouver Island detection |
| SAFOD | Parkfield, CA, USA | 34 | 2016-2024 | 428 | Microseismicity (M<2.0) monitoring |
| JMA | Mount Ontake, Japan | 43 | 2015-2024 | 107 | M7.6 Noto Peninsula + volcanic infrasound |
Performance Metrics
Detection Accuracy (Mโฅ3.5, ฮ<200km): 91.7%
False Alarm Rate: 1.8%
P-wave Arrival Agreement: ยฑ0.2 seconds
PGA Correlation with Seismometers: rยฒ = 0.94
Cost Reduction vs. Traditional: 160ร
Major Case Studies
- โ 2024 Vancouver Island M6.8: 12.3s lead time, back-azimuth error <3ยฐ
- โ 2024 Noto Peninsula M7.6: Detected at 380 km distance, ฯ_lead = 12.3s
- โ 2014 Mount Ontake Eruption: Infrasound detection + 18-24h precursors
๐๏ธ Project Structure
treemor/
โโโ README.md # This file
โโโ LICENSE # MIT License
โโโ setup.py # Package installation
โโโ requirements.txt # Python dependencies
โ
โโโ treemor/ # Main Python package
โ โโโ __init__.py
โ โโโ core/ # Core algorithms
โ โ โโโ fsin.py # FSIN parameter calculations
โ โ โโโ resonance.py # Cantilever beam dynamics
โ โ โโโ coupling.py # Root-soil impedance matching
โ โ โโโ damping.py # Viscoelastic energy dissipation
โ โ โโโ tssi.py # Composite sensitivity index
โ โ
โ โโโ sensors/ # Tree sensor models
โ โ โโโ tree_sensor.py # Individual tree instrumentation
โ โ โโโ accelerometer.py # MEMS sensor interface
โ โ โโโ fiber_optic.py # DAS strain sensing
โ โ โโโ satellite.py # InSAR canopy displacement
โ โ
โ โโโ network/ # Distributed monitoring
โ โ โโโ forest_network.py # Multi-tree array management
โ โ โโโ consensus.py # Distributed event detection
โ โ โโโ localization.py # Epicenter triangulation
โ โ โโโ telemetry.py # Real-time data streaming
โ โ
โ โโโ signal/ # Signal processing
โ โ โโโ filtering.py # Bandpass, ADI wind rejection
โ โ โโโ waveforms.py # P-wave, S-wave extraction
โ โ โโโ spectral.py # FFT, power spectral density
โ โ โโโ infrasound.py # Atmospheric pressure waves
โ โ
โ โโโ ml/ # Machine learning
โ โ โโโ classifiers.py # Earthquake vs. explosion vs. wind
โ โ โโโ precursors.py # Deep learning precursor detection
โ โ โโโ augmentation.py # Training data synthesis
โ โ โโโ transfer_learning.py # Species/site adaptation
โ โ
โ โโโ species/ # Tree species database
โ โ โโโ conifers.py # Evergreen species (Douglas fir, cedar)
โ โ โโโ deciduous.py # Seasonal species (oak, maple)
โ โ โโโ tropical.py # Rainforest species
โ โ โโโ biomechanics.json # Elastic moduli, densities
โ โ
โ โโโ geology/ # Site characterization
โ โ โโโ soil_types.py # Impedance lookup tables
โ โ โโโ seismic_velocity.py # V_s, V_p models
โ โ โโโ site_amplification.py # Local geology effects
โ โ
โ โโโ utils/ # Utilities
โ โโโ coordinates.py # Geodetic transformations
โ โโโ time_sync.py # GPS/NTP synchronization
โ โโโ validation.py # Data quality checks
โ โโโ visualization.py # Plotting, dashboards
โ
โโโ data/ # Validation datasets
โ โโโ catalogues/ # Earthquake event lists
โ โ โโโ pnsn_2019_2024.hdf5
โ โ โโโ safod_2016_2024.hdf5
โ โ โโโ jma_2015_2024.hdf5
โ โ
โ โโโ waveforms/ # Time series recordings
โ โ โโโ tree_accelerations/
โ โ โโโ reference_seismograms/
โ โ โโโ infrasound_traces/
โ โ
โ โโโ parameters/ # FSIN characterization
โ โ โโโ site1_fsin.nc # NetCDF4 format
โ โ โโโ site2_fsin.nc
โ โ โโโ site3_fsin.nc
โ โ
โ โโโ metadata/ # Site information
โ โโโ tree_inventory.csv
โ โโโ soil_properties.json
โ โโโ instrumentation.yaml
โ
โโโ notebooks/ # Jupyter analysis
โ โโโ 01_fsin_calculation.ipynb
โ โโโ 02_resonance_validation.ipynb
โ โโโ 03_coupling_analysis.ipynb
โ โโโ 04_event_detection.ipynb
โ โโโ 05_machine_learning.ipynb
โ โโโ 06_case_studies.ipynb
โ โโโ 07_deployment_planning.ipynb
โ
โโโ scripts/ # Command-line tools
โ โโโ deploy_sensor.py # Field installation workflow
โ โโโ calibrate_tree.py # FSIN characterization
โ โโโ monitor_network.py # Real-time operations
โ โโโ process_events.py # Batch waveform analysis
โ โโโ generate_reports.py # Automated documentation
โ
โโโ tests/ # Unit tests
โ โโโ test_fsin.py
โ โโโ test_resonance.py
โ โโโ test_coupling.py
โ โโโ test_detection.py
โ โโโ test_network.py
โ
โโโ docs/ # Documentation
โ โโโ api/ # API reference
โ โโโ tutorials/ # Step-by-step guides
โ โโโ theory/ # Mathematical derivations
โ โโโ deployment/ # Field operations manual
โ โโโ publications/ # Papers, presentations
โ โโโ treemor_paper.pdf
โ
โโโ web/ # Web dashboard (Netlify)
โ โโโ index.html # Landing page
โ โโโ dashboard.html # Real-time monitoring
โ โโโ events.html # Historical catalogue
โ โโโ css/
โ โโโ js/
โ โโโ data/ # GeoJSON, live feeds
โ
โโโ docker/ # Containerization
โโโ Dockerfile
โโโ docker-compose.yml
โโโ config/
๐ Use Cases & Applications
1. Earthquake Early Warning Systems
- Problem: Existing EEW systems face trade-off between warning time and false alarms
- Solution: Dense tree networks achieve consensus detection (99.2% reliability, 0.4% false alarms)
- Impact: 8-15 seconds lead time for critical infrastructure shutdown (trains, elevators, gas valves)
2. Volcanic Monitoring
- Problem: Limited infrasound detector coverage in remote volcanic regions
- Solution: Trees function as 30-80 mยฒ atmospheric pressure wave detectors
- Impact: Detected Mount Ontake eruption 35-45 seconds post-explosion, identified 18-24h precursors
3. Nuclear Test Verification
- Problem: Discriminating underground explosions from natural earthquakes
- Solution: Combined seismic + infrasound signatures, SVM classifier (94.8% accuracy)
- Impact: Supports Comprehensive Nuclear-Test-Ban Treaty (CTBTO) monitoring
4. Developing Nation Deployment
- Problem: $50M cost barrier for regional seismometer network (200 stations)
- Solution: $10M deploys 31,746 tree sensors (equivalent coverage)
- Impact: Enables monitoring in Indonesia, Philippines, Central America, Himalayas
๐ก Real-Time Data Access
Live Dashboard
Visit treemor.netlify.app/dashboard for:
- ๐บ๏ธ Interactive map of active tree sensors
- ๐ Real-time TSSI values and network health
- โก Live earthquake detections with waveforms
- ๐ Historical event catalogue and statistics
API Access
import treemor.api as api
# Fetch latest events
events = api.get_events(
min_magnitude=3.5,
max_distance=200, # km
hours=24
)
# Stream real-time detections
for detection in api.stream_detections():
print(f"Event: M{detection.magnitude} @ {detection.time}")
print(f"Trees triggered: {len(detection.sensors)}")
๐ง Advanced Configuration
Custom Species Calibration
from treemor.species import CustomSpecies
# Define new species not in database
my_species = CustomSpecies(
name="Quercus suber", # Cork oak
elastic_modulus=9.5e9, # Pa
density=850, # kg/mยณ
typical_height_range=(8, 20), # meters
typical_dbh_range=(0.3, 1.0) # meters
)
tree = tm.TreeSensor(species=my_species, ...)
Multi-Site Network Deployment
from treemor.network import RegionalNetwork
# Create hierarchical network
cascadia = RegionalNetwork(name="Cascadia Subduction Zone")
# Add sub-networks
cascadia.add_site("Olympic Peninsula", trees=78)
cascadia.add_site("Cascade Range", trees=124)
cascadia.add_site("Coast Range", trees=56)
# Configure consensus detection
cascadia.set_consensus_threshold(
min_sensors=3, # Require 3+ trees
max_time_window=2.0, # Within 2 seconds
min_tssi=0.6 # Only high-quality sensors
)
๐ Publications & Citations
Primary Reference
Baladi, S. (2026). TREEMOR: Bio-Seismic Sensing & Planetary Infrasound Resonance โ A Nine-Parameter Forest-Based Seismological Framework for Real-Time Earthquake Detection. Seismological Research Letters. DOI: 10.5281/zenodo.19183878
BibTeX
@article{baladi2026treemor,
title={TREEMOR: Bio-Seismic Sensing \& Planetary Infrasound Resonance},
author={Baladi, Samir},
journal={Seismological Research Letters},
year={2026},
doi={10.5281/zenodo.19183878},
url={https://treemor.netlify.app}
}
Related Work
- Baladi, S. (2024). HELIOSICA: Solar Plasma Intelligence & Geomagnetic Flux Mapping. [10.5281/zenodo.19042948]
- Baladi, S. (2024). INFRAS-CLOUD: Atmospheric Infrasound Monitoring Framework. [10.5281/zenodo.18952438]
- Baladi, S. (2024). LITHO-SONIC: Poro-Elastic Geomechanical Monitoring. [10.5281/zenodo.18931304]
๐ค Contributing
We welcome contributions from seismologists, foresters, engineers, and citizen scientists!
Areas for Contribution
- ๐ฒ Species Database: Add biomechanical parameters for new tree species
- ๐บ๏ธ Test Sites: Deploy sensors in new geographic regions
- ๐ง Machine Learning: Improve earthquake/wind/explosion classifiers
- ๐ก Instrumentation: Develop low-cost sensor hardware
- ๐ Visualization: Enhance web dashboard and real-time displays
- ๐ Documentation: Tutorials, translations, case studies
Development Workflow
# Fork repository
git clone https://gitlab.com/YOUR_USERNAME/treemor.git
cd treemor
# Create feature branch
git checkout -b feature/amazing-improvement
# Install development dependencies
pip install -e ".[dev]"
# Run tests
pytest tests/
# Submit merge request
git push origin feature/amazing-improvement
๐ Contact & Support
- ๐ง Email: gitdeeper@gmail.com
- ๐ ORCID: 0009-0003-8903-0029
- ๐ Issues: GitLab Issues
- ๐ฌ Discussions: GitLab Discussions
- ๐ Website: treemor.netlify.app
๐ License
This project is licensed under the MIT License - see LICENSE file for details.
MIT License
Copyright (c) 2026 Samir Baladi
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
๐ Acknowledgments
Data Sources
- PNSN (Pacific Northwest Seismic Network)
- USGS Northern California Seismic Network
- JMA (Japan Meteorological Agency)
- ESA Sentinel-1 SAR imagery
- UNAVCO GPS geodetic data
Field Sites
- US Forest Service (Gifford Pinchot National Forest)
- California State Parks (Parkfield region)
- Japan Forestry Agency (Mount Ontake)
Independent Research
This work was conducted independently through the Ronin Institute / Rite of Renaissance framework for scholar-driven science. No external funding was received.
๐ Roadmap
Version 1.0 (Current) โ
- Core FSIN algorithms
- 847-event validation catalogue
- Python package (PyPI)
- Web dashboard
- Documentation
Version 1.5 (Q2 2026)
- Satellite InSAR integration
- Mobile app (iOS/Android)
- Tropical species database expansion
- Real-time ML precursor detection
Version 2.0 (Q4 2026)
- Global deployment planning tool
- Fiber-optic DAS integration
- Multi-hazard monitoring (landslides, avalanches)
- International network partnerships
๐ Statistics
Total Trees Monitored: 124 (3 sites)
Earthquakes Analyzed: 847 (M0.5-M7.8)
Validation Period: 2010-2025
Detection Accuracy (Mโฅ3.5): 91.7%
Cost Reduction vs Traditional: 160ร
GitHub Stars: โญ (Be the first!)
๐ฒ TREEMOR
When forests become Earth's sentinels, conservation becomes infrastructure.
Transforming 3.04 trillion trees into a planetary-scale seismic monitoring network
Website โข Documentation โข Dashboard โข Paper
Built with ๐ by Samir Baladi | Ronin Institute 2026
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 treemor-1.0.0.tar.gz.
File metadata
- Download URL: treemor-1.0.0.tar.gz
- Upload date:
- Size: 41.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: TREEMOR-Uploader/1.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f531b06a545d73200911cbd5afc4ee9173ec501469af042cbf08a8c371b893fb
|
|
| MD5 |
2e4dd8d3eef8532e632a206067eeee4b
|
|
| BLAKE2b-256 |
acaee7c6ba4802d178ce0cbb8392b932920f467cbd87746af1fd3f4be33cb947
|
File details
Details for the file treemor-1.0.0-py3-none-any.whl.
File metadata
- Download URL: treemor-1.0.0-py3-none-any.whl
- Upload date:
- Size: 29.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: TREEMOR-Uploader/1.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4de5af1e14fafb522b19639a182c89168433a93d851a6d33471028e3fcdcb20b
|
|
| MD5 |
acb18a16d3fc59e187cdf31051d0e48b
|
|
| BLAKE2b-256 |
d8efb99353caf6b0f3997733e1020284f76464988cce2782324a62b0951523af
|