System object: phased.LCMVBeamformer
Perform LCMV beamforming
Y = step(H,X)
Y = step(H,X,XT)
[Y,W] = step(___)
Y = step(H,X) performs LCMV beamforming
on the input,
X, and returns the beamformed output
X is an M-by-N matrix
where N is the number of elements of the sensor array.
a column vector of length M.
Y = step(H,X,XT) uses
the training samples to calculate the beamforming weights. This syntax
is available when you set the
XT is a P-by-N matrix,
where N is the number of elements of the sensor array. P must be greater
[Y,W] = step(___) returns the
W. This syntax is available
when you set the
WeightsOutputPort property to
a column vector of length N, where N is the number of elements in
the sensor array.
The object performs an initialization the first time the
Apply an LCMV beamformer to a 5-element ULA, preserving the signal from the desired direction.
% Simulate signal t = (0:1000)'; x = sin(2*pi*0.01*t); c = 3e8; Fc = 3e8; incidentAngle = [45; 0]; ha = phased.ULA('NumElements',5); x = collectPlaneWave(ha,x,incidentAngle,Fc,c); noise = 0.1*(randn(size(x)) + 1j*randn(size(x))); rx = x + noise; % Beamforming hstv = phased.SteeringVector('SensorArray',ha,... 'PropagationSpeed',c); hbf = phased.LCMVBeamformer; hbf.Constraint = step(hstv,Fc,incidentAngle); hbf.DesiredResponse = 1; y = step(hbf, rx);