Info
This question is closed. Reopen it to edit or answer.
extracting elements from rows and columns
1 view (last 30 days)
Show older comments
i have a input matrix of size
ofdm_symbol=randn(8,10,2)+(1j*randn(8,10,2))
the size of this matrix is 8x10x2
i want to access specific rows and columns and pad with zeros in the code
time_domain_signal=abs(ifft([ofdm_symbol(:,1:(end/2)-1,ii) zeros(N,(L-1)*N,ii(1:k1))
ofdm_symbol(:,5:8,ii(1:k1))])
and it gives the error as
Dimensions of matrices being concatenated are not consistent.
can you help me in debugging the code
9 Comments
Walter Roberson
on 8 Feb 2018
Your code fragment
zeros(N,(L-1)*N,ii(1:k1))
does not work with a 3D matrix unless k1 happens to be exactly 1: if k1 is greater than 1, then 1:k1 is a vector and ii(1:k1) would be a vector of sizes. If any of those other than the first was something other than 1, then you would be working with an array of at least 4 dimensions.
In the phrase
[ofdm_symbol(:,1:(end/2)-1,ii) zeros(N,(L-1)*N,ii(1:k1))
ofdm_symbol(:,5:8,ii(1:k1))]
the number of rows needs to match (which it appears to do). But the number of pages (third dimension) also needs to match, so size(ofdm_symbol(:,1:(end/2)-1,ii),3) needs to match size(zeros(N,(L-1)*N,ii(1:k1)),3) and size(zeros(N,(L-1)*N,ii(1:k1)),4) upwards need to be 1. size(ofdm_symbol(:,1:(end/2)-1,ii),3) is length(ii) . size(zeros(N,(L-1)*N,ii(1:k1)),3) is ii(1). size(zeros(N,(L-1)*N,ii(1:k1)),4) upwards are ii(2) through ii(k1)
Answers (0)
This question is closed.
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!