if (ff):
// unit vectors pointing towards sources
p = (X - self.center)
p /= np.linalg.norm(p)
// The projected microphone distances on the unit vectors
D = np.dot(self.R.T, p)
// subtract minimum in each column
D -= np.min(D)
else:
D = distance(self.R, X)
phase = np.exp(-1j * omega * D / constants.get("c"))
if attn:
// TO DO 1: This will mean slightly different absolute value for
// every entry, even within the same steering vector. Perhaps a