Skip to content
Snippets Groups Projects
Commit cbb81fe8 authored by Achilles Kappis's avatar Achilles Kappis
Browse files

Changed variable name of srcCsd to Svv in obsFilt.m

parent 80575f59
No related branches found
No related tags found
1 merge request!2Update the MATLAB implementation of the optimal frequency domain observation filter
...@@ -22,10 +22,10 @@ ...@@ -22,10 +22,10 @@
% where K is the number of monitoring microphones and M is % where K is the number of monitoring microphones and M is
% the number of sources. % the number of sources.
% %
% srcCsd [numeric] (Optional): The source cross spectral density matrix. % Svv [numeric] (Optional): The source cross spectral density matrix. This
% This must be a square (MxM) symmetric matrix % must be a square (MxM) symmetric matrix with
% with the cross power spectral density of the % the cross power spectral density of the
% sources. [Default: eye(M)] % sources. [Default: eye(M)]
% %
% regFacs [numeric] (Optional): The regularisation factors used for the % regFacs [numeric] (Optional): The regularisation factors used for the
% inversion of the cross-spectra of the % inversion of the cross-spectra of the
...@@ -75,7 +75,7 @@ ...@@ -75,7 +75,7 @@
% for local active sound control" by W. Jung, S. J. Elliott and J. Cheer. % for local active sound control" by W. Jung, S. J. Elliott and J. Cheer.
% %
% -------------------------------------------------- % --------------------------------------------------
function [oOpt, Sme, Smm, condNum] = obsFilt(Pe, Pm, srcCsd, regFacs, snrVal) function [oOpt, Sme, Smm, condNum] = obsFilt(Pe, Pm, Svv, regFacs, snrVal)
% ==================================================== % ====================================================
% Check for number of arguments % Check for number of arguments
% ==================================================== % ====================================================
...@@ -90,17 +90,17 @@ function [oOpt, Sme, Smm, condNum] = obsFilt(Pe, Pm, srcCsd, regFacs, snrVal) ...@@ -90,17 +90,17 @@ function [oOpt, Sme, Smm, condNum] = obsFilt(Pe, Pm, srcCsd, regFacs, snrVal)
validateattributes(Pm, "numeric", {'nonnan', 'nonempty', 'finite'}, mfilename, "Monitoring microphone pressure", 2); validateattributes(Pm, "numeric", {'nonnan', 'nonempty', 'finite'}, mfilename, "Monitoring microphone pressure", 2);
% Validate optional arguments % Validate optional arguments
if nargin > 2 && ~isempty(srcCsd) if nargin > 2 && ~isempty(Svv)
validateattributes(srcCsd, "numeric", {'2d', 'nonnan', 'finite'}, mfilename, "Source cross spectral density matrix", 3) validateattributes(Svv, "numeric", {'2d', 'nonnan', 'finite'}, mfilename, "Source cross spectral density matrix", 3)
% Check for correct dimensions % Check for correct dimensions
if diff(size(srcCsd)) if diff(size(Svv))
error("The source power spectral density matrix must be a square matrix"); error("The source power spectral density matrix must be a square matrix");
elseif size(srcCsd, 1) ~= size(Pe, 1) elseif size(Svv, 1) ~= size(Pe, 1)
error("The number of rows of the source power spectral density matrix must be equal to the number of sources"); error("The number of rows of the source power spectral density matrix must be equal to the number of sources");
end end
else else
srcCsd = eye(size(Pe, 2)); Svv = eye(size(Pe, 2));
end end
if nargin > 3 && ~isempty(regFacs) if nargin > 3 && ~isempty(regFacs)
...@@ -134,7 +134,7 @@ function [oOpt, Sme, Smm, condNum] = obsFilt(Pe, Pm, srcCsd, regFacs, snrVal) ...@@ -134,7 +134,7 @@ function [oOpt, Sme, Smm, condNum] = obsFilt(Pe, Pm, srcCsd, regFacs, snrVal)
% Calculate optimal filters % Calculate optimal filters
% ==================================================== % ====================================================
% Calculate needed quantities % Calculate needed quantities
tmpVal = srcCsd * Pm'; tmpVal = Svv * Pm';
Sme = Pe * tmpVal; % Virtual-Monitor mics cross-spectra Sme = Pe * tmpVal; % Virtual-Monitor mics cross-spectra
Smm = Pm * tmpVal; % Monitor-Monitor mics cross-spectra Smm = Pm * tmpVal; % Monitor-Monitor mics cross-spectra
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment