Ordnerstruktur
This commit is contained in:
@@ -87,6 +87,53 @@ classdef Signal_test < IMDDTestCase
|
||||
testCase.verifyEqual(height(sig.logbook), 1);
|
||||
end
|
||||
|
||||
function spectrumCanUseSamplingRateNormalizedFrequencyAxis(testCase)
|
||||
fig = figure("Visible", "off");
|
||||
cleanup = onCleanup(@() close(fig));
|
||||
fignum = fig.Number;
|
||||
|
||||
sig = Signal(randn(4096, 1), "fs", 8e9);
|
||||
|
||||
sig.spectrum( ...
|
||||
"fignum", fignum, ...
|
||||
"normalizeToSamplingRate", 1, ...
|
||||
"normalizeTo0dB", 1, ...
|
||||
"fft_length", 512);
|
||||
|
||||
ax = findobj(fig, "Type", "Axes");
|
||||
lineObj = findobj(ax, "Type", "Line");
|
||||
|
||||
testCase.verifyEqual(ax.XLim, [-0.5 0.5], "AbsTol", 1e-12);
|
||||
testCase.verifyEqual(string(ax.XLabel.String), "Normalized Frequency f/fs");
|
||||
testCase.verifyGreaterThanOrEqual(min(lineObj.XData), -0.5);
|
||||
testCase.verifyLessThanOrEqual(max(lineObj.XData), 0.5);
|
||||
testCase.verifyLessThanOrEqual(abs(min(lineObj.XData) + 0.5), 1/512);
|
||||
testCase.verifyLessThanOrEqual(abs(max(lineObj.XData) - 0.5), 1/512);
|
||||
end
|
||||
|
||||
function spectrumCanShowOneSidedSamplingRateNormalizedAxis(testCase)
|
||||
fig = figure("Visible", "off");
|
||||
cleanup = onCleanup(@() close(fig));
|
||||
fignum = fig.Number;
|
||||
|
||||
sig = Signal(randn(4096, 1), "fs", 8e9);
|
||||
|
||||
sig.spectrum( ...
|
||||
"fignum", fignum, ...
|
||||
"normalizeToSamplingRate", 1, ...
|
||||
"show_onesided", true, ...
|
||||
"normalizeTo0dB", 1, ...
|
||||
"fft_length", 512);
|
||||
|
||||
ax = findobj(fig, "Type", "Axes");
|
||||
lineObj = findobj(ax, "Type", "Line");
|
||||
|
||||
testCase.verifyEqual(ax.XLim, [0 0.5], "AbsTol", 1e-12);
|
||||
testCase.verifyGreaterThanOrEqual(min(lineObj.XData), 0);
|
||||
testCase.verifyLessThanOrEqual(max(lineObj.XData), 0.5);
|
||||
testCase.verifyLessThanOrEqual(abs(max(lineObj.XData) - 0.5), 1/512);
|
||||
end
|
||||
|
||||
function castingRoundTripPreservesSignalThroughAllDomains(testCase)
|
||||
infoIn = Informationsignal([0; 1; 1; 0]);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user