Info

This question is closed. Reopen it to edit or answer.

What does Subscripted assignment dimension mismatch mean? I keep getting the same error?

2 views (last 30 days)
I keep getting the same error for the following code:-
Error in dct1 (line 12) d(j,k) = c*double(b(j,k));
whereby c = dctmtx(8), and is a 8 * 8 doubles matrix.... I tried replacing c*double(b(j,k)) with c.*double(b(j,k)) but it returned the same error..... Whelp ?
M = 1600
N = 3600
for j = 1:8:M
for k = 1:8:N
d(j,k) = c*double(b(j,k)); //c is a 8*8 doubles matrix
end
end

Answers (2)

Yoav Livneh
Yoav Livneh on 18 Feb 2015
The error means that the destination is not the same dimension as the source. In this case, you are trying to write an 8x8 matrix (c) into a 1x1 scalar (d(j,k)).

Hiroshi Nakamura
Hiroshi Nakamura on 18 Feb 2015
OMG I just realized that! Thanks! What I really was trying to do was multiply the c matrix (8*8) by smaller 8*8 matrixes in the 1600*3600 matrix.. Any idea how to do that? Thanks again appreciate your help!

This question is closed.

Community Treasure Hunt

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

Start Hunting!