mirror of
https://github.com/gadgethd/ukmesh.git
synced 2026-09-02 21:24:08 +00:00
49 lines
1.3 KiB
Markdown
49 lines
1.3 KiB
Markdown
# Link Model
|
|
|
|
## Purpose
|
|
|
|
`node_links` represents the physical or physically-rated link graph used by the map and the path resolver.
|
|
|
|
## Evidence layers
|
|
|
|
The model distinguishes between:
|
|
|
|
- physical feasibility
|
|
- terrain
|
|
- path loss
|
|
- LOS tolerance
|
|
- radio-neighbour evidence
|
|
- repeater-reported neighbour quality
|
|
- packet evidence
|
|
- strongest: multibyte path evidence
|
|
- weaker: generic packet observation
|
|
|
|
## Worker ownership
|
|
|
|
The worker computes:
|
|
- terrain profile
|
|
- total path loss
|
|
- viability
|
|
|
|
Relevant files:
|
|
- `viewshed-worker/rf/config.py`
|
|
- `viewshed-worker/rf/loss.py`
|
|
- `viewshed-worker/rf/terrain.py`
|
|
- `viewshed-worker/worker.py` in `WORKER_MODE=link`
|
|
|
|
## Practical tuning knobs
|
|
|
|
- `LINK_LOS_MAX_V`
|
|
- `DEFAULT_USABLE_PATH_LOSS_DB`
|
|
- calibration controls in `rf/config.py`
|
|
- `RF_PREFIX_ENDPOINT_BATCH` and `RF_PREFIX_RAY_BATCH` for bounded CPU/memory tuning
|
|
- frontend display bands in `frontend/src/components/Map/mapConfig.ts`
|
|
|
|
## Contributor rule
|
|
|
|
Do not treat packet observation counts as if they are the same thing as physical feasibility. If a change affects topology definition, make sure the evidence class is explicit.
|
|
|
|
Whole-region RF coverage is a separate HopReach raster pipeline and does not
|
|
consume the link worker's former viewshed polygons. Its capacity evidence,
|
|
source boundary, and rollout gate are in `docs/rf-coverage-rollout.md`.
|