A method of beamfocusing and nulling signals, the method comprising: determining a first vector x representing signals received at each of a plurality of antennas (101-104); determining a weight vector w based on the first vector, a desired nulling location , and a desired beamfocusing location , wherein determining the weight vector comprises generating a covariance matrix using the first vector x and a Hermitian transpose x H of the first vector, defining a complex vector b representing magnitude and phase of a signal received at each antenna from the desired beamfocusing location, defining a complex vector n representing magnitude and phase of signals transmitted from each antenna to the desired nulling location, and determining the weight vector w according to w = R − 1 b / b H R − 1 b , wherein R = x x H + G nd n n H , b H denotes a Hermetian transpose of b, G nd denotes an inverse of a desired nulling depth, and n H denotes a Hermetian transpose of n; and applying the weight vector to signals at the plurality of antennas (101-104), wherein applying the weight vector to the signals at the plurality of antennas comprises multiplying signals transmitted or received by the plurality of antennas by the weight vector, thereby achieving beamfocusing at the desired beamfocusing location and nulling at the desired nulling location. determining a first vector x representing signals received at each of a plurality of antennas (101-104); determining a weight vector w based on the first vector, a desired nulling location , and a desired beamfocusing location , wherein determining the weight vector comprises generating a covariance matrix using the first vector x and a Hermitian transpose x H of the first vector, defining a complex vector b representing magnitude and phase of a signal received at each antenna from the desired beamfocusing location, defining a complex vector n representing magnitude and phase of signals transmitted from each antenna to the desired nulling location, and determining the weight vector w according to w = R − 1 b / b H R − 1 b , wherein R = x x H + G nd n n H , b H denotes a Hermetian transpose of b, G nd denotes an inverse of a desired nulling depth, and n H denotes a Hermetian transpose of n; and generating a covariance matrix using the first vector x and a Hermitian transpose x H of the first vector, defining a complex vector b representing magnitude and phase of a signal received at each antenna from the desired beamfocusing location, defining a complex vector n representing magnitude and phase of signals transmitted from each antenna to the desired nulling location, and determining the weight vector w according to wherein R = x x H + G nd n n H , b H denotes a Hermetian transpose of b, G nd denotes an inverse of a desired nulling depth, and n H denotes a Hermetian transpose of n; and applying the weight vector to signals at the plurality of antennas (101-104), wherein applying the weight vector to the signals at the plurality of antennas comprises multiplying signals transmitted or received by the plurality of antennas by the weight vector, thereby achieving beamfocusing at the desired beamfocusing location and nulling at the desired nulling location. <EOS>