Beamforming is done with an array of sensors to achieve a directional or spatially-specific response by using a model of the arriving wavefront. Real acoustic sources may deviate from the conventional plane wave or monopole model, causing decreased array gain or a total breakdown of beamforming. An alternative to beamforming with the conventional source model is presented which avoids this by using a more general source model. The proposed method defines a set of “sub-beamformers,” each designed to respond to a different spatial mode of the source. The outputs of the individual sub-beamformers are combined in a weighted sum to give an overall output of better quality than that of a conventional (monopole) beamformer. It is shown that with appropriate weighting, the optimum array gain can be achieved. A simple method is demonstrated to estimate the weighted sum, based on the observed data. The variance and bias of the estimate in the presence of noise are evaluated. Simulation and experimentally measured results are shown for a simple directive source. In the experiment, the proposed method provides an array gain of about 11 dB while beamforming using a point source model achieves only −4 dB.