Not enough input arguments
4 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I am not understanding why I am getting this error.
clear,clc
load('DATA_01_TYPE01.mat')
A = sig;
x = A(2,1:1000); %PPG channel
y=A(3,1:1000); %x-axis acceleration
t=1:1:1000;
Fs = 125;
Fn = Fs/2
[x,y]=butter(2,[0.4 5]/Fn);
d = designfilt('bandpassiir','FilterOrder',2,'HalfPowerFrequency1',0.4,'HalfPowerFrequency2',5, 'SampleRate',125);
sos = ss2sos(x,y);
N=normalize(x,y)
subplot(3,1,1)
plot(t,sos)
title('Raw Signals')
xlabel('Sampling Points')
legend('PPG','Acceleration','Location','Southeast','Orientation','Horizontal')
Command Window:
Error using ss2sos (line 78)
Not enough input arguments.
Error in Butterworth_Practice (line 33)
sos = ss2sos(x,y);
0 Kommentare
Akzeptierte Antwort
Stephen23
am 8 Nov. 2018
Bearbeitet: Stephen23
am 8 Nov. 2018
Read the documentation. The ss2sos help clearly lists all of the syntaxes that it supports, and none of them have only two input arguments: the smallest number of input arguments is four state-space matrices.
The MATLAB help even has examples, so you do not need to guess how to use functions:
[A,B,C,D] = butter(5,0.2);
sos = ss2sos(A,B,C,D)
From that you can quickly figure out that you need to get butter to return the four state-space matrices, not just the two transfer coefficients as you are doing.
3 Kommentare
Stephen23
am 9 Nov. 2018
"Ok now I am getting this error:"
Error using plot
Vectors must be the same length.
You generate sos entirely independently of t (there is absolutely no connection between them at all), so I don't see why you expect them to be the same length for plotting.
You could certainly plot sos by itself:
plot(sos)
Otherwise define t based on the size of sos.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Spectral Measurements finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!