Main Content

patternMultiply

Radiation pattern of array using pattern multiplication

Description

patternMultiply(array,frequency) plots the 3-D radiation pattern of the array over a specified frequency. patternMultiply calculates the full array pattern without taking the effect of mutual coupling between the different array elements.

example

patternMultiply(array,frequency,azimuth) plots the radiation pattern of the array for the given azimuth angles. Elevation angles retain default values.

patternMultiply(array,frequency,azimuth, elevation) plots the radiation pattern of the array for the given azimuth and elevation angles.

patternMultiply(___,Name=Value) uses additional options specified by one or more Name-Value Arguments after all the other input arguments.

example

[fieldval,azimuth,elevation] = patternMultiply(array,frequency) returns the field value such as the directivity of the lossless array in dBi or gain of the lossy array in dBi at the specified frequency. The size of the field value matrix is (number of elevation values) x (number of azimuth values).

[fieldval,azimuth,elevation] = patternMultiply(array,frequency,azimuth) returns the field value at the specified azimuth angles. Elevation angles retain default values.

[fieldval,azimuth,elevation] = patternMultiply(array,frequency,azimuth,elevation) returns the field value at the specified azimuth angles, and elevation angles.

[fieldval,azimuth,elevation] = patternMultiply(___,Name=Value) returns the field value using additional options specified by one or more name-value arguments specified after all the other input arguments.

Examples

collapse all

Plot the radiation pattern of a default rectangular array at 70 MHz. Pattern multiplication does not take into consideration the effect of mutual coupling in array elements.

h = rectangularArray;
patternMultiply(h,70e6);

Figure contains 2 axes objects and other objects of type uicontrol. Axes object 1 contains 12 objects of type patch, surface. Hidden axes object 2 contains 20 objects of type surface, line, text, patch.

Plot the radiation pattern of a 10-element linear array at 70 MHz. Visualize the pattern using the rectangular coordinate system.

l = linearArray(NumElements=10);
patternMultiply(l,70e6,CoordinateSystem="rectangular");

Figure contains an axes object and other objects of type uicontrol. The axes object with xlabel Elevation (degree), ylabel Azimuth (degree) contains an object of type surface.

Plot the radiation pattern of a rectangular array with PatternOptions using a transparency of 0.6 and a magnitude scale of [-5 5].

h = rectangularArray; 
p = PatternPlotOptions;
p.Transparency = 0.6;
p.MagnitudeScale = [-5 5];
patternMultiply(h,70e6,PatternOptions=p);

Figure contains 2 axes objects and other objects of type uicontrol. Axes object 1 contains 12 objects of type patch, surface. Hidden axes object 2 contains 20 objects of type surface, line, text, patch.

Input Arguments

collapse all

Antenna array, specified as an array object.

Example: rectangularArray

Frequency to calculate array pattern, specified as a scalar in Hz.

Example: 70e6

Data Types: double

Range of azimuth angles to plot the pattern of the array, specified as a vector in degrees.

Example: –90:5:90

Data Types: double

Range of elevation angles to plot the pattern of the array, specified as a vector in degrees.

Example: 0:1:360

Data Types: double

Name-Value Arguments

Specify optional pairs of arguments as Name1=Value1,...,NameN=ValueN, where Name is the argument name and Value is the corresponding value. Name-value arguments must appear after other arguments, but the order of the pairs does not matter.

Example: CoordinateSystem="rectangular"

Before R2021a, use commas to separate each name and value, and enclose Name in quotes.

Example: 'CoordinateSystem','rectangular'

Coordinate system of radiation pattern plot, specified as a string amongst: polar, rectangular, or uv.

Example: "rectangular"

Data Types: string

Quantity to use for pattern plot, specified as a string from amongst these:

  • directivity – Radiation intensity of antenna in dBi in a given direction

  • efield – Electric field of antenna in volt/meter

  • power – Antenna power in (Volt/meter)2

  • powerdb – Antenna power in dB

Note

For more information, refer Field Calculation in Antennas.

Example: "efield"

Data Types: string

Flag to normalize the field pattern, specified as either true or false. For directivity patterns, this property is not applicable.

Example: false

Data Types: logical

Type of field polarization, specified as a string from amongst these:

  • combined – Mix of horizontal and vertical polarization

  • H – Horizontal polarization

  • V – Vertical polarization

  • RHCP – Right-hand circular polarization

  • LHCP – Left-hand circular polarization

By default, you can visualize a combined polarization.

Example: "RHCP"

Data Types: string

Parameter to change pattern plot properties, specified as a PatternPlotOptions object. The properties of PatternPlotOptions object that you can vary are:

  • Transparency

  • SizeRatio

  • AntennaOffset

  • MagnitudeScale

Example: PatternPlotOptions(Transparency=0.1)

Output Arguments

collapse all

Array directivity or gain, returned as a matrix in dBi. The matrix size is the product of the number of elevation values and azimuth values.

Azimuth angle used to calculate field values, returned as a vector in degrees.

Elevation angles used to calculate field values, returned as a vector in degrees.

Version History

Introduced in R2017a