Sparse arrays for satellite communications: from optimal design to realization