How rafm1101/phoibe works
Phoibe is a Python toolkit for data-science workflows. Its clearest end-to-end use case is terrain and wind-transferability assessment: a caller supplies terrain and locations, the RIX pipeline checks inputs, computes ruggedness and optional TRIX results, then publishes artifacts. Other documented capabilities include layered machine-data profiling and validation, raster reprojection and visualization, and synthetic data generation. The RIX composition root and several validation relationships are visible in excerpts or the source index; other capability links rely on the README, so unsampled internal flow is not inferred.
Main entry points: analyzer.py TRIX Analyzer · main.py Composition Root · factory.py Validation Factory · validator.py Layer Validator
Components 33
Terrain Assessment
- CLI
phoibe/geography/complexity/rix/entrypoints/cli.py - Composition Root
phoibe/geography/complexity/rix/main.py - Input Readers
phoibe/geography/complexity/rix/adapters - Product Specification
phoibe/geography/complexity/rix/pipelines/product/specification.py - TRIX Analyzer
phoibe/geography/complexity/rix/pipelines/analyzer.py - Input Checks
phoibe/geography/complexity/rix/pipelines/checks - Field Sampling
phoibe/geography/complexity/rix/computations/fieldsampler.py - Terrain Profiles
phoibe/geography/complexity/rix/computations/profiles.py - RIX Evaluation
phoibe/geography/complexity/rix/computations/results.py - TRIX Computation
phoibe/geography/complexity/rix/computations/trix.py - Result Tables
phoibe/geography/complexity/rix/pipelines/results/tables.py - Publishing Contract
phoibe/geography/complexity/rix/pipelines/publishing - Artifact Writer
phoibe/geography/complexity/rix/adapters/writer.py - Result Summary
phoibe/geography/complexity/rix/pipelines/results/result_summary.py
Layered Validation
- Machine Data
phoibe/layered/infrastructure/io.py - Validation Factory
phoibe/layered/application/factory.py - Rule Registry
phoibe/layered/application/registry.py - Layer Validator
phoibe/layered/application/validator.py - Validation Context
phoibe/layered/application/context.py - Validation Rules
phoibe/layered/rules/rule.py - Time-Series Rules
phoibe/layered/rules/rules_index.py - Reports and Results
phoibe/layered/core/entities.py - Report Export
phoibe/layered/infrastructure/export.py - Validation Logging
phoibe/layered/logging/logging.py
Geographic Tools
- Raster Reprojection
phoibe/geography/crs/reproject.py - Raster Visualization
phoibe/geography/plot/raster.py - Landmark Plotting
phoibe/geography/plot/landmarks.py
Synthetic Data
- Synthetic Fields
phoibe/synthetic_data/fields.py - Sample Sites
phoibe/synthetic_data/sites.py - Synthetic Turbine Data
phoibe/synthetic_data/turbine.py - SCADA Noise
phoibe/synthetic_data/_turbine_noise.py - SCADA Timeseries
phoibe/synthetic_data/_turbine_scada.py
Other components
- Caller
Connections 35
- Caller → CLI: invokes
- Caller → Composition Root: configures
phoibe/geography/complexity/rix/main.py - CLI → Composition Root: dispatches
phoibe/geography/complexity/rix/main.py - Composition Root → TRIX Analyzer: builds
phoibe/geography/complexity/rix/main.py - Composition Root → Input Readers: reads inputs
phoibe/geography/complexity/rix/main.py - Composition Root → Product Specification: configures
phoibe/geography/complexity/rix/main.py - Composition Root → Artifact Writer: supplies writer
phoibe/geography/complexity/rix/main.py - TRIX Analyzer → Input Checks: checks inputs
phoibe/geography/complexity/rix/pipelines/analyzer.py - TRIX Analyzer → Field Sampling: samples field
phoibe/geography/complexity/rix/pipelines/analyzer.py - TRIX Analyzer → RIX Evaluation: computes RIX
phoibe/geography/complexity/rix/pipelines/analyzer.py - TRIX Analyzer → TRIX Computation: computes TRIX
phoibe/geography/complexity/rix/pipelines/analyzer.py - TRIX Analyzer → Result Tables: builds tables
phoibe/geography/complexity/rix/pipelines/analyzer.py - Terrain Profiles → Field Sampling: samples profiles
phoibe/geography/complexity/rix/computations/profiles.py - RIX Evaluation → Terrain Profiles: evaluates profiles
phoibe/geography/complexity/rix/computations/results.py - TRIX Analyzer → Publishing Contract: publishes results
phoibe/geography/complexity/rix/pipelines/analyzer.py - TRIX Analyzer → Artifact Writer: writes artifacts
phoibe/geography/complexity/rix/pipelines/analyzer.py - Artifact Writer → Result Summary: returns summary
phoibe/geography/complexity/rix/adapters/writer.py - Machine Data → Validation Factory: provides data
README.md - Validation Factory → Rule Registry: uses registry
phoibe/layered/application/factory.py - Validation Factory → Layer Validator: uses validator
phoibe/layered/application/factory.py - Validation Factory → Reports and Results: creates entities
phoibe/layered/application/factory.py - Layer Validator → Validation Context: builds context
phoibe/layered/application/validator.py - Layer Validator → Validation Rules: executes rules
phoibe/layered/application/validator.py - Rule Registry → Validation Rules: registers rules
phoibe/layered/application/registry.py - Time-Series Rules → Validation Rules: extends base
phoibe/layered/rules/rules_index.py - Layer Validator → Reports and Results: produces reports
phoibe/layered/application/validator.py - Report Export → Reports and Results: exports reports
phoibe/layered/infrastructure/export.py - Raster Reprojection → Caller: reprojects rasters
README.md - Caller → Raster Visualization: visualizes data
README.md - Caller → Landmark Plotting: plots landmarks
README.md - Caller → Synthetic Fields: generates fields
README.md - Caller → Sample Sites: generates points
README.md - Caller → Synthetic Turbine Data: generates timeseries
README.md - Synthetic Turbine Data → SCADA Noise: uses noise
phoibe/synthetic_data/turbine.py - Synthetic Turbine Data → SCADA Timeseries: uses generator
phoibe/synthetic_data/turbine.py