Code covered by the BSD License  

Highlights from
What's New for Object-Oriented Programming in MATLAB Webinar - Code Examples

image thumbnail
from What's New for Object-Oriented Programming in MATLAB Webinar - Code Examples by Stuart McGarrity
Code examples used in "What's New for Object-Oriented Programming in MATLABĀ®" Webinar

[mags, fflip]=magfft(obj,zeroPadTo)
function [mags, fflip]=magfft(obj,zeroPadTo)
% MAGFFT Calculate the magnitude square of the FFT of the
% sensor array sample data, zeropadding by zeroPadTo elements
% Example:
%  result=magfft(s,128);

mag=zeros(obj.NumSamples,zeroPadTo); % Preallocate store of magnitudes
f=asin((-0.5:1/(zeroPadTo-1):0.5)*obj.Wavelength/obj.Spacing)/pi; % Frequencies
fflip=fliplr(f); % Flip frequencies

% Take the sum over each sensor array sample
for k=1:obj.NumSamples
    avbig=zeros(1,zeroPadTo);            % Zero pad
    avbig(1:obj.NumSensors)=obj.Data(1,:);
    response=fft(avbig)/zeroPadTo;       % FFT of normalized signal
    mag(k,:)=abs(fftshift(response)).^2; % Mag squared of FFT
end
mags=sum(mag);

Contact us at files@mathworks.com