Coverage Predictions: Difference between revisions
(Abort Calc, Automatic Update) |
(prop models (not finished)) |
||
| Line 1: | Line 1: | ||
== Calculate Coverage == | |||
Coverage calculations are controlled by the interface IRadioCoverage in [http://codedocs.maria.teleplanglobe.com/develop_gdk5/managed/class_t_p_g_1_1_g_d_k_1_1_maria_1_1_radio_plan_layer_1_1_radio_coverage.html IMariaRadioPlanLayer.RadioCoverage] | Coverage calculations are controlled by the interface IRadioCoverage in [http://codedocs.maria.teleplanglobe.com/develop_gdk5/managed/class_t_p_g_1_1_g_d_k_1_1_maria_1_1_radio_plan_layer_1_1_radio_coverage.html IMariaRadioPlanLayer.RadioCoverage] | ||
| Line 55: | Line 55: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
=== Abort Coverage Calculations === | |||
Coverage calculations can be aborted for a specific job by [http://codedocs.maria.teleplanglobe.com/develop_gdk5/managed/class_t_p_g_1_1_g_d_k_1_1_maria_1_1_radio_plan_layer_1_1_radio_coverage.html#a9ea720cd6b769104d4a253261395541f RequestAbortCoverageDataJob(jobId)], | Coverage calculations can be aborted for a specific job by [http://codedocs.maria.teleplanglobe.com/develop_gdk5/managed/class_t_p_g_1_1_g_d_k_1_1_maria_1_1_radio_plan_layer_1_1_radio_coverage.html#a9ea720cd6b769104d4a253261395541f RequestAbortCoverageDataJob(jobId)], | ||
or as a general abort request by [http://codedocs.maria.teleplanglobe.com/develop_gdk5/managed/class_t_p_g_1_1_g_d_k_1_1_maria_1_1_radio_plan_layer_1_1_radio_coverage.html#af19d26f567e81ac2930059be18eb5e1a RequestAbortCalculationJobsAsync()] | or as a general abort request by [http://codedocs.maria.teleplanglobe.com/develop_gdk5/managed/class_t_p_g_1_1_g_d_k_1_1_maria_1_1_radio_plan_layer_1_1_radio_coverage.html#af19d26f567e81ac2930059be18eb5e1a RequestAbortCalculationJobsAsync()] | ||
=== Automatic Update === | |||
Changes to the Site or the Radio may invalidate the coverage data. This will apply to changes like: | Changes to the Site or the Radio may invalidate the coverage data. This will apply to changes like: | ||
| Line 81: | Line 81: | ||
* Antenna Direction | * Antenna Direction | ||
* Antenna Tilt | * Antenna Tilt | ||
== Propagation Models == | |||
=== 5G_UHF+ === | |||
A high-band empirical propagation model, derived from measurement data and tuned to a specific dataset or regulatory use. | |||
==== Core characteristics ==== | |||
* Type: Based on the empirical Okumura-Hata radiopropagation model | |||
* Uses DTM, Clutter and building height raster maps | |||
* Tuned for UHF, lower SHF ranges and land based predictions | |||
==== When to use it ==== | |||
✅ Cellular radio networks, e.g. 5G, radio systems in the UHF range. | |||
❌ Avoid when: Coverage area is mainly over water and if only DTM map data is available | |||
=== ITM (Longley–Rice / Irregular Terrain Model) === | |||
A general-purpose terrain-aware propagation model combining electromagnetic theory with empirical/statistical corrections. | |||
==== Core characteristics ==== | |||
* Frequency: ~20 MHz – 20 GHz [github.com] | |||
* Type: Hybrid (physics + empirical) | |||
* Models LOS, diffraction, and scatter regimes | |||
==== When to choose it ==== | |||
✅ Use when: * You need terrain-aware predictions * You want link-level or detailed coverage analysis * You need one model across wide frequency ranges | |||
❌ Avoid when: * You need very fast, coarse coverage * You lack terrain/profile data | |||
== Mental model: == | |||
“Engineering-grade propagation model balancing physics and statistics.” | |||
= ITU‑R P.1546 = | |||
== What it is == | |||
An empirical, large-scale propagation model for point‑to‑area coverage prediction, based on measured field‑strength curves. | |||
== Core characteristics == | |||
* Frequency: 30 MHz – 4 GHz [web.stanford.edu] | |||
* Type: Empirical (curve-based) | |||
* Prediction: Area coverage (not path-specific) | |||
* Outputs: Field strength, path loss [qsl.net] | |||
* Statistical: Time % and location % variability [dxlook.com] | |||
== When to choose it == | |||
✅ Use when: * You need wide-area coverage prediction * You want ITU/regulatory-aligned results * You are working in broadcast / macro-scale planning | |||
❌ Avoid when: * You need site-specific or path-accurate predictions * Terrain detail must be explicitly modeled | |||
== Mental model: == | |||
“Statistical broadcast coverage model based on measured propagation curves.” | |||
= Radix‑MKE = | |||
== What it is == | |||
A deterministic diffraction model using multiple knife-edge (Deygout) calculations to evaluate terrain obstruction loss. | |||
== Core characteristics == | |||
* Type: Deterministic (geometry-based) | |||
* Explicitly models: | |||
** Terrain obstacles as knife-edges | |||
** Multi-obstacle diffraction chains | |||
* Typical accuracy: ~±3 dB in suitable terrain [deepwiki.com] | |||
== When to choose it == | |||
✅ Use when: * Terrain obstructions (mountains/ridges) dominate * You need path-specific analysis * Working in VHF / lower UHF regimes | |||
❌ Avoid when: * You need large-area statistical coverage * Terrain is flat (overkill) * You need clutter/building modeling | |||
== Mental model: == | |||
“Explicit terrain diffraction solver for obstructed paths.” | |||
= Quick selection comparison = | |||
{| class="wikitable" | |||
!Model | |||
!Type | |||
!Best for | |||
!Avoid when | |||
|- | |||
|'''P.1546''' | |||
|Empirical (area) | |||
|Broadcast / large coverage | |||
|Site-specific accuracy | |||
|- | |||
|'''ITM''' | |||
|Hybrid | |||
|Terrain-aware links & coverage | |||
|No terrain data | |||
|- | |||
|'''H01 Highband''' | |||
|Empirical (tuned) | |||
|Standardized high-band scenarios | |||
|Outside dataset | |||
|- | |||
|'''L0X LowBand''' | |||
|Empirical | |||
|Low-band coverage | |||
|Higher frequencies | |||
|- | |||
|'''L01 Lowband (2016)''' | |||
|Empirical (versioned) | |||
|Legacy reproducibility | |||
|General use | |||
|- | |||
|'''Radix‑MKE''' | |||
|Deterministic | |||
|Obstructed terrain paths | |||
|Large-area modeling | |||
|} | |||
= Practical decision rule = | |||
* Macro coverage / broadcast: → P.1546 | |||
* General-purpose with terrain: → ITM | |||
* Strict regulatory / reproducibility: → H01 / L01 / L0X | |||
* Terrain-obstructed path analysis: → Radix‑MKE | |||
[[Category:RadioPlan]] | [[Category:RadioPlan]] | ||
Revision as of 09:29, 17 June 2026
Calculate Coverage
Coverage calculations are controlled by the interface IRadioCoverage in IMariaRadioPlanLayer.RadioCoverage
To create a coverage file, we need to define some parameters. The most important is the selection of propagation model.
The list of propagation models can be found like this:
_propagationModels = new ReadOnlyCollection<string>(_radioPlanLayer.RadioCoverage.RadioPropagationModelRepository.PropagationModels.Select(m => m.Name).ToList());
Settings for Coverage calculation used is defined by
record CoverageCalculationSettings(int resolution, int size, AreaShape calculationAreaShape, string propagationModel, RxHeight rxHeight, PartsOfCalculation partsToCalculate)
which is set RadioNet setting:
- RadioNet.CoverageCalculationSettings
or as a general setting:
- RadioPlanSettings.CoverageCalculationSettings
Which one to use is controlled by enum RadioPlanSettings.CoverageCalculationSettingsSource
public enum CoverageCalculationSettingsSource
{
RadioPlanSettings, // As defined in radio plan layer Settings
RadioNet, // Use Coverage calculation settings from the radio's radio net if defined
}
Coverage calculation for a Radio is started with
Result<Guid> jobId = await _radioPlanLayer.RadioCoverage.StartCoverageCalculationForRadioAsync(radio);
If successful, jobId returns a Guid to identify the job. Otherwise, the result returns an error message. Progress can be checked by subscribing to the event RadioCoverage.CovDataUpdateProgress.
_radioPlanLayer.RadioCoverage.CovDataUpdateProgress += CoverageDataUpdateProgress;
...
private void CoverageDataUpdateProgress(object sender, CalculationJobStatus calculationJobStatus)
{
if (calculationJobStatus.IsCompleted)
{
ProgressValue = 0; // the clients progress indicator
}
else
{
ProgressValue = calculationJobStatus.TotalPercentCompleted;
}
}
Abort Coverage Calculations
Coverage calculations can be aborted for a specific job by RequestAbortCoverageDataJob(jobId),
or as a general abort request by RequestAbortCalculationJobsAsync()
Automatic Update
Changes to the Site or the Radio may invalidate the coverage data. This will apply to changes like:
- Site position
- PositionOffset of the Antenna
- Frequency
- Height of the Antenna
When such changes are detected, the current coverage data is invalidated. If a coverage plot for a Radio is visible, it will disappear if any of these properties are changes.
If RadioPlanSettings.AutomaticCoverageCalculation is true, a new coverage calculation will start automatically to create that valid coverage data. Progress can be detected by the RadioCoverage.CovDataUpdateProgress event.
When calculation is finsihed, the plot will reappear if it was visible before the invalidating change.
Other changes to a Radio that affects the coverage area will not cause invalidation of the coverage data, but will cause a rescale of the coverage area on-the-fly. Examples are:
- TxPower
- Loss
- Antenna
- Antenna Direction
- Antenna Tilt
Propagation Models
5G_UHF+
A high-band empirical propagation model, derived from measurement data and tuned to a specific dataset or regulatory use.
Core characteristics
- Type: Based on the empirical Okumura-Hata radiopropagation model
- Uses DTM, Clutter and building height raster maps
- Tuned for UHF, lower SHF ranges and land based predictions
When to use it
✅ Cellular radio networks, e.g. 5G, radio systems in the UHF range.
❌ Avoid when: Coverage area is mainly over water and if only DTM map data is available
ITM (Longley–Rice / Irregular Terrain Model)
A general-purpose terrain-aware propagation model combining electromagnetic theory with empirical/statistical corrections.
Core characteristics
- Frequency: ~20 MHz – 20 GHz [github.com]
- Type: Hybrid (physics + empirical)
- Models LOS, diffraction, and scatter regimes
When to choose it
✅ Use when: * You need terrain-aware predictions * You want link-level or detailed coverage analysis * You need one model across wide frequency ranges
❌ Avoid when: * You need very fast, coarse coverage * You lack terrain/profile data
Mental model:
“Engineering-grade propagation model balancing physics and statistics.”
ITU‑R P.1546
What it is
An empirical, large-scale propagation model for point‑to‑area coverage prediction, based on measured field‑strength curves.
Core characteristics
- Frequency: 30 MHz – 4 GHz [web.stanford.edu]
- Type: Empirical (curve-based)
- Prediction: Area coverage (not path-specific)
- Outputs: Field strength, path loss [qsl.net]
- Statistical: Time % and location % variability [dxlook.com]
When to choose it
✅ Use when: * You need wide-area coverage prediction * You want ITU/regulatory-aligned results * You are working in broadcast / macro-scale planning
❌ Avoid when: * You need site-specific or path-accurate predictions * Terrain detail must be explicitly modeled
Mental model:
“Statistical broadcast coverage model based on measured propagation curves.”
Radix‑MKE
What it is
A deterministic diffraction model using multiple knife-edge (Deygout) calculations to evaluate terrain obstruction loss.
Core characteristics
- Type: Deterministic (geometry-based)
- Explicitly models:
- Terrain obstacles as knife-edges
- Multi-obstacle diffraction chains
- Typical accuracy: ~±3 dB in suitable terrain [deepwiki.com]
When to choose it
✅ Use when: * Terrain obstructions (mountains/ridges) dominate * You need path-specific analysis * Working in VHF / lower UHF regimes
❌ Avoid when: * You need large-area statistical coverage * Terrain is flat (overkill) * You need clutter/building modeling
Mental model:
“Explicit terrain diffraction solver for obstructed paths.”
Quick selection comparison
| Model | Type | Best for | Avoid when |
|---|---|---|---|
| P.1546 | Empirical (area) | Broadcast / large coverage | Site-specific accuracy |
| ITM | Hybrid | Terrain-aware links & coverage | No terrain data |
| H01 Highband | Empirical (tuned) | Standardized high-band scenarios | Outside dataset |
| L0X LowBand | Empirical | Low-band coverage | Higher frequencies |
| L01 Lowband (2016) | Empirical (versioned) | Legacy reproducibility | General use |
| Radix‑MKE | Deterministic | Obstructed terrain paths | Large-area modeling |
Practical decision rule
- Macro coverage / broadcast: → P.1546
- General-purpose with terrain: → ITM
- Strict regulatory / reproducibility: → H01 / L01 / L0X
- Terrain-obstructed path analysis: → Radix‑MKE