Incorrect Dimensions for Matrix Multiplication in DFT script

I'm writing a DFT script and I keep running up agains this problem where my matrix multiplication is erroring out due to their matrix sizes. One is 1x1000 and the other is 500 x 500.
Here is the code below.
clc;
clear all;
close all;
t = 0:1/100:10-1/100; % Time vector
xn = 5 + 2*cos(2*pi*t-pi/2) + 3*cos(2*pi*4*t); %Signal in Time domain
N = 500; % length of data points
for k=0:N-1
for n=0:N-1
Wn=exp(-j*2*pi*k*n/N);
X1(k+1,n+1)=Wn;
end
end
Xk = X1*xn';

 채택된 답변

KALYAN ACHARJYA
KALYAN ACHARJYA 2019년 7월 16일
편집: KALYAN ACHARJYA 2019년 7월 16일
What I did?
For matrix multiplication, the number of columns in first matrix must be equal to the number of rows in second matrix, hence I try to satisfy the issue by changing N=500 to N=1000
t = 0:1/100:10-1/100; % Time vector
xn = 5 + 2*cos(2*pi*t-pi/2) + 3*cos(2*pi*4*t); %Signal in Time domain
N = 1000; % length of data points
X1=zeros(N,N);
for k=0:N-1
for n=0:N-1
Wn=exp(-j*2*pi*k*n/N);
X1(k+1,n+1)=Wn;
end
end
Xk=X1*xn';

댓글 수: 2

Preallocate X1.
KALYAN ACHARJYA
KALYAN ACHARJYA 2019년 7월 16일
편집: KALYAN ACHARJYA 2019년 7월 16일
#Edited @Madhan I am Sorry, ohh God..I missed it again. Thanks

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Community Treasure Hunt

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

Start Hunting!

Translated by