# Array Analysis | XFdtd

Generate a CDF of the effective isotropic radiated power.

The Array Analysis script optimizes input phases for arrays or subarrays in order to obtain the maximum possible realized gain in a set of user-defined directions, then plots the cumulative distribution function (CDF) of EIRP for the array configurations.

## Prerequisites

In order for the script to function properly, users must follow the standard project setup steps for analyzing an antenna in XF:

• Excite each antenna array element with a circuit component—either lumped or distributed.
• Define a 3-D far zone sensor with either a maximum of five-degree spacing, or the recommended one-degree spacing.
• Request S-parameters and select all ports when creating the simulation.
• Specify one or more steady-state frequencies when creating the simulation.
• Wait for the simulation to complete.

When analyzing subarrays, enable S-parameters for the ports in all subarrays in a single simulation. For example, a device with two 8-element arrays should be simulated with all 16 elements.

## Initial Steps

Each workflow begins with the same eight steps for running the script. These initial instructions must then be followed by the steps associated with the appropriate workflow section below.

If a script is used often and users want to make it available to all projects, they can do so by adding the script to the macros folder and accessing it through the menu at the top of the user interface.

Make the script accessible within the XF project.

2. Right-click on Scripts in the Project Tree and select Import Scripts.

Once the script is available, select a result.

1. Open the Results browser.
2. In the bottom portion of the window, select a single far zone pattern associated with the desired simulation.
3. Right-click on the imported script in the Project Tree and select Execute.

Once the script is executed, a window opens where inputs must be provided.

1. Verify that the Base Information matches the project and simulation to ensure data was loaded correctly.

Beamforming is accomplished by varying the phase at individual ports, and there is a discrete number of phases available to each port based on the hardware that is feeding it.

1. Enter the Allowable Port Phases values.

Devices support a limited number of beams. Entering $n$ specific beam angles will cause the script to find $n$ beams that maximize realized gain at each specified angle. Alternatively, the ideal case can be analyzed that finds a maximum gain for each available far zone angle specified in the sensor.

1. Set the Beams to be identified.

## Standard Workflow

The standard workflow is applied when all antenna elements operate together in order to generate a single beam. This is often the case with phased arrays where there is a one to one relationship between radiating antenna elements and their feeding circuit components. An 8-element phased array antenna is used as an example.

After the initial steps have been completed, the Ports section lists all of the circuit component ports from the S-parameter simulation along with the project's component name in parentheses.

1. Click Select All.
2. Click Define Selected Ports as an Array.

The script adds Array 1 under the Arrays section. It contains ports 1 through 8, indicating that the ports operate together for beamsteering.

1. Enter the Total Available Power to Array 1.
2. Click Create CDF of Composite EIRP for Selected Arrays.

The script adds CDF 1 under the CDFs section.

1. Use the drop-down arrow to choose which graph to add the CDF result to.
2. Click OK.

The script finds the optimal gain pattern for each beam angle specified in step eight, and then computes the array's CDF and adds it to a graph in the Project Tree.

## Spatial Diversity Workflow

This spatial diversity workflow is applied when two or more arrays are used to increase reception over a wider range of angles. Similar to a diversity antenna in 4G, a device can choose between arrays based on which receives a stronger signal. A smart phone containing two 8-element phased array antennas is used as an example.

After the initial steps have been completed, the Ports section lists all of the circuit component ports from the S-parameter simulation along with the project's component name in parentheses.

1. Check Port 1 through Port 8 to specify the array on the device's left side.
2. Click Define Selected Ports as an Array.
3. Click Select None.
4. Check Port 9 to Port 16 to specify the array on the device's right side.
5. Click Define Selected Ports as an Array.

The script adds both Array 1 and Array 2 under the Arrays section. This indicates that ports 1 through 8 operate together for beamsteering, as do ports 9 through 16.

1. Enter the Total Available Power to Array 1.
2. Enter the Total Available Power to Array 2.
3. Check both Array 1 and Array 2.
4. Click Create CDF of Composite EIRP for Selected Arrays.

The script adds CDF 1 under the CDFs section. Both arrays are included in CDF 1, indicating that the radiation patterns from both beams should be considered when determining the highest gain value for a specific far field direction.

1. Use the drop-down arrow to choose which graph to add the CDF result to.
2. Click OK.

Similar to the standard workflow, the script finds the optimal gain pattern for each beam angle specified in step eight. Here, however, it determines the optimal patterns for two arrays. The script considers both sets of optimal gain patterns when determining the CDF and adds the result to a graph in the Project Tree.

## Dual-Polarization Workflow

This dual-polarization workflow is applied to dual-polarized antenna arrays when each antenna element is fed with two feeds: one for horizontal and one for vertical polarization. Depending on the operation of the device, the antenna array may support two concurrent data streams where it receives both a horizontally polarized and vertically polarized signal. In this case, each array's CDF is analyzed independently. Alternatively, the device may receive a single data stream on either the horizontal or vertical polarization. In this case, polarization diversity is analyzed using the composite array CDF similar to the spatial diversity workflow. A 4-element phased array antenna with eight feeds is used as an example.

After the initial steps have been completed, the Ports section lists all of the circuit component ports from the S-parameter simulation along with the project's component name in parentheses.

1. Check Port 1 through Port 4 to specify the ports that generate a horizontally polarized signal.
2. Click Define Selected Ports as an Array.
3. Click Select None.
4. Check Port 5 through Port 8 to specify the ports which generate a vertically polarized signal.
5. Click Define Selected Ports as an Array.

The script adds both Array 1 and Array 2 under the Arrays section. This indicates that ports 1 through 4 operate together for beamsteering, as do ports 5 through 9.

1. Enter the Total Available Power to Array 1.
2. Enter the Total Available Power to Array 2.
3. Check Array 1 and uncheck Array 2.
4. Click Create CDF of Composite EIRP for Selected Arrays.
5. Check Array 2 and uncheck Array 1.
6. Click Create CDF of Composite EIRP for Selected Arrays.
7. Check both Array 1 and Array 2.
8. Click Create CDF of Composite EIRP for Selected Arrays.

The script adds the three CDFs under the CDFs section. CDF 1 and CDF 2 generate a plot for horizontal and vertical polarized antenna arrays, respectively. Both arrays are included in CDF 3, indicating that the radiation patterns from both beams should be considered when determining the highest gain value for a specific far field direction for polarization diversity.

1. Use the drop-down arrow to choose which graph to add the CDF result to.
2. Click OK.

Similar to the standard workflow, the script finds the optimal gain pattern for each beam angle specified in step eight. Here, however, it determines the optimal patterns for two arrays. CDFs for array one, array two, and their composite result will be determined and added to a graph in the Project Tree.

## Subarray Workflow

This subarray workflow is applied when a large array can be divided into subarrays, each of which operates independently. A 5G base station that supports multi-user MIMO (MU-MIMO) is one application of this. In this example, the antenna contains 16 elements that can be separated in to 4-element subarrays.

After the initial steps have been completed, the Ports section lists all of the circuit component ports from the S-parameter simulation along with the project's component name in parentheses.

1. Check ports 1 through 4 associated with the first subarray.
2. Click Define Selected Ports as an Array.
3. Click Select None.
4. Check ports 5 through 8 associated with the second subarray.
5. Click Define Selected Ports as an Array.
6. Click Select None.
7. Check ports 9 through 12 associated with the second subarray.
8. Click Define Selected Ports as an Array.
9. Click Select None.
10. Check ports 13 through 16 associated with the second subarray.
11. Click Define Selected Ports as an Array.

The script adds the four arrays under the Arrays section. This indicates that the four ports in each array operate together for beamsteering and each array is independent of the other three.

1. Set the available power to each array.
2. Check Array 1 and uncheck others.
3. Click Create CDF of Composite EIRP for Selected Arrays.
4. Check Array 2 and uncheck Array 1.
5. Click Create CDF of Composite EIRP for Selected Arrays.
6. Check Array 3 and uncheck Array 2.
7. Click Create CDF of Composite EIRP for Selected Arrays.
8. Check Array 4 and uncheck Array 3.
9. Click Create CDF of Composite EIRP for Selected Arrays.

The script adds the four CDFs under the CDFs section. One array is included in each CDF, indicating that each array will be evaluated independently of the others.

1. Use the drop-down arrow to choose which graph to add the CDF result to.
2. Click OK.

Similar to the standard workflow, the script finds the optimal gain pattern for each beam angle specified in step eight. Here, however, there are four CDFs to compute rather than just one. Each CDF result is added to a graph in the Project Tree.