MATLAB Answers

Incorrect Dimensions for Matrix Multiplication in DFT script

5 views (last 30 days)
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';

  0 Comments

Sign in to comment.

Accepted Answer

KALYAN ACHARJYA
KALYAN ACHARJYA on 16 Jul 2019
Edited: KALYAN ACHARJYA on 16 Jul 2019
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';

More Answers (0)