A Julia package for antenna array factor synthesis via convex optimization. Supports LP, QP, and SOCP formulations with multiple solvers through JuMP.
Note
Docstrings are still in progress.
pkg> add https://github.com/uvegege/ArraySynthesis.jlusing ArraySynthesis
using ArraySynthesis: °, dB
using HiGHS
beam_region = region(12.5°..37.5°, 1°)
sll_region1 = region(-90°..6.5°, 1°)
sll_region2 = region(43.5°..90°, 1°)
p = pattern(shaped_beam(beam_region, 1.0, ripple = -0.6dB))
obj = MinSLL(join_regions(sll_region1, sll_region2))
array = symmetric_linear_array(32, d = 0.5)
result = synthesize(array, p, obj, ConjugateSymmetricWeights(), LP(), HiGHS.Optimizer)