Comprehensive Analysis of the Dual-Slope Propagation Model in Vehicular Communications (V2X)
Executive Summary
The Dual-Slope Log-Distance Path Loss Model is one of the foundational radio wave propagation models in vehicular network research. It accounts for the physical boundary conditions created by vehicular antenna heights, asphalt ground reflections, and roadway geometry.
This document presents a comprehensive, mathematically rigorous analysis of:
- Electromagnetic and Physical Foundations: Derivation of the dual-slope phenomenon from the Two-Ray Ground Reflection model and Fresnel zone clearance geometry.
- Analytical Mathematical Formulation: Piecewise log-distance equations, breakpoint distance definition, and log-normal shadow fading.
- Implementation in
rustv2xsimulator: Complete architecture ofDualSlopePathLossand its interaction withRadioMedium, Rayon parallel ray evaluation, polygon building penetration, and ITU-R P.526 knife-edge diffraction. - Standard Conformance Audit against 3GPP TR 38.901 (ETSI TR 138 901 v18.1.0): Exhaustive side-by-side comparison with Clause 7.4.1 (Table 7.4.1-1).
- Incongruence Catalog & Engineering Rationale: Detailed discrepancy analysis explaining why the current implementation matches the ns-3 v3.42 / IEEE 802.11p empirical gold standard (Abbas et al. / ITU-R P.1411 / WINNER+ B1) rather than the cellular BS-UT infrastructure formulas of TR 38.901, and guidelines for adding full 3GPP TR 38.901 UMi/UMa sidelink modes.
1. Electromagnetic and Physical Foundations
Radio wave propagation between moving vehicles differs fundamentally from conventional macrocellular base-station deployments:
- Low Antenna Heights: Transmitting and receiving antennas are mounted on vehicle roofs, bumpers, or side mirrors, typically at \(h_{tx}, h_{rx} \in [1.2, 1.8]\,\text{m}\) above the ground surface.
- Flat Ground Plane: The asphalt or concrete road surface acts as an electrically reflective ground plane.
- Multipath Interference: The receiver captures both a direct Line-of-Sight (LOS) wave and a strong ground-reflected wave.
Tx Antenna
(h_tx) \
| \ Direct Ray: d_dir
| \
| \ Rx Antenna
| \ (h_rx)
| \ |
| \ |
===========|===========\======================|=========== Ground (Asphalt)
| \ Reflected Ray |
| \ d_ref |
| \ / |
| \/ |
1.1 The Two-Ray Ground Reflection Derivation
Consider a transmitter at height \(h_{tx}\) and a receiver at height \(h_{rx}\), separated by planar 2D distance \(d\).
- Path Lengths:
$\(\begin{aligned} d_{\text{dir}} &= \sqrt{d^2 + (h_{tx} - h_{rx})^2} = d \sqrt{1 + \frac{(h_{tx} - h_{rx})^2}{d^2}} \approx d + \frac{(h_{tx} - h_{rx})^2}{2d} \\ d_{\text{ref}} &= \sqrt{d^2 + (h_{tx} + h_{rx})^2} = d \sqrt{1 + \frac{(h_{tx} + h_{rx})^2}{d^2}} \approx d + \frac{(h_{tx} + h_{rx})^2}{2d} \end{aligned}\)$
(via Taylor series expansion for \(d \gg h_{tx} + h_{rx}\)).
- Path Length Difference:
$\(\Delta d = d_{\text{ref}} - d_{\text{dir}} \approx \frac{(h_{tx} + h_{rx})^2 - (h_{tx} - h_{rx})^2}{2d} = \frac{2 h_{tx} h_{rx}}{d}\)$
- Phase Difference: With propagation wave number \(k = \frac{2\pi}{\lambda} = \frac{2\pi f_c}{c}\):
$\(\Delta \phi = k \Delta d = \frac{2\pi}{\lambda} \cdot \frac{2 h_{tx} h_{rx}}{d} = \frac{4\pi h_{tx} h_{rx}}{\lambda d}\)$
- Received Electric Field: Assuming ground reflection coefficient \(\Gamma \approx -1\) for horizontal polarization and grazing incidence angles:
$\(E_{\text{total}} = E_{\text{dir}} + E_{\text{ref}} \approx E_0 \left( \frac{e^{-j k d_{\text{dir}}}}{d_{\text{dir}}} - \frac{e^{-j k d_{\text{ref}}}}{d_{\text{ref}}} \right)\)$
Factoring out the phase of the direct path:
$\(|E_{\text{total}}| \approx \frac{E_0}{d} \left| 1 - e^{-j \Delta \phi} \right| = \frac{E_0}{d} \left| 2 \sin\left(\frac{\Delta \phi}{2}\right) \right| = \frac{2 E_0}{d} \sin\left( \frac{2\pi h_{tx} h_{rx}}{\lambda d} \right)\)$
1.2 Regimes: Near-Field vs. Far-Field
The argument \(\theta = \frac{2\pi h_{tx} h_{rx}}{\lambda d}\) determines two distinct propagation regimes:
Regime 1: Near-Field (\(d < d_{\text{break}}\))
- When \(d\) is small, \(\Delta \phi\) is large (\(\Delta \phi > \pi\)).
- As the vehicle moves, the sinusoidal function \(\sin\left(\frac{\Delta \phi}{2}\right)\) oscillates rapidly between \(0\) and \(1\), generating constructive and destructive multipath interference (Fresnel oscillations).
- When averaged over small local spatial windows (removing fast multipath fading), the power decay follows free-space attenuation:
$\(P_{rx}(d) \propto \frac{1}{d^{\gamma_1}}, \quad \gamma_1 \approx 2.0\)$
Regime 2: Far-Field (\(d > d_{\text{break}}\))
- When \(d\) is large, \(\Delta \phi \ll 1\), allowing the small-angle approximation \(\sin\left(\frac{\Delta \phi}{2}\right) \approx \frac{\Delta \phi}{2}\):
$\(|E_{\text{total}}| \approx \frac{2 E_0}{d} \left( \frac{2\pi h_{tx} h_{rx}}{\lambda d} \right) = \frac{4\pi E_0 h_{tx} h_{rx}}{\lambda d^2}\)$
- The electric field decays as \(1/d^2\), meaning the received power \(P_{rx} \propto |E|^2\) decays as:
$\(P_{rx}(d) \propto \frac{1}{d^4} \implies P_{rx}(d) \propto \frac{1}{d^{\gamma_2}}, \quad \gamma_2 \approx 4.0\)$
- In logarithmic decibels, the path loss slope transitions from \(20\,\text{dB/decade}\) to \(40\,\text{dB/decade}\).
1.3 The Critical Breakpoint Distance (\(d_{\text{break}}\))
The transition between the two regimes occurs at the phase threshold \(\Delta \phi = \pi\) (or path difference \(\Delta d = \frac{\lambda}{2}\)):
Alternatively, when derived from the condition that the first Fresnel ellipsoid touches the reflective ground plane (Fresnel clearance zone), the breakpoint distance is:
For typical vehicular setups at \(f_c = 5.9\,\text{GHz}\) (\(\lambda \approx 0.0508\,\text{m}\)):
- Vehicle roof antennas: \(h_{tx} = h_{rx} = 1.5\,\text{m}\):
$\(d_{\text{break}} = \frac{4 \cdot 1.5 \cdot 1.5}{0.0508} \approx 177.17\,\text{m}\)$
- Vehicle bumper antennas: \(h_{tx} = h_{rx} = 0.7\,\text{m}\):
$\(d_{\text{break}} = \frac{4 \cdot 0.7 \cdot 0.7}{0.0508} \approx 38.58\,\text{m}\)$
- In empirical vehicular measurements with complex road clutter, asphalt roughness, and roadside guardrails, empirical fits place the effective \(d_{\text{break}}\) between \(80\,\text{m}\) and \(150\,\text{m}\) (commonly calibrated to \(120.0\,\text{m}\)).
2. Mathematical Formulation of the Dual-Slope Log-Distance Model
2.1 Deterministic Path Loss Formula
Let \(d_0 = 1.0\,\text{m}\) be the reference distance. The free-space reference loss at \(d_0\) is given by Friis' transmission equation:
At \(f_c = 5.9\,\text{GHz}\) and \(c = 299\,792\,458\,\text{m/s}\):
The deterministic path loss \(PL_{\text{det}}(d)\) in decibels as a function of Euclidean distance \(d\) (with \(d \ge d_0\)) is:
where the path loss at the breakpoint boundary is:
Substituting \(PL_{\text{break}}\) into the far-field branch yields the expanded continuous expression:
2.2 Continuity at the Breakpoint
The function \(PL_{\text{det}}(d)\) is continuous at \(d = d_{\text{break}}\):
2.3 Large-Scale Shadow Fading (\(X_\sigma\))
To account for shadowing caused by surrounding vegetation, roadside terrain, and non-geometric clutter, a zero-mean log-normal random variable \(X_\sigma\) is added to the deterministic loss:
where:
The standard deviation \(\sigma\) switches depending on whether a Line-of-Sight condition exists:
3. Implementation Architecture in rustv2xsimulator
In rustv2xsimulator, the Dual-Slope model is implemented natively in Rust within src/phy/path_loss.rs.
3.1 Data Structures & Method Signatures
pub const SPEED_OF_LIGHT: f64 = 299_792_458.0;
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct DualSlopePathLoss {
pub carrier_frequency_hz: f64,
pub d_break: f64,
pub gamma1: f64,
pub gamma2: f64,
pub sigma_los: f64,
pub sigma_nlos: f64,
pub pl_0: f64,
}
impl Default for DualSlopePathLoss {
fn default() -> Self {
Self::new(5.9e9, 120.0, 2.05, 3.90, 3.1, 8.3)
}
}
Core Calculation Functions
impl DualSlopePathLoss {
pub fn deterministic_path_loss_db(&self, distance_m: f64) -> f64 {
let d = distance_m.max(1.0);
if d <= self.d_break {
self.pl_0 + 10.0 * self.gamma1 * d.log10()
} else {
let pl_break = self.pl_0 + 10.0 * self.gamma1 * self.d_break.log10();
pl_break + 10.0 * self.gamma2 * (d / self.d_break).log10()
}
}
pub fn calculate_path_loss_db<R: Rng>(
&self,
distance_m: f64,
is_los: bool,
rng: &mut R,
) -> f64 {
let det_pl = self.deterministic_path_loss_db(distance_m);
let sigma = if is_los { self.sigma_los } else { self.sigma_nlos };
let fading = if sigma > 0.0 {
let normal = Normal::new(0.0, sigma).unwrap();
normal.sample(rng)
} else {
0.0
};
(det_pl + fading).max(0.0)
}
}
3.2 Integration into the Radio Medium Pipeline
When an AirPacket is broadcasted over the wireless medium (RadioMedium::evaluate_transmission), the simulation executes an end-to-end physical layer pipeline parallelized with Rayon:
+---------------------------------------------------------------------------------+
| RadioMedium Pipeline |
+---------------------------------------------------------------------------------+
|
1. Geometry & Obstacle Ray Casting (BuildingMap)
- Intersects 2D segment (Tx -> Rx) against OSM building polygons
- Calculates internal concrete wall penetration distance (d_pen)
- Identifies closest corner vertex for diffraction
|
2. Deterministic Dual-Slope Loss (DualSlopePathLoss)
- Calculates PL_det(d) based on 2D distance
|
3. Shadow Fading Injection
- Samples X_sigma ~ N(0, sigma^2) using deterministic PRNG hash:
seed = sim_seed ^ (packet_id << 32 | rx_id) ^ idx
|
4. Building Penetration Loss (if obstructed)
- PL_pen = min(d_pen * 0.85 dB/m, 45.0 dB)
|
5. ITU-R P.526 Knife-Edge Corner Diffraction (if obstructed)
- Calculates Fresnel parameter nu and diffraction loss J(nu)
|
6. Total Received Power Calculation
- P_rx = P_tx - (PL_det + X_sigma + PL_pen + J(nu))
|
7. Cumulative Interference & Chunked SINR (InterferenceHelper)
- Slices packet duration into piecewise-constant interference intervals
- Verifies receiver capture margin (gamma_cap = 4.0 dB)
- Evaluates PER using NistErrorRateModel QPSK 1/2 analytical curve
4. Deep-Dive: 3GPP TR 38.901 (ETSI TR 138 901 v18.1.0)
3GPP Technical Report TR 38.901 (transposed by ETSI as TR 138 901, current Release 18 version v18.1.0) defines the channel models for 5G NR operating from \(0.5\,\text{GHz}\) to \(100\,\text{GHz}\).
4.1 Scope and Scenario Definitions
Clause 7.2 of TR 38.901 defines five standard deployment scenarios:
- Urban Micro (UMi) - Street Canyon: Base stations deployed below rooftop level (\(h_{\text{BS}} \sim 10\,\text{m}\)), cell radius up to a few hundred meters.
- Urban Macro (UMa): Base stations deployed above rooftop level (\(h_{\text{BS}} \sim 25\,\text{m}\)), inter-site distance \(500\,\text{m}\) or \(1732\,\text{m}\).
- Rural Macro (RMa): Large-area coverage with \(h_{\text{BS}} \sim 35\,\text{m}\), inter-site distance \(1732\,\text{m}\) or \(5000\,\text{m}\).
- Indoor - Office (InH): High-density indoor office environments (\(h_{\text{BS}} \sim 3\,\text{m}\)).
- Indoor Factory (InF): Industrial halls with high metallic clutter and machinery.
[!IMPORTANT] 3GPP TR 38.901 Clause 6.4 Explicitly Notes: "Develop a methodology considering that model extensions to D2D and V2V may be developed in future SI." Clause 6.2 (5) also notes: "D2D/V2V... The scenarios of interest are based on the plenary email discussion and different from the supported scenarios in clause 7."
In other words, TR 38.901 does NOT specify a native peer-to-peer V2V sidelink channel model. Its primary equations describe cellular Downlink and Uplink infrastructure links (Base Station to User Terminal, BS \(\leftrightarrow\) UT). Peer-to-peer V2X channel modeling was addressed in 3GPP TR 36.885 (LTE-V2X) and 3GPP TR 37.885 (NR-V2X Sidelink).
4.2 Standard Dual-Slope Formulations in Clause 7.4.1 (Table 7.4.1-1)
Table 7.4.1-1 defines path loss formulas where dual-slope piecewise functions are used for LOS conditions in UMi, UMa, and RMa.
1. UMi - Street Canyon (LOS)
- Breakpoint Distance (\(d'_{BP}\)):
$\(d'_{BP} = 4 h'_{BS} h'_{UT} \frac{f_c}{c}\)$
where:
- \(f_c\) is center frequency in Hz, \(c = 3.0 \times 10^8\,\text{m/s}\).
- \(h'_{BS} = h_{BS} - h_E\) and \(h'_{UT} = h_{UT} - h_E\) are effective antenna heights.
- \(h_E = 1.0\,\text{m}\) is the effective environment height for UMi.
-
\(h_{BS}\) and \(h_{UT}\) are actual antenna heights.
-
Path Loss Equations (\(f_c\) normalized in GHz, distances in meters):
$\(\begin{aligned} PL_1(d_{3D}) &= 32.4 + 21.0 \log_{10}(d_{3D}) + 20 \log_{10}(f_c), & 10\,\text{m} \le d_{2D} \le d'_{BP} \\ PL_2(d_{3D}) &= 32.4 + 40.0 \log_{10}(d_{3D}) + 20 \log_{10}(f_c) - 9.5 \log_{10}\left( (d'_{BP})^2 + (h_{BS} - h_{UT})^2 \right), & d'_{BP} \le d_{2D} \le 5000\,\text{m} \end{aligned}\)$
- Path Loss Exponents: \(\gamma_1 = 2.10\), \(\gamma_2 = 4.00\).
- Shadow Fading Standard Deviation:
$\(\sigma_{SF} = 4.0\,\text{dB} \quad (\text{for both } d \le d'_{BP} \text{ and } d > d'_{BP})\)$
- UMi - Street Canyon (NLOS):
$\(\begin{aligned} PL'_{NLOS}(d_{3D}) &= 35.3 + 22.4 \log_{10}(d_{3D}) + 21.3 \log_{10}(f_c) - 0.3(h_{UT} - 1.5) \\ PL_{NLOS}(d_{3D}) &= \max\left( PL_1(d_{3D}), \, PL'_{NLOS}(d_{3D}) \right) \\ \sigma_{SF} &= 7.82\,\text{dB} \end{aligned}\)$
2. UMa - Urban Macro (LOS)
- Breakpoint Distance (\(d'_{BP}\)):
$\(d'_{BP} = 4 h'_{BS} h'_{UT} \frac{f_c}{c}\)$
where \(h_E = 1.0\,\text{m}\) with probability \(\frac{1}{1 + C(d_{2D}, h_{UT})}\) and selected from discrete uniform distribution otherwise.
- Path Loss Equations:
$\(\begin{aligned} PL_1(d_{3D}) &= 28.0 + 22.0 \log_{10}(d_{3D}) + 20 \log_{10}(f_c), & 10\,\text{m} \le d_{2D} \le d'_{BP} \\ PL_2(d_{3D}) &= 28.0 + 40.0 \log_{10}(d_{3D}) + 20 \log_{10}(f_c) - 9.0 \log_{10}\left( (d'_{BP})^2 + (h_{BS} - h_{UT})^2 \right), & d'_{BP} \le d_{2D} \le 5000\,\text{m} \end{aligned}\)$
- Path Loss Exponents: \(\gamma_1 = 2.20\), \(\gamma_2 = 4.00\).
- Shadow Fading: \(\sigma_{SF} = 4.0\,\text{dB}\).
3. RMa - Rural Macro (LOS)
- Breakpoint Distance (\(d_{BP}\)):
$\(d_{BP} = 2 \pi h_{BS} h_{UT} \frac{f_c}{c}\)$
- Path Loss Equations:
$\(\begin{aligned} PL_1(d_{3D}) &= 20 \log_{10}\left(\frac{40 \pi d_{3D} f_c}{3}\right) + \min(0.03 h^{1.72}, 10) \log_{10}(d_{3D}) - \min(0.044 h^{1.72}, 1.47) + (0.002 \log_{10}(h)) d_{3D} \\ PL_2(d_{3D}) &= PL_1(d_{BP}) + 40.0 \log_{10}\left( \frac{d_{3D}}{d_{BP}} \right), \quad d_{BP} \le d_{2D} \le 10\,000\,\text{m} \end{aligned}\)$
- Shadow Fading: \(\sigma_{SF} = 4.0\,\text{dB}\) for \(d \le d_{BP}\), and \(\sigma_{SF} = 6.0\,\text{dB}\) for \(d > d_{BP}\).
5. Compliance Analysis & Incongruence Report
The table below contrasts the rustv2xsimulator DualSlopePathLoss implementation with the 3GPP TR 38.901 (ETSI TR 138 901 v18.1.0) standard specification:
| Feature / Dimension | rustv2xsimulator Implementation |
3GPP TR 38.901 Table 7.4.1-1 (UMi-Street Canyon) | Status | Detailed Incongruence Description |
|---|---|---|---|---|
| Target Link Topology | Vehicle-to-Vehicle (V2V) Peer Sidelink (\(h_1 \approx h_2 \approx 1.5\,\text{m}\)) | Base Station to User Terminal (BS-UT) Infrastructure (\(h_{\text{BS}} \ge 10\,\text{m}\)) | Divergent | TR 38.901 models cellular infrastructure downlink/uplink. Sidelink V2V peer models reside in TR 36.885 / TR 37.885. |
| Breakpoint Distance (\(d_{\text{break}}\)) | Fixed constant scalar: \(d_{\text{break}} = 120.0\,\text{m}\) | Dynamic variable: \(d'_{BP} = 4(h_{\text{BS}} - h_E)(h_{\text{UT}} - h_E) f_c / c\) | Non-compliant | The simulator hardcodes \(d_{\text{break}} = 120\,\text{m}\). In TR 38.901, \(d'_{BP}\) dynamically scales with antenna heights, \(h_E\), and \(f_c\). |
| Near-Field Exponent (\(\gamma_1\)) | \(\gamma_1 = 2.05\) | \(\gamma_1 = 2.10\) (\(10 \times 2.1 \log_{10} d\)) | Incongruent | Empirical fit in simulator (\(2.05\)) vs standardized cellular fit (\(2.10\)). |
| Far-Field Exponent (\(\gamma_2\)) | \(\gamma_2 = 3.90\) | \(\gamma_2 = 4.00\) (\(40 \log_{10} d\)) | Incongruent | Empirical fit (\(3.90\)) vs theoretical two-ray asymptotic slope (\(4.00\)). |
| Reference Free-Space Constant (\(PL_0\)) | Analytical Friis at \(d_0 = 1\,\text{m}\): \(PL_0 = 20 \log_{10}(4\pi f_c / c) \approx 47.854\,\text{dB}\) | Standardized formula constant: \(32.4 + 20 \log_{10}(f_c) \approx 47.820\,\text{dB}\) | Minor offset (0.034 dB) | Friis formula evaluates to \(47.854\,\text{dB}\) with exact \(c\), while TR 38.901 rounds the coefficient to \(32.4\), yielding \(47.820\,\text{dB}\). |
| Far-Field Continuity Offset | \(PL_{\text{break}} + 10 \gamma_2 \log_{10}(d / d_{\text{break}})\) | \(-9.5 \log_{10}\left( (d'_{BP})^2 + (h_{\text{BS}} - h_{\text{UT}})^2 \right)\) | Incongruent | TR 38.901 uses a 3D slant-distance offset term instead of relative distance division \(\log_{10}(d / d_{\text{break}})\). |
| LOS Shadow Fading (\(\sigma_{\text{LoS}}\)) | \(\sigma_{\text{LoS}} = 3.1\,\text{dB}\) | \(\sigma_{\text{SF}} = 4.0\,\text{dB}\) | Incongruent | 802.11p empirical measurement value (\(3.1\,\text{dB}\)) vs TR 38.901 standardized variance (\(4.0\,\text{dB}\)). |
| NLOS Shadow Fading (\(\sigma_{\text{NLoS}}\)) | \(\sigma_{\text{NLoS}} = 8.3\,\text{dB}\) | \(\sigma_{\text{SF}} = 7.82\,\text{dB}\) (or \(7.8\,\text{dB}\)) | Incongruent | Measured vehicular urban shadow fading (\(8.3\,\text{dB}\)) vs TR 38.901 empirical fit (\(7.82\,\text{dB}\)). |
| Distance Coordinate Dimension | 2D Planar Distance (\(d_{2D} = \sqrt{\Delta x^2 + \Delta y^2}\)) | 3D Slant Distance (\(d_{3D} = \sqrt{d_{2D}^2 + (h_{\text{BS}} - h_{\text{UT}})^2}\)) | Incongruent | Simulator evaluates Euclidean distance on 2D Point2D; TR 38.901 evaluates pathloss on 3D distance and breakpoint on 2D distance. |
| NLOS Attenuation Mechanism | Dual-Slope + Ray-Casting Building Penetration (\(0.85\,\text{dB/m}\)) + Knife-Edge Corner Diffraction (\(J(\nu)\)) | Empirical statistical macro formula: \(PL_{\text{NLOS}} = \max(PL_{\text{LOS}}, 35.3 + 22.4 \log_{10} d + 21.3 \log_{10} f_c)\) | Architectural Divergence | The simulator uses microscopic geometric GIS ray-casting against OpenStreetMap building polygons, whereas TR 38.901 uses statistical parametric formulas. |
| Shadow Fading Correlation | Independent per-packet pseudo-random draw | 2D Spatial Consistency & Cross-Correlation Matrix (Clause 7.6.3) | Incongruent | TR 38.901 specifies spatial correlation distance (\(d_{\text{corr}} = 10\,\text{m}\) for UMi LOS); the simulator samples independently per packet. |
6. Engineering Rationale: Why ns-3 Parity Dictates the Current Implementation
The current implementation in rustv2xsimulator was intentionally engineered to achieve sub-millidecibel parity with the ns-3 v3.42 gold standard (ns3::BreakpointPathlossModel):
-
Academic Parity with ns-3 v3.42 and OMNeT++ Veins: In vehicular network research, thousands of published IEEE papers benchmark 802.11p and C-ITS against ns-3 v3.42 or Veins 5.2. In ns-3, the default physical layer uses:
-
BreakpointDistance = 120.0 m LossExponentNear = 2.05LossExponentFar = 3.90ShadowingSigmaLoS = 3.1 dB-
ShadowingSigmaNLoS = 8.3 dBThese parameters originate from extensive empirical 5.9 GHz V2V measurement campaigns (Abbas et al., Sommer-Dressler, ITU-R P.1411). -
Integration Test Verification: The simulator includes
tests/ns3_phy_parity_test.rs, which computes the Mean Absolute Error (\(\text{MAE}\)) of Packet Delivery Ratio against ns-3 v3.42 across 80 bins up to 800 m. With these exact parameters, the simulator achieves:
$\(\text{MAE}_{\text{PDR}} \le 0.021\)$
Changing these parameters directly to TR 38.901 UMi values without an architectural toggle would break ns-3 regression parity.
7. Recommended Architectural Extension for TR 38.901 Conformance
To support both ns-3 v3.42 802.11p parity and strict 3GPP TR 38.901 / TR 37.885 cellular & sidelink compliance, the physical layer should be extended with a pluggable model selector:
Proposed Architecture
#[derive(Debug, Clone, Serialize, Deserialize)]
pub enum DualSlopeStandard {
/// ns-3 v3.42 & IEEE 802.11p empirical vehicular measurement fit (Default)
Ns3VeinsEmpirical {
d_break: f64,
gamma1: f64,
gamma2: f64,
sigma_los: f64,
sigma_nlos: f64,
},
/// 3GPP TR 38.901 Table 7.4.1-1 Urban Micro (UMi - Street Canyon)
Tr38901Umi {
h_bs: f64,
h_ut: f64,
h_e: f64,
},
/// 3GPP TR 38.901 Table 7.4.1-1 Urban Macro (UMa)
Tr38901Uma {
h_bs: f64,
h_ut: f64,
},
/// 3GPP TR 37.885 Section 6.2.1 Sidelink V2V Highway / Urban
Tr37885V2vSidelink {
h_tx: f64,
h_rx: f64,
},
}
When Tr38901Umi is selected:
- Dynamic breakpoint: \(d'_{BP} = 4 (h_{\text{BS}} - h_E) (h_{\text{UT}} - h_E) \frac{f_c}{c}\).
- Path loss exponents: \(\gamma_1 = 2.10\), \(\gamma_2 = 4.00\).
- Standardized shadow fading: \(\sigma_{\text{LoS}} = 4.0\,\text{dB}\), \(\sigma_{\text{NLoS}} = 7.82\,\text{dB}\).
- 3D slant distance calculation: \(d_{3D} = \sqrt{d_{2D}^2 + (h_{\text{BS}} - h_{\text{UT}})^2}\).
This design preserves backward compatibility with the ns-3 baseline while providing standards-compliant 3GPP TR 38.901 channel evaluation for 5G NR-V2X simulations.