Rev | Line | |
---|
[37] | 1 | function index = subv2ind(siz,sub)
|
---|
| 2 | %SUBV2IND Linear index from subscript vector.
|
---|
| 3 | % SUBV2IND(SIZ,SUB) returns an equivalent single index corresponding to a
|
---|
| 4 | % subscript vector for an array of size SIZ.
|
---|
| 5 | % If SUB is a matrix, with subscript vectors as rows, then the result is a
|
---|
| 6 | % column vector.
|
---|
| 7 | %
|
---|
| 8 | % This is the opposite of IND2SUBV, so that
|
---|
| 9 | % SUBV2IND(SIZ,IND2SUBV(SIZ,IND)) == IND.
|
---|
| 10 | %
|
---|
| 11 | % See also IND2SUBV, SUB2IND.
|
---|
| 12 |
|
---|
| 13 | % Written by Tom Minka
|
---|
| 14 |
|
---|
| 15 | prev_cum_size = [1 cumprod(siz(1:end-1))];
|
---|
| 16 | %index = (sub-1)*prev_cum_size' + 1;
|
---|
| 17 | index = sub*prev_cum_size' - sum(prev_cum_size) + 1;
|
---|
Note: See
TracBrowser
for help on using the repository browser.