using matlab in term if creating a function to break a 16x1vector into a 4x4 matrix

I need to write a function in matlab that will Convert a [16×1] into a [4×4] form.
eg. [d1,d2,...,d16]into[d1 d5 d9 d13; d2 d6 d10 d14; d3 d7 d11 d15; d4 d8 d12 d16]
Can anyone give me a clue to make a function that will be able to convert these numbers?

Answers (1)

I answered that same question just a few days ago : http://www.mathworks.com/matlabcentral/answers/86438#answer_95906

2 Comments

Thank for the link image but can I ask you a question. Why is ctr=1? And why do we need ctr=ctr+1 or X (ctr)
That's Youssef's answer. It's standard programming for most languages, but not very MATLAB-ish. ctr is a counter and it's used to increment the linear array. The linear index increments differently than the row and column indexes of the output 4x4 array so he used that to increment the linear array X.

Sign in to comment.

Asked:

on 7 Sep 2013

Community Treasure Hunt

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

Start Hunting!