T=2e-9; %กำหนดคาบ
Fs=1/T; %กำหนดความถี่
t=-T/2:T/1000:T/2; %time domain
w=linspace(Fs,2*Fs,1001); %โดเมน ความถี่
r=0; %กำหนดค่าเริ่มต้น ในการวนลูป
omega=(2*pi)/T; %กำหนดค่าคงที่ในฟังก์ชัน
for m = 1:1:1000 %สร้างลูป for เพื่อหาค่ารวมของสมการ
y = ((2/(m*pi))*sin((m*pi)/2))*cos(m*omega*t); %กำหนดสมากในการคำนวน
r = r+y; %คำสั่ง รวมค่าต่างๆ
end
f = (1/2)+r; %สมการสำเร็จ (ที่เสร็จแล้ว)
Y = fft(f) %การแปลงสมการให้อยู่ในรูป ฟูเรีย
shg %โชว์กราฟ
%สั่ง plot การฟทั้งหมด
%subplot(221);
plot(t,f);
grid
set(findobj(gca,'Type','line','Color',[0 0 1]),...
'Color','red',...
'LineWidth',2)
figure
%subplot(222);
plot(w,Y.*conj(Y));
title('tranfrom')
grid
set(findobj(gca,'Type','line','Color',[0 0 1]),...
'Color','red',...
'LineWidth',2)
อยากทราบว่า ผมแปลง ฟูเรีย และ domainต่างๆ ผิดหรือป่าวครับ เพราะ อ.บอกว่าผิด ขอความกรุณาด้วยนะครับ เพราะผมไม่เคยให้แมทแลปมาก่อน
ผมลองแปลงแล้วนะครับ แต่พอเปลี่ยนความยาว domain ของความถี่ให้มันยาวขึ้นแต่กราฟมันออกมาเหมือนเดิม ซึ่ง อ. บอกว่ามันผิด
ตรวจดูให้หน่อยนะครับว่า ผมแปลงฟูเรียของสมการคลื่น ผิดหรือป่าวครับใช้โปรแกรม MATLAB
Fs=1/T; %กำหนดความถี่
t=-T/2:T/1000:T/2; %time domain
w=linspace(Fs,2*Fs,1001); %โดเมน ความถี่
r=0; %กำหนดค่าเริ่มต้น ในการวนลูป
omega=(2*pi)/T; %กำหนดค่าคงที่ในฟังก์ชัน
for m = 1:1:1000 %สร้างลูป for เพื่อหาค่ารวมของสมการ
y = ((2/(m*pi))*sin((m*pi)/2))*cos(m*omega*t); %กำหนดสมากในการคำนวน
r = r+y; %คำสั่ง รวมค่าต่างๆ
end
f = (1/2)+r; %สมการสำเร็จ (ที่เสร็จแล้ว)
Y = fft(f) %การแปลงสมการให้อยู่ในรูป ฟูเรีย
shg %โชว์กราฟ
%สั่ง plot การฟทั้งหมด
%subplot(221);
plot(t,f);
grid
set(findobj(gca,'Type','line','Color',[0 0 1]),...
'Color','red',...
'LineWidth',2)
figure
%subplot(222);
plot(w,Y.*conj(Y));
title('tranfrom')
grid
set(findobj(gca,'Type','line','Color',[0 0 1]),...
'Color','red',...
'LineWidth',2)
อยากทราบว่า ผมแปลง ฟูเรีย และ domainต่างๆ ผิดหรือป่าวครับ เพราะ อ.บอกว่าผิด ขอความกรุณาด้วยนะครับ เพราะผมไม่เคยให้แมทแลปมาก่อน
ผมลองแปลงแล้วนะครับ แต่พอเปลี่ยนความยาว domain ของความถี่ให้มันยาวขึ้นแต่กราฟมันออกมาเหมือนเดิม ซึ่ง อ. บอกว่ามันผิด