# plotResponse

System object: phased.CustomMicrophoneElement
Package: phased

Plot response pattern of microphone

## Syntax

```plotResponse(H,FREQ) plotResponse(H,FREQ,Name,Value) hPlot = plotResponse(___) ```

## Description

`plotResponse(H,FREQ)` plots the element response pattern along the azimuth cut, where the elevation angle is 0. The operating frequency is specified in `FREQ`.

`plotResponse(H,FREQ,Name,Value)` plots the element response with additional options specified by one or more `Name,Value` pair arguments.

`hPlot = plotResponse(___)` returns handles of the lines or surface in the figure window, using any of the input arguments in the previous syntaxes.

## Input Arguments

 `H` Element System object™ `FREQ` Operating frequency in Hertz specified as a scalar or 1–by-K row vector. `FREQ` must lie within the range specified by the `FrequencyVector` property of `H`. If you set the `'RespCut'` property of `H` to `'3D'`, `FREQ` must be a scalar. When `FREQ` is a row vector, `plotResponse` draws multiple frequency responses on the same axes.

### 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.

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

`CutAngle`

Cut angle specified as a scalar. This argument is applicable only when `RespCut` is `'Az'` or `'El'`. If `RespCut` is `'Az'`, `CutAngle` must be between –90 and 90. If `RespCut` is `'El'`, `CutAngle` must be between –180 and 180.

Default: `0`

`Format`

Format of the plot, using one of `'Line'`, `'Polar'`, or `'UV'`. If you set `Format` to `'UV'`, `FREQ` must be a scalar.

Default: `'Line'`

`NormalizeResponse`

Set this value to `true` to normalize the response pattern. Set this value to `false` to plot the response pattern without normalizing it. This parameter is not applicable when you set the `Unit` parameter value to `'dbi'`.

Default: `true`

`OverlayFreq`

Set this value to `true` to overlay pattern cuts in a 2-D line plot. Set this value to `false` to plot pattern cuts against frequency in a 3-D waterfall plot. If this value is `false`, `FREQ` must be a vector with at least two entries.

This parameter applies only when `Format` is not `'Polar'` and RespCut is not `'3D'`.

Default: `true`

`Polarization`

Specify the polarization options for plotting the antenna response pattern. The allowable values are ```|'None' | 'Combined' | 'H' | 'V' |``` where

• `'None'` specifies plotting a nonpolarized response pattern

• `'Combined'` specifies plotting a combined polarization response pattern

• `'H'` specifies plotting the horizontal polarization response pattern

• `'V'` specifies plotting the vertical polarization response pattern

For antennas that do not support polarization, the only allowed value is `'None'`. This parameter is not applicable when you set the `Unit` parameter value to `'dbi'`.

Default: `'None'`

`RespCut`

Cut of the response. Valid values depend on `Format`, as follows:

• If `Format` is `'Line'` or `'Polar'`, the valid values of `RespCut` are `'Az'`, `'El'`, and `'3D'`. The default is `'Az'`.

• If `Format` is `'UV'`, the valid values of `RespCut` are `'U'` and `'3D'`. The default is `'U'`.

If you set `RespCut` to `'3D'`, `FREQ` must be a scalar.

`Unit`

The unit of the plot. Valid values are `'db'`, `'mag'`, `'pow'`, or `'dbi'`. This parameter determines the type of plot that is produced.

Unit valuePlot type
`db`power pattern in dB scale
`mag`field pattern
`pow`power pattern
`dbi`directivity

Default: `'db'`

`AzimuthAngles`

Azimuth angles for plotting element response, specified as a row vector. The `AzimuthAngles` parameter sets the display range and resolution of azimuth angles for visualizing the radiation pattern. This parameter is allowed only when the `RespCut` parameter is set to `'Az'` or `'3D'` and the `Format` parameter is set to `'Line'` or `'Polar'`. The values of azimuth angles should lie between –180° and 180° and must be in nondecreasing order. When you set the `RespCut` parameter to `'3D'`, you can set the `AzimuthAngles` and `ElevationAngles` parameters simultaneously.

Default: `[-180:180]`

`ElevationAngles`

Elevation angles for plotting element response, specified as a row vector. The `ElevationAngles` parameter sets the display range and resolution of elevation angles for visualizing the radiation pattern. This parameter is allowed only when the `RespCut` parameter is set to `'El'` or `'3D'` and the `Format` parameter is set to `'Line'` or `'Polar'`. The values of elevation angles should lie between –90° and 90° and must be in nondecreasing order. When you set the `RespCut` parameter to `'3D'`, you can set the `ElevationAngles` and `AzimuthAngles` parameters simultaneously.

Default: `[-90:90]`

`UGrid`

U coordinate values for plotting element response, specified as a row vector. The `UGrid` parameter sets the display range and resolution of the U coordinates for visualizing the radiation pattern in U/V space. This parameter is allowed only when the `Format` parameter is set to `'UV'` and the `RespCut` parameter is set to `'U'` or `'3D'`. The values of `UGrid` should be between –1 and 1 and should be specified in nondecreasing order. You can set the `UGrid` and `VGrid` parameters simultaneously.

Default: `[-1:0.01:1]`

`VGrid`

V coordinate values for plotting element response, specified as a row vector. The `VGrid` parameter sets the display range and resolution of the V coordinates for visualizing the radiation pattern in U/V space. This parameter is allowed only when the `Format` parameter is set to `'UV'` and the `RespCut` parameter is set to `'3D'`. The values of `VGrid` should be between –1 and 1 and should be specified in nondecreasing order. You can set the `VGrid` and `UGrid` parameters simultaneously.

Default: `[-1:0.01:1]`

## Examples

expand all

Design a cardioid microphone to operate in the frequency range between 500 and 1000 Hz.

```h = phased.CustomMicrophoneElement; h.PolarPatternFrequencies = [500 1000]; h.PolarPattern = mag2db([... 0.5+0.5*cosd(h.PolarPatternAngles);... 0.6+0.4*cosd(h.PolarPatternAngles)]);```

Display a polar plot of an azimuth cut of the response at 500 Hz and 1000 Hz.

```fc = 500; plotResponse(h,[fc 2*fc],'RespCut','Az','Format','Polar');```

Plot the directivity as a line plot for the same two frequencies.

`plotResponse(h,[fc 2*fc],'RespCut','Az','Format','Line','Unit','dbi');`

Plot a $u$-cut of the response of a custom cardioid microphone that is designed to operate in the frequency range 500-1000 Hz.

Create a cardioid microphone.

```h = phased.CustomMicrophoneElement; h.PolarPatternFrequencies = [500 1000]; h.PolarPattern = mag2db([... 0.5+0.5*cosd(h.PolarPatternAngles);... 0.6+0.4*cosd(h.PolarPatternAngles)]);```

Plot the response.

```fc = 500; plotResponse(h,fc,'Format','UV');```

Plot the 3-D response of a custom cardioid microphone in space but with both the azimuth and elevation angles restricted to the range -40 to 40 degrees in 0.1 degree increments.

Create a custom microphone element with a cardioid pattern.

```h = phased.CustomMicrophoneElement; h.PolarPatternFrequencies = [500 1000]; h.PolarPattern = mag2db([... 0.5+0.5*cosd(h.PolarPatternAngles);... 0.6+0.4*cosd(h.PolarPatternAngles)]);```

Plot the 3-D response.

```fc = 500; plotResponse(h,fc,'Format','polar','RespCut','3D',... 'Unit','mag','AzimuthAngles',[-40:0.1:40],... 'ElevationAngles',[-40:0.1:40]);```