angular_spreads_from_rays#

sionna.phy.channel.tr38901.angular_spreads_from_rays(rays, lsp, scenario, serving: torch.Tensor | None = None, include_los_component: bool = True) → dict[str, torch.Tensor][source]#

Computes angular spreads from 3GPP TR 38.901 [TR38901V1920] rays.

The returned angular spreads use the phasor formula from Annex A.1, Eq. (A-1), of [TR38901V1920], which follows [TR25996], as implemented by circular_angular_spread(). The deterministic LoS power is weighted according to Eq. (7.5-30). Zenith angles are folded to the physical interval \([0,\pi]\).

Parameters:
  • rays – Rays. Rays for all BS-UT links.

  • lsp – LSP. Large-scale parameters associated with rays.

  • scenario – SystemLevelScenario. Scenario used to generate rays and lsp.

  • serving (torch.Tensor | None) – Serving BS indices with shape [batch size, num_ut] or [batch size*num_ut]. If None, angular spreads are computed for all BS-UT links.

  • include_los_component (bool) – If True, include the deterministic LoS component according to the K-factor.

Outputs:

spreads – Dictionary containing "asd", "asa", "zsd", and "zsa" angular spreads [radian].