octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: octave "Most Wanted" feature


From: Przemek Klosowski
Subject: Re: octave "Most Wanted" feature
Date: Wed, 29 Nov 2006 19:06:28 -0500 (EST)

 >> What would be the point?

 >     the point is so that the indices can be directly meaningful
 > to the interpretation of the data that they are associated with.
 > the point is so that the expressions in Octave (or MATLAB, i wish)
 > would more closely resemble the mathematical expressions of the
 > same quantity as expressed in the textbooks and the literature.  i
 > made two *very* clear examples regarding the DFT and discrete-convolution 

The non-zero offset is but a special case of dimension scales for
data---scales limited to integer numbers with unit increment.
Dimension scales for a N-dimensional data array are a set of N vectors
with the values of some independent variable describing the support of
the data. For example, a 3-D meteorological temperature dataset would
have 3 dimension scale vectors describing the latitude, longitude and
altitude along each edge of the array. Properly, each dimension scale
should have a 'physical units' attribute, too.

Since Octave doesn't have this built it, we are doing things like

      x=[1:.1:2*pi];
      y=sin(x);
      plot(x,y);

With dimension scales, the 'x' vector would be the dimension scale
property of data 'y', and we would just 'plot(y)'. Note that when
dimension scales form a linear mesh, they can be represented by Octave
interval ([start:step:end]) rather than the general case of a 
multi-element vector.

It seems to me that if you are arguing for high level data structures,
you should be requesting full-blown dimension scales, not its poor
cousin the offset.  In your own example, FFT, the data is sampled at
physical intervals, and the resulting frequencies should be described
by floating point numbers. As you say, the computers should work for
you, not the other way around :)


reply via email to

[Prev in Thread] Current Thread [Next in Thread]