tidy3d.plugins.microwave.array_factor.AbstractAntennaArrayCalculator#

class AbstractAntennaArrayCalculator[source]#

Bases: MicrowaveBaseModel, ABC

Abstract base for phased array calculators.

Parameters:

taper (Optional[Union[RectangularTaper, RadialTaper]] = None) – Amplitude weighting of array elements to control main lobe width and suppress side lobes.

Attributes

Methods

array_factor(theta, phi, frequency)

Compute the array factor for an antenna array.

make_antenna_array(simulation)

Converts a single antenna simulation into an antenna array simulation.

monitor_data_from_array_factor(monitor_data)

Apply the array factor to the monitor data of a single antenna.

simulation_data_from_array_factor(antenna_data)

Computes the far-field data of a rectangular antenna array based on the far-field data of a single antenna.

taper#
make_antenna_array(simulation)[source]#

Converts a single antenna simulation into an antenna array simulation. This function identifies the size and position of the single antenna in the input simulation and uses this information to compute the dimensions of the resulting antenna array simulation. All structures, sources, lumped elements, and mesh override structures are duplicated, while monitors are extended in size. Only projection monitors are transferred into the resulting simulation.

For best results, the antenna assembly should be contained within the simulation bounds.

Parameters:#

simulationSimulation

The simulation specification describing a single antenna setup.

Returns:#

Simulation

The simulation specification describing the antenna array.

abstract array_factor(theta, phi, frequency)[source]#

Compute the array factor for an antenna array.

Parameters:#

thetaUnion[float, ArrayLike]

Observation angles in the elevation plane (in radians).

phiUnion[float, ArrayLike]

Observation angles in the azimuth plane (in radians).

frequencyUnion[NonNegativeFloat, ArrayLike]

Signal frequency (in Hz).

Returns:#

ArrayLike

Array factor values for each combination of theta and phi.

monitor_data_from_array_factor(monitor_data, new_monitor=None)[source]#

Apply the array factor to the monitor data of a single antenna.

Parameters:
Returns:

The monitor data of the antenna array.

Return type:

AbstractFieldProjectionData

simulation_data_from_array_factor(antenna_data)[source]#

Computes the far-field data of a rectangular antenna array based on the far-field data of a single antenna. Additionaly, it automatically converts a single antenna simulation setup into the corresponding antenna array simulation setup.

Note that any near-field monitor data will be ignored.

Parameters:

antenna_data (SimulationData) – The far-field data of a single antenna.

Returns:

The far-field data of the antenna array.

Return type:

SimulationData