bug while trying to call 2D-waves

example:

Make/N=(2,2) testwave=0
testwave[1][0] = 1

print testwave[0][0] results in
0

print testwave[1][0] results in
1

but

print testwave[0] results in nothing

print testwave[1] results in nothing

shouldnt that be the same call?


using Igor64bit 6.3.0.2beta
error vanished when updated to 01JAN2013nightly
after a while error occured again
then vanished when updated to 28JAN2013nightly
then occured again and vanished itsself without even restarting Igor.

using Windows 7 Professional 64bit Service Pack 1
I do not see this behavior with Windows 7 Enterprise and 32-bit IP 6.3.0.2 beta
make/N=(2,2) wave0={{0,1},{2,3}}
print wave0
  wave0[0][0]= {0,1}
wave0[0][1]= {2,3}
print wave0[0]
  0
print wave0[1]
  1
print wave0[2]
  2
print wave0[3]
  3

The last four outputs show the 2D wave indexed in its 1D stored form.
Error still existing.

Found a way to reproduce the error.

When manually (per mouse selecting the columns) copying a 1D wave into an existing column of a 2D way the above described error occures afterwards.

(Meanwhile using 64-bit version of 6.3.4.1 (Build 20032) )

The only place where supplying a subset of index parameters makes any sense is on the right hand side of a wave assignment. Even then it is of little value.

So:

my2dwave= myother2dwave[1]


is the same as
my2dwave= myother2dwave[1][q]



In other situations, the result is undefined and will likely depend on what transpired in the most recent wave assignment.

So don't make assumptions but rather provide all the needed index values.

Larry Hutchinson
WaveMetrics
support@WaveMetrics.com