how to set limits of integration (for example: 0:inf) for a vector using trapz tool ?

조회 수: 5 (최근 30일)
%defining a linear modulated signal
Fs = 1000; % Sampling frequency
T = 1/Fs; % Sample time
L = 5000; % Length of signal
t = (0:L-1)*T; % Time vector
a=chirp(t,5,max(t),20,'linear');
f=fft(a);
F=(0:L-1)/Fs;
e=trapz(F,(abs(f).^2));
%finding the average frequency
x=trapz(F,F.*abs(f).^2);
AVG=x./e
Untitled.png

채택된 답변

Daniel M
Daniel M 2019년 10월 23일
편집: Daniel M 2019년 10월 26일
Your vector of frequencies is not correct, because fft returns the negative frequencies first, followed by the positive frequencies. I suggest looking at the documentation for fft.
Otherwise, trapz will integrate over whatever values you provide it. If you want it to integrate over a certain interval, only pass those elements as inputs. You can also look into integral().
Correction: fft returns the frequencies in the following order: zeroth frequency, positive frequencies up to the Nyquist freq, followed by the negative frequencies in ascending order.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Numerical Integration and Differentiation에 대해 자세히 알아보기

제품

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by