Documentation

This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

Scattering MIMO Channel

Scattering MIMO propagation channel

  • Library:
  • Phased Array System Toolbox / Environment and Target

Description

The Scattering MIMO Channel models a 3-D multipath propagation channel in which radiated signals from a transmitting array are reflected from multiple scatters back towards a receiving array. In this channel, propagation paths are direct paths (line-of-sight) from point to point. The block models range-dependent time delay, gain, Doppler shift, phase change, and atmospheric loss due to gases, rain, fog, and clouds. You can optionally propagate a signal via a direct path from transmitter to receiver.

The attenuation models for atmospheric gases and rain are valid for electromagnetic signals in the frequency range 1–1000 GHz but the attenuation model for fog and clouds is valid for only 10–1000 GHz. Outside these frequency ranges, the object uses the nearest valid value.

Ports

Input

expand all

The transmitted narrowband signal, specified as an M-by-Nt complex-valued matrix. The quantity M is the number of samples in the signal, and Nt is the number of transmitting array elements. Each column represents the signal transmitted by the corresponding array element.

Example: [1,1;j,1;0.5,0]

Data Types: double
Complex Number Support: Yes

Position of transmitting antenna array, specified as a 3-by-1 real-valued column vector taking the form [x;y;z]. The vector elements correspond to the x, y, and z positions of the array. Units are in meters.

Dependencies

To enable this port, set the Source of transmit array motion parameter to Input port.

Data Types: double

Velocity of transmitting antenna array, specified as a 3-by-1 real-valued column vector taking the form [vx;vy;vz]. The vector elements correspond to the x, y, and z velocities of the array. Units are in meters per second.

Dependencies

To enable this port, set the Source of transmit array motion parameter to Input port.

Data Types: double

Axes orientation of transmitting antenna array, specified as a 3-by-3 real orthonormal matrix. The matrix defines the orientation of the array local coordinate system with respect to the global coordinates. Matrix columns correspond to the directions of the x, y, and z axes of the local coordinate system. Units are dimensionless.

Dependencies

To enable this port, set the Source of transmit array motion parameter to Input port.

Data Types: double

Position of receiving antenna array, specified as a 3-by-1 real-valued column vector taking the form [x;y;z]. The vector elements correspond to the x, y, and z positions of the array. Units are in meters.

Dependencies

To enable this port, set the Source of receive array motion parameter to Input port.

Data Types: double

Velocity of receiving antenna array, specified as a 3-by-1 real-valued column vector taking the form [vx;vy;vz]. The vector elements correspond to the x, y, and z velocities of the array. Units are in meters per second.

Dependencies

To enable this port, set the Source of receive array motion parameter to Input port.

Data Types: double

Axes orientation of receiving antenna array, specified as a 3-by-3 real orthonormal matrix. The matrix defines the orientation of the array local coordinate system with respect to the global coordinates. Matrix columns correspond to the directions of the x, y, and z axes of the local coordinate system. Units are dimensionless.

Dependencies

To enable this port, set the Source of receive array motion parameter to Input port.

Data Types: double

Position of scatterers, specified as a 3-by-Ns real-valued matrix. Each column of the matrix takes the form [x;y;z], containing the x, y, and z positions of a scatterer. Units are in meters.

Dependencies

To enable this port, set the Scatterer specification parameter to Input port.

Data Types: double

Velocities of scatterers, specified as a 3-by-Ns real-valued matrix. Each matrix column has the form [vx;vy;vz], containing the x, y, and z velocities of a scatterer. Units are in meters per second.

Dependencies

To enable this port, set the Scatterer specification parameter to Input port.

Data Types: double

Scattering coefficients, specified as a 1-by-Ns complex-valued row vector. Each vector element specifies the scattering coefficient of the corresponding scatterer. Units are dimensionless.

Dependencies

To enable this port, set the Scatterer specification parameter to Input port.

Data Types: double
Complex Number Support: Yes

Output

expand all

Received narrowband signal, returned as an M-by-Nr complex-valued matrix. The quantity M is the number of samples in the signal, and Nr is the number of receiving array elements. Each column represents the signal received by the corresponding array element.

Data Types: double
Complex Number Support: Yes

Channel response, returned as an Nt-by-Nr-by-Ns complex-valued MATLAB array. Nt is the number of transmitting array elements. Nr is the number of receiving array elements. Ns is the number of scatterers. Each page of the array corresponds to the channel response matrix for a specific scatterer.

Dependencies

To enable this port, select the Output channel response checkbox.

Data Types: double
Complex Number Support: Yes

Path delays, returned as a 1-by-Ns real-valued vector. Ns is the number of scatterers. Each element corresponds to the path time delay from the transmitting array phase center to the scatterer and then to the receiving array phase center.

Dependencies

To enable this port, select the Output channel response checkbox.

Data Types: double

Parameters

expand all

Main Tab

Signal propagation speed, specified as a real-valued positive scalar. The default value of the speed of light is the value returned by physconst('LightSpeed').

Data Types: double

Signal carrier frequency, specified as a positive real-valued scalar. Units are in hertz.

Data Types: double

Select this parameter to enable to add signal attenuation caused by atmospheric gases, rain, fog, or clouds. When you select this parameter, the Temperature (degrees Celsius), Dry air pressure (Pa), Water vapour density (g/m^3), Liquid water density (g/m^3), and Rain rate (mm/hr) parameters appear in the dialog box.

Data Types: Boolean

Ambient temperature, specified as a real-valued scalar. Units are in degrees Celsius.

Dependencies

To enable this parameter, select the Specify atmospheric parameters checkbox.

Data Types: double

Atmospheric dry air pressure, specified as a positive real-valued scalar. Units are in pascals (Pa). The default value of this parameter corresponds to one standard atmosphere.

Dependencies

To enable this parameter, select the Specify atmospheric parameters checkbox.

Data Types: double

Atmospheric water vapor density, specified as a positive real-valued scalar. Units are in g/m3.

Dependencies

To enable this parameter, select the Specify atmospheric parameters checkbox.

Data Types: datetime

Liquid water density of fog or clouds, specified as a nonnegative real-valued scalar. Units are in g/m3. Typical values for liquid water density are 0.05 for medium fog and 0.5 for thick fog.

Dependencies

To enable this parameter, select the Specify atmospheric parameters checkbox.

Data Types: double

Rainfall rate, specified as a nonnegative real-valued scalar. Units are in mm/hr.

Dependencies

To enable this parameter, select the Specify atmospheric parameters checkbox.

Data Types: double

Select this parameter to inherit the sample rate from upstream blocks. Otherwise, specify the sample rate using the Sample rate (Hz) parameter.

Data Types: Boolean

Specify the signal sampling rate as a positive scalar. Units are in Hz.

Dependencies

To enable this parameter, clear the Inherit sample rate parameter.

Data Types: double

Select this check box to enable signal propagation along the line-of-sight direct path from the transmitting array to the receiving array with no scattering.

Data Types: Boolean

The maximum signal delay, specified as a positive scalar. Delays greater than this value are ignored.

Data Types: double

Select this checkbox to output the channel response and time delay via the output ports CS and Tau.

Data Types: Boolean

Block simulation, specified as Interpreted Execution or Code Generation. If you want your block to use the MATLAB interpreter, choose Interpreted Execution. If you want your block to run as compiled code, choose Code Generation. Compiled code requires time to compile but usually runs faster.

Interpreted execution is useful when you are developing and tuning a model. The block runs the underlying System object™ in MATLAB. You can change and execute your model quickly. When you are satisfied with your results, you can then run the block using Code Generation. Long simulations run faster than in interpreted execution. You can run repeated executions without recompiling. However, if you change any block parameters, then the block automatically recompiles before execution.

When setting this parameter, you must take into account the overall model simulation mode. The table shows how the Simulate using parameter interacts with the overall simulation mode.

When the Simulink® model is in Accelerator mode, the block mode specified using Simulate using overrides the simulation mode.

Acceleration Modes

Block SimulationSimulation Behavior
NormalAcceleratorRapid Accelerator
Interpreted ExecutionThe block executes using the MATLAB interpreter.The block executes using the MATLAB interpreter.Creates a standalone executable from the model.
Code GenerationThe block is compiled.All blocks in the model are compiled.
For more information, see Choosing a Simulation Mode (Simulink) from the Simulink documentation.

Data Types: char

Transmit and Receive Array Tabs

Method to specify array, specified as Array (no subarrays) or MATLAB expression.

  • Array (no subarrays) — use the block parameters to specify the array.

  • MATLAB expression — create the array using a MATLAB expression.

MATLAB expression used to create an array, specified as a valid Phased Array System Toolbox array System object.

Example: phased.URA('Size',[5,3])

Dependencies

To enable this parameter, set Specify sensor array as to MATLAB expression.

Element Parameters

Antenna or microphone type, specified as one of the following:

  • Isotropic Antenna

  • Cosine Antenna

  • Custom Antenna

  • Omni Microphone

  • Custom Microphone

Specify the operating frequency range of the antenna or microphone element as a 1-by-2 row vector in the form [LowerBound,UpperBound]. The element has no response outside this frequency range. Frequency units are in Hz.

Dependencies

To enable this parameter, set Element type to Isotropic Antenna, Cosine Antenna, or Omni Microphone.

Specify the frequencies at which to set antenna and microphone frequency responses as a 1-by-L row vector of increasing real values. The antenna or microphone element has no response outside the frequency range specified by the minimum and maximum elements of this vector. Frequency units are in Hz.

Dependencies

To enable this parameter, set Element type to Custom Antenna or Custom Microphone. Use Frequency responses (dB) to set the responses at these frequencies.

Select this checkbox to baffle the back response of the element. When backbaffled, the responses at all azimuth angles beyond ±90° from broadside are set to zero. The broadside direction is 0° azimuth angle and 0° elevation angle.

Dependencies

To enable this checkbox, set Element type to Isotropic Antenna or Omni Microphone.

Specify the exponents of the cosine pattern as a nonnegative scalar or a real-valued 1-by-2 matrix of nonnegative values. When you set Exponent of cosine pattern to a 1-by-2 vector, the first element is the exponent for the azimuth direction cosine pattern, and the second element is the exponent for the elevation direction cosine pattern. When you set this parameter to a scalar, both the azimuth direction cosine pattern and the elevation direction cosine pattern are raised to the same power.

Dependencies

To enable this parameter, set Element type to Cosine Antenna.

Frequency response of a custom antenna or custom microphone for the frequencies defined by the Operating frequency vector (Hz) parameter. The dimensions of Frequency responses (dB) must match the dimensions of the vector specified by the Operating frequency vector (Hz) parameter.

Dependencies

To enable this parameter , set Element type to Custom Antenna or Custom Microphone.

Specify the azimuth angles at which to calculate the antenna radiation pattern as a 1-by-P row vector. P must be greater than 2. Azimuth angles must lie between –180° and 180°, inclusive, and be in strictly increasing order.

Dependencies

To enable this parameter, set Element type to Custom Antenna.

Specify the elevation angles at which to compute the radiation pattern as a 1-by-Q vector. Q must be greater than 2. Angle units are in degrees. Elevation angles must lie between –90° and 90°, inclusive, and be in strictly increasing order.

Dependencies

To enable this parameter, set Element type to Custom Antenna.

Magnitude of the combined antenna radiation pattern, specified as a Q-by-P matrix or a Q-by-P-by-L array. The quantity Q equals the length of the vector specified by Elevation angles (deg). The quantity P equals length of the vector specified by Azimuth angles (deg). The quantity L equal the length of the Operating frequency vector (Hz).

  • If this parameter is a Q-by-P matrix, the same pattern is applied to all frequencies specified in the Operating frequency vector (Hz) parameter.

  • If the value is a Q-by-P-by-L array, each Q-by-P page of the array specifies a pattern for the corresponding frequency specified in the Operating frequency vector (Hz) parameter.

Dependencies

To enable this parameter, set Element type to Custom Antenna.

Phase of the combined antenna radiation pattern, specified as a Q-by-P matrix or a Q-by-P-by-L array. The quantity Q equals the length of the vector specified by Elevation angles (deg). The quantity P equals length of the vector specified by Azimuth angles (deg). The quantity L equal the length of the Operating frequency vector (Hz).

  • If this parameter is a Q-by-P matrix, the same pattern is applied to all frequencies specified in the Operating frequency vector (Hz) parameter.

  • If the value is a Q-by-P-by-L array, each Q-by-P page of the array specifies a pattern for the corresponding frequency specified in the Operating frequency vector (Hz) parameter.

Dependencies

To enable this parameter, set Element type to Custom Antenna.

Response frequencies of the custom microphone of the polar pattern, specified as a real scalar or real-valued 1-by-L vector. The response frequencies lie within the frequency range specified by the Operating frequency vector (Hz) vector.

Dependencies

To enable this parameter, set Element type is set to Custom Microphone.

Specify the polar pattern response angles, as a 1-by-P vector. The angles are measured from the central pickup axis of the microphone and must be between –180° and 180°, inclusive.

Dependencies

To enable this parameter, set Element type to Custom Microphone.

Specify the magnitude of the custom microphone element polar patterns as an L-by-P matrix. L is the number of frequencies specified in Polar pattern frequencies (Hz). P is the number of angles specified in Polar pattern angles (deg). Each row of the matrix represents the magnitude of the polar pattern measured at the corresponding frequency specified in Polar pattern frequencies (Hz) and all angles specified in Polar pattern angles (deg). Assume that the pattern is measured in the azimuth plane. In the azimuth plane, the elevation angle is 0° and the central pickup axis is 0° degrees azimuth and 0° degrees elevation. Assume also that the polar pattern is symmetric around the central axis. You can construct the microphone’s response pattern in 3-D space from the polar pattern.

Dependencies

To enable this parameter, set Element type to Custom Microphone.

Array Parameters

Array geometry, specified as one of

  • ULA — Uniform linear array

  • URA — Uniform rectangular array

  • UCA — Uniform circular array

  • Conformal Array — arbitrary element positions

The number of array elements for ULA or UCA arrays, specified as an integer greater than or equal to 2.

Dependencies

To enable this parameter, set Geometry to ULA or UCA.

Spacing between adjacent array elements:

  • ULA — specify the spacing between two adjacent elements in the array as a positive scalar.

  • URA — specify the spacing as a positive scalar or a 1-by-2 vector of positive values. If Element spacing (m) is a scalar, the row and column spacings are equal. If Element spacing (m) is a vector, the vector has the form [SpacingBetweenArrayRows,SpacingBetweenArrayColumns].

Dependencies

To enable this parameter, set Geometry to ULA or URA.

Linear axis direction of ULA, specified as y, x, or z. All ULA array elements are uniformly spaced along this axis in the local array coordinate system.

Dependencies

To enable this parameter, set Geometry to ULA. This parameter is also enabled when the block supports only ULA arrays.

Dimensions of a URA array, specified as a positive integer or 1-by-2 vector of positive integers.

  • If Array size is a 1-by-2 vector, the vector has the form [NumberOfArrayRows,NumberOfArrayColumns].

  • If Array size is an integer, the array has the same number of elements in each row and column.

For a URA, array elements are indexed from top to bottom along a column, and continuing to the next columns from left to right. In this figure, the Array size value of [3,2] creates an array having three rows and two columns.

Dependencies

To enable this parameter, set Geometry to URA.

Lattice of URA element positions, specified as Rectangular or Triangular.

  • Rectangular — Aligns all the elements in row and column directions.

  • Triangular — Shifts the even-row elements of a rectangular lattice toward the positive row-axis direction. The displacement is one-half the element spacing along the row dimension.

Dependencies

To enable this parameter, set Geometry to URA.

Array normal direction, specified as x, y, or z.

Elements of planar arrays lie in a plane orthogonal to the selected array normal direction. Element boresight directions point along the array normal direction.

Array Normal Parameter ValueElement Positions and Boresight Directions
xArray elements lie in the yz-plane. All element boresight vectors point along the x-axis.
yArray elements lie in the zx-plane. All element boresight vectors point along the y-axis.
zArray elements lie in the xy-plane. All element boresight vectors point along the z-axis.

Dependencies

To enable this parameter, set Geometryto URA or UCA.

Radius of UCA array, specified as a positive scalar.

Dependencies

To enable this parameter, set Geometry to UCA.

Positions of the elements in a conformal array, specified as a 3-by-N matrix of real values, where N is the number of elements in the conformal array. Each column of this matrix represents the position [x;y;z]of an array element in the array local coordinate system. The origin of the local coordinate system is (0,0,0). Units are in meters.

Dependencies

To enable this parameter set Geometry to Conformal Array.

Data Types: double

Direction of element normal vectors in a conformal array, specified as a 2-by-1 column vector or a 2-by-N matrix. N indicates the number of elements in the array. If the parameter value is a matrix, each column specifies the normal direction of the corresponding element in the form [azimuth;elevation] with respect to the local coordinate system. The local coordinate system aligns the positive x-axis with the direction normal to the conformal array. If the parameter value is a 2-by-1 column vector, the same pointing direction is used for all array elements.

You can use the Element positions (m) and Element normals (deg) parameters to represent any arrangement in which pairs of elements differ by certain transformations. The transformations can combine translation, azimuth rotation, and elevation rotation. However, you cannot use transformations that require rotation about the normal direction.

To enable this parameter, set Geometry to Conformal Array.

Data Types: double

Specify element tapering as a complex-valued scalar or a complex-valued 1-by-N row vector. In this vector, N represents the number of elements in the array.

Also known as element weights, tapers multiply the array element responses. Tapers modify both amplitude and phase of the response to reduce sidelobes or steer the main response axis.

If Taper is a scalar, the same weight is applied to each element. If Taper is a vector, a weight from the vector is applied to the corresponding sensor element. The number of weights must match the number of elements of the array.

Data Types: double

Motion Tab

Source of transmitting array motion parameters, specified as Property or Input port.

  • When you select Property, specify the array location and orientation using the Position of the transmit array (m) and Orientation of the transmit array parameters. The array is stationary.

  • When you select Input port, specify the array location, velocity, and orientation using the TxPos, TxVel, and TxAxes input ports of the block.

Data Types: char

The position of the transmitting array phase center, specified as a real-valued, 3-by-1 vector in Cartesian form [x;y;z] with respect to the global coordinate system. Units are in meters.

Dependencies

To enable this parameter, set the Source of transmit array motion parameter to Property.

Data Types: double

The orientation of transmitting array, specified as a real-valued, 3-by-3 orthonormal matrix. The matrix specifies the directions of the three axes that define the local coordinate system of the array with respect to the global coordinate system. The columns of the array correspond to the x, y, and z axes, respectively.

Dependencies

To enable this parameter, set the Source of transmit array motion parameter to Property.

Data Types: double

Source of receiving array motion parameters, specified as Property or Input port.

  • When you select Property, specify the array location and orientation using the Position of the receive array (m) and Orientation of the receive array parameters. The array is stationary.

  • When you select Input port, specify the array location, velocity, and orientation using the RxPos, RxVel, and RxAxes input ports of the block.

Data Types: char

The position of the receiving array phase center, specified as a real-valued, 3-by-1 vector in Cartesian form [x;y;z] with respect to the global coordinate system. Units are in meters.

Dependencies

To enable this parameter, set the Source of receive array motion parameter to Property.

Data Types: double

The orientation of receiving array, specified as a real-valued, 3-by-3 orthonormal matrix. The matrix specifies the directions of the three axes that define the local coordinate system of the array with respect to the global coordinate system. The columns of the array correspond to the x, y, and z axes, respectively.

Dependencies

To enable this parameter, set the Source of receive array motion parameter to Property.

Data Types: double

The source of scatterer parameters, specified as Auto, Property, or Input port.

  • When you set this parameter to Auto, all scatterer positions and coefficients are randomly generated. Scatterer velocities are zero. The generated positions are contained within the region set by the Boundary of scatterer positions parameter. Set the number of scatterers using the Number of scatterers parameter.

  • When you set this property to Property, set the scatterer positions using the Positions of scatterers (m) parameter. Set the scattering coefficients using the Scattering coefficients parameter. Scatterer velocities are zero.

  • When you set this parameter to Input port, you specify the scatterer positions, velocities, and scattering coefficients using the ScatPos, ScatVel, and ScatCoef block input ports.

Data Types: char

The number of scatterers, specified as a nonnegative integer.

Dependencies

To enable this property, set the Scatterer specification parameter to Auto.

Data Types: double

The boundary scatterer positions, specified as a 1-by-2 real-valued row vector or a 3-by-2 real-valued matrix. If the boundary is a 1-by-2 row vector, the vector contains the minimum and maximum, [minbdry maxbdry], for all three dimensions. If the boundary is a 3-by-2 matrix, the matrix specifies boundaries in all three dimensions in the form [x_minbdry x_maxbdry;y_minbdry y_maxbdry; z_minbdry z_maxbdry].

Dependencies

To enable this property, set the Scatterer specification parameter to Auto.

Data Types: double

The positions of the scatterers, specified as real-valued 3-by-Ns matrix. Ns is the number of scatterers. Each column represents a different scatterer and has the Cartesian form [x;y;z] with respect to the global coordinate system. Units are in meters.

Dependencies

To enable this property, set the Scatterer specification parameter to Property.

Data Types: double

Scattering coefficients, specified as a complex-valued 1-by-Ns vector. Ns is the number of scatterers. Units are dimensionless.

Dependencies

To enable this property, set the Scatterer specification parameter to Property.

Data Types: double
Complex Number Support: Yes

See Also

System Objects

Introduced in R2017a

Was this topic helpful?