Implementation of wideband beamformer for planar array I would like to obtain a good reference (or references) on the implementation of a wideband beamformer for a small planar (rectangular) array comprised of 4 rows by 6 columns, for 24 elements in total.  This is a passive acoustic array with air-coupled microphones; the array does not transmit.  Each element in the array has the same spacing distance.  Given discrete input signals from each element, I would like to compute the beamformer/beamsteering output for a beam at a particular azimuth and elevation.  I need to be able to compute multiple beams to electronically steer the array. Is it possible to compute multiple beams all at the same time?  

I suppose that I might need to use Fourier-domain techniques involving the FFT.  Are these techniques justified for my small array?  I've found an IEEE conference paper (http://www.curtistech.co.uk/papers/wideband.pdf or http://dx.doi.org/10.1049/ic:19980121) that may deal with this technique, but how would I apply this to a 2D planar rectangular array?  I am interested in the mathematics operating on discrete signals rather than  descriptions of the process. 

Since this is an acoustic array, the elements are evenly spaced on a 4 rows by 6 columns grid.  The spacing between the elements is less than $\lambda/2$, where $\lambda$ is the minimum wavelength of the sound wave.  The wavelength range is between 3.31 cm and 331 cm.  This is a receiving array.  The target area should be in the far field of the array, but I am also wondering if it is possible to resolve signals in the near-field as well.
You need the polar response of each individual array element. That is the transfer function of each element as a function of azimuth and elevation (and potentially distance if you want to operate in the near field). For many arrays the polar function will be the same for all elements, but it doesn't hurt to check.
To calculate the polar response of the whole array you need to do the following


Create a spatial grid on which to calculate the polar response (azimuth and elevation) for the array
For each point on the grid calculate distance, azimuth and elevation of this point AS SEEN BY THE INDIVIDUAL ELEMENT. This is in essence a transformation between two different spherical coordinate systems. 
Look up the single element transfer function for this direction in the single-element polar data. This may require interpolation between measured directions
Apply this transfer function to the input signal of this individual element
Make sure to properly account for the distances. That's typically done by a factor exp(-j*w*(r-r0)), where r is the distance between grid point and element and r0 and convenient normalization distance. A good choice is the distance at which the single element polar was measured.
Some results over all elements
Repeat for all points on the target polar grid