Path Realization#
- class PathRealization(power, delay, los_gain, los_angle, los_phase, los_doppler, nlos_gain, nlos_angles, nlos_phases, nlos_doppler)[source]#
Bases:
HDFSerializable
A single delay path of a Multipath Fading channel realization.
Represents the single propagation path equation
\[h_{\ell}(t) = \sqrt{\frac{K_{\ell}}{1 + K_{\ell}}} \mathrm{e}^{\mathrm{j} t \omega_{\ell} \cos(\theta_{\ell,0}) + \mathrm{j} \phi_{\ell,0} } + \sqrt{\frac{1}{N(1 + K_{\ell})}} \sum_{n=1}^{N} \mathrm{e}^{\mathrm{j} t \omega_{\ell} \cos\left( \frac{2\pi n + \theta_{\ell,n}}{N} \right) + \mathrm{j} \phi_{\ell,n}}\]- Parameters:
power (float) – Power of the represented path in Watts. Initializes the
power
attribute.delay (float) – Delay of the represented path in seconds. Initializes the
delay
attribute.los_gain (float) – Line of sight power of the represented path. Initializes the
los_gain
attribute.los_angle (float) – Line of sight doppler angle in radians. Initializes the
los_angle
attribute.los_phase (float) – Line of sight components phase in radians. Initializes the
los_phase
attribute.los_doppler (float) – Line of sight doppler frequency in \(\mathrm{Hz}\). Initializes the
los_doppler
attribute.nlos_gain (float) – Non line of sight power of the represented path. Initializes the
nlos_gain
attribute.nlos_angles (float) – Non line of sight doppler angles in radians. Initializes the
nlos_angles
attribute.nlos_phases (float) – Non line of sight components phases in radians. Initializes the
nlos_phases
attribute.nlos_doppler (float) – Non line of sight doppler frequency in \(\mathrm{Hz}\). Initializes the
nlos_doppler
attribute.
- classmethod Realize(power, delay, los_gain, nlos_gain, los_doppler, nlos_doppler, los_angle=None, num_sinusoids=20, rng=None)[source]#
Realize the path’s random variables.
- Parameters:
power (float) – Power of the represented path in Watts.
delay (float) – Delay of the represented path in seconds.
los_gain (float) – Line of sight power component of the represented path.
nlos_gain (_type_) – Non line of sight power component of the represented path.
los_doppler (float) – Line of sight doppler frequency of the represented path.
nlos_doppler (float) – None line of sight doppler frequencs of the represented path.
los_angle (float, optional) – Line of sight doppler angle in radians.
num_sinusoids (int, optional) – Number of sinusoids. \(20\) by default.
rng (np.random.Generator, optional) – Random generator used to realize the random variables.
- Return type:
Returns: The realized path realization.
- propagate(signal)[source]#
Propagate a signal along the represented multipath component.
Returns: The propagated samples.
- property delay: float#
Delay of the propagation path in seconds.
Referred to as \(\tau_{\ell}\) within the respective equations.
- property los_angle: float#
Angle of the path’s specular line of sight component in radians.
Represented by \(\theta_{\ell}\) within the respective equations.
- property los_doppler: float#
Doppler frequency of the path’s specular line of sight component in Hz.
Represented by \(\omega_{\ell}\) within the respective equations.
- property los_gain: float#
Gain of the path’s specular line of sight component.
Represented by
\[\sqrt{\frac{K_{\ell}}{1 + K_{\ell}}}\]within the respective equations.
- property los_phase: float#
Phase of the path’s specular line of sight component in radians.
Represented by \(\phi_{\ell}\) within the respective equations.
- property nlos_angles: ndarray#
Angles of the path’s non-specular components in radians.
Represented by the sequence
\[\left[\theta_{\ell,1},\, \dotsc,\, \theta_{\ell,N} \right]^{\mathsf{T}} \in [0, 2\pi)^{N}\]of \(N\) angles in radians within the respective equations.
- property nlos_doppler: float#
Doppler frequency of the path’s non-specular components in Hz.
Represented by \(\omega_{\ell}\) within the respective equations.
- property nlos_gain: float#
Gain of the path’s non-specular components.
Represented by
\[\sqrt{\frac{1}{1 + K_{\ell}}}\]within the respective equations.