displaying a sinusoidal wave
이전 댓글 표시
This is for one assignment. The question is the following. Generate a time vector (tt) to cover a range of t that will exhibit approximately two cycles of the 4000 Hz sinusoids defined in the next part, part (b). Use a definition for tt similar to part 2.2(d). If we use T to denote the period of the sinusoids, define the starting time of the vector tt to be equal to −T, and the ending time as +T. Then the two cycles will include t = 0. Finally, make sure that you have at least 25 samples per period of the sinusoidal wave. In other words, when you use the colon operator to define the time vector, make the increment small enough to generate 25 samples per period.
This is my code.
if true
% code
tt = -1 : 1/4000 : 1;
y = sin( 2*pi*tt );
plot(4000*tt, y);
%<--- plot a sinusoid
title('TEST PLOT of a SINUSOID')
xlabel('frequency')
end
My problem is that I don't fully understand what a sample is so I can answer the last part. I know 1/4000 would be the sample frequency, unless I'm wrong. Can anybody explain what exactly is a sample in matlab?
I'm new to this forum.
채택된 답변
추가 답변 (2개)
Image Analyst
2012년 9월 9일
편집: Image Analyst
2012년 9월 9일
No. You're wrong. There are 4000 cycles (periods) in a second, so the period of one cycle (T) is 1/4000 of a second, not the sampling frequency. And you're supposed to have 25 samples spanning that time period. Why not use linspace:
t = linspace(-T, T, 50); % 50 samples covering two periods from -T to T.
댓글 수: 1
Image Analyst
2012년 9월 9일
편집: Image Analyst
2012년 9월 9일
Close (referring to your "Answer" below). Almost right but not quite. You should know that the equation for a cosine is cos(2 * pi * t / period). So try this:
y = cos(2*pi*tt/T);
JJ polaris
2012년 9월 9일
카테고리
도움말 센터 및 File Exchange에서 Creating and Concatenating Matrices에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!