[Index for tmp_for_tar/mcompat] [Return to Master Index]

test_sub_and_ind

(tmp_for_tar/mcompat/test_sub_and_ind.m)


Help text


 Last modified: January 2000



Listing of file tmp_for_tar/mcompat/test_sub_and_ind.m


## Author:        Etienne Grossmann  <etienne@isr.ist.utl.pt>
## Last modified: January 2000

1;
##
## Test the sub2ind and ind2sub functions.
##

R = 1+floor(10*rand(1)) ;
C = 1+floor(10*rand(1)) ;
m = reshape(1:R*C,R,C) ;
## Test sub2ind (dim 1)
for k=1:100,
  ii = 1+floor(rand(1)*R*C);
  [r,c] = sub2ind(size(m),ii) ;
  if m(r,c) != ii,
    printf("sub2ind sucks (1)!\n");
    return
  end
end
printf("sub2ind seems ok (1)\n");

## Test sub2ind (multiple indice)
for k=1:10,
  tmp = 10 ;
  ii = 1+floor(rand(tmp,1)*R*C);
  [r,c] = sub2ind(size(m),ii) ;
  for l=1:10,
    if m(r(l),c(l)) != ii(l),
      printf("sub2ind sucks (2)!\n");
      return
    end
  end
end
printf("sub2ind seems ok (2)\n");

## Test ind2sub (dim 1)
for k=1:100,
  r = 1+floor(rand(1)*R);
  c = 1+floor(rand(1)*C);
  ii = ind2sub(size(m),r,c) ;
  if m(r,c) != ii,
    printf("ind2sub sucks (1)!\n");
    return
  end
end
printf("ind2sub seems ok (1)\n");
## Test ind2sub (multiple indice)
for k=1:10,
  r = 1+floor(rand(10,1)*R);
  c = 1+floor(rand(10,1)*C);
  ii = ind2sub(size(m),r,c) ;
  for l=1:10,
    if m(r(l),c(l)) != ii(l),
      printf("sub2ind sucks (2)!\n");
      return
    end
  end
end
printf("ind2sub seems ok (2)\n");

Produced by oct2html on Tue Apr 4 20:42:02 2000
Cross-Directory links are: ON