I agree. Sometimes I get confused, specially when using external
routines, but I think pdl's order is not a bad choice.

Regards,
Luis


On Mon, Jun 05, 2017 at 09:29:10AM -0600, Craig DeForest wrote:
> I don’t find PDL’s matrix handling to be screwy.  There’s a necessary wart 
> between column-major addressing and row-major addressing, sure — but that’s 
> endemic to all languages.  The question is whether you want matrices to 
> _naturally_render_ the way they would appear in mathematical notation, or 
> whether you want them to _naturally index_ the way they would appear in 
> mathematical notation.   Some languages (e.g., IDL) chose the latter; others 
> (e.g., PDL) chose the former.  You can’t have both without breaking the way 
> arrays are rendered on-screen (so that, e.g., “$a = pdl(1,2,3)” would render 
> as a column vector, taking 5 lines of text.
> 
> As it stands now, “print ($vec=pdl([1,5]))” yields “[1 5]”, which is nice for 
> more general contexts than just matrix operations.  Also, “print 
> ($m=pdl([1,1],[0,1])” yields
>     [
>      [1 1]
>      [0 1]
>     ]
> which is also nice: items are rendered in the most natural way.  That choice 
> forces row-major ordering, which is the opposite of the convention the 
> mathematics community chose.  (Can’t blame ‘em — even Ben Franklin screwed up 
> the sign convention for electric charge…)  The wart is that, if you want to 
> hit a column vector with $m, you have to say “$m_vec = $m x ($vec->(*1))” to 
> explicitly make $vec a column vector — the 0 dim works along a row, not a 
> column.  
> 
> I don’t see a clean way around the dichotomy between natural array rendering 
> and use (which is row-major) and matrix notation (which is column-major).  A 
> transpose has to happen somewhere — either in the way arrays are rendered 
> (column-major specification, which makes matrices work great but screws up 
> other applications) or in the way that they are created (row-major 
> specification, which makes column vectors more cumbersome to use but makes 
> other applications more convenient).
> 
> Sorry if this rambles, I wrote this before dashing off to a meeting.
> 
> Best,
> Craig
> 
> 
> 
> > On Jun 4, 2017, at 3:36 PM, Chris Marshall <[email protected]> wrote:
> > 
> > But...
> > 
> > If you look at the dimension ordering in slicing
> > where dim(0) is the left-most index, then PDL is
> > actually using the same memory ordering as with
> > fortan: dim0 iterates first, then dim1 increases, 
> > then dim2....
> > 
> > In fact sequence(3,4) is in memory in this
> > order: (0,0), (1,0), (2,0), (0,1), (1,1), (2,1),
> > (0,2), (1,2), (2,2), (0,3), (1,3), (2,3) which
> > is exactly the memory order of a(3,4) in fortran.
> > 
> > It seems the issue is that *displaying* the
> > data uses C ordering.  If we were to display
> > the data as if transposed, then PDL would seem
> > to me to be a column major storage system.
> > 
> > I wonder what would happen if matrix operations
> > used the natural dimension order rather than
> > the imposed C ordering?  It would get rid of
> > all the nasty transposes in the matrix multiplication
> > and things the tensor sums would compose naturally.
> > 
> > Am I the only one who thinks PDL for matrix ops is
> > a bit screwy---but for no good reason?
> > 
> > --Chris
> > 
> > On 6/4/2017 16:27, Grégory Vanuxem wrote:
> >> Hi here,
> >>  
> >> https://docs.oracle.com/cd/E19957-01/805-4940/z400091044d0/index.html 
> >> <https://docs.oracle.com/cd/E19957-01/805-4940/z400091044d0/index.html>
> >>  
> >> Just for information.
> >>  
> >> Now, an other thing to know.
> >> Imagine I have a 2x2 matrix.
> >>  
> >> If I write in the computer memory 4 integer’s (1-2-3-4) in one time, in C 
> >> this will be in matrix representation :
> >>  
> >> 1  2
> >> 3  4
> >>  
> >> But in Fortran, like in mathematics :
> >>  
> >> 1  3
> >> 2  4
> >>  
> >> So operations on these two representations are completely differents.
> >>  
> >> Generaly computations on matrices are done on a very low level and use 
> >> directly the memory areas (no aware of indexing scheme).
> >>  
> >> Hope that helps
> >> __
> >> Greg
> >>  
> >> De : Luis Mochan <mailto:[email protected]>
> >> Envoyé le :jeudi 1 juin 2017 20:06
> >> À : [email protected] 
> >> <mailto:[email protected]>
> >> Objet :Re: [Pdl-general] SVD
> >>  
> >> Still confusing:
> >> On Wed, May 31, 2017 at 03:36:33PM +1000, Karl Glazebrook wrote:
> >> > column-major all the way down, as image processing came before matrix 
> >> > ops and i in A(i,j) is naturally the x-axis.
> >> but the x axis displays horizontally, as row, and when matrices are
> >> multiplied i is interpreted as column index, i.e., as index along row.  
> >> > i.e. A[0,1] is followed by A[1,0] in memory
> >> You mean A[0,0] is followed by A[1,0] in memory, right?
> >> So memory is arranged as in fortran arrays (first index fastest), but
> >> the interpretation as row and column indices is different.
> >> Regards,
> >> Luis
> >>  
> >>  
> >>  
> >> >
> >> >
> >> > Karl
> >> >
> >> >
> >> >
> >> > > On 22 May 2017, at 6:32 am, Chris Marshall <[email protected]> 
> >> > > <mailto:[email protected]> wrote:
> >> > >
> >> > > Please ignore the following.  Just mark me confused...
> >> > >
> >> > > --Chris
> >> > >
> >> > > On 5/21/2017 15:51, Chris Marshall wrote:
> >> > >> The row-major and col-major for PDL has always
> >> > >> confused me since, AFAICT the PDL dimensions and
> >> > >> slicing syntax actually are column major in
> >> > >> memory but we print them out in row-major.
> >> > >>
> >> > >> Maybe one of the original PDL developers could
> >> > >> give an explanation (of the history at least!).
> >> > >>
> >> > >
> >> > >
> >> > > ------------------------------------------------------------------------------
> >> > > Check out the vibrant tech community on one of the world's most
> >> > > engaging tech sites, Slashdot.org! http://sdm.link/slashdot 
> >> > > <http://sdm.link/slashdot>
> >> > > _______________________________________________
> >> > > pdl-general mailing list
> >> > > [email protected] 
> >> > > <mailto:[email protected]>
> >> > > https://lists.sourceforge.net/lists/listinfo/pdl-general 
> >> > > <https://lists.sourceforge.net/lists/listinfo/pdl-general>
> >> >
> >> >
> >> > ------------------------------------------------------------------------------
> >> > Check out the vibrant tech community on one of the world's most
> >> > engaging tech sites, Slashdot.org! http://sdm.link/slashdot 
> >> > <http://sdm.link/slashdot>
> >> > _______________________________________________
> >> > pdl-general mailing list
> >> > [email protected] 
> >> > <mailto:[email protected]>
> >> > https://lists.sourceforge.net/lists/listinfo/pdl-general 
> >> > <https://lists.sourceforge.net/lists/listinfo/pdl-general>
> >> >
> >>  
> >> --
> >>  
> >>                                                                   o
> >> W. Luis Mochán,                      | tel:(52)(777)329-1734 
> >> <tel:(52)(777)329-1734>     /<(*)
> >> Instituto de Ciencias Físicas, UNAM  | fax:(52)(777)317-5388     `>/   /\
> >> Apdo. Postal 48-3, 62251             |                           (*)/\/  \
> >> Cuernavaca, Morelos, México          | [email protected] 
> >> <mailto:[email protected]>   /\_/\__/
> >> GPG: 791EB9EB, C949 3F81 6D9B 1191 9A16  C2DF 5F0A C52B 791E B9EB
> >>  
> >>  
> >>  
> >> ------------------------------------------------------------------------------
> >> Check out the vibrant tech community on one of the world's most
> >> engaging tech sites, Slashdot.org! http://sdm.link/slashdot 
> >> <http://sdm.link/slashdot>
> >> _______________________________________________
> >> pdl-general mailing list
> >> [email protected] 
> >> <mailto:[email protected]>
> >> https://lists.sourceforge.net/lists/listinfo/pdl-general 
> >> <https://lists.sourceforge.net/lists/listinfo/pdl-general>
> >>  
> >> 
> >>  
> >> <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient>
> >>  Garanti sans virus. www.avast.com 
> >> <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient>
> >>  <x-msg://147/#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
> >> 
> >> ------------------------------------------------------------------------------
> >> Check out the vibrant tech community on one of the world's most
> >> engaging tech sites, Slashdot.org! http://sdm.link/slashdot 
> >> <http://sdm.link/slashdot>
> >> 
> >> _______________________________________________
> >> pdl-general mailing list
> >> [email protected] 
> >> <mailto:[email protected]>
> >> https://lists.sourceforge.net/lists/listinfo/pdl-general 
> >> <https://lists.sourceforge.net/lists/listinfo/pdl-general>
> > 
> > ------------------------------------------------------------------------------
> > Check out the vibrant tech community on one of the world's most
> > engaging tech sites, Slashdot.org <http://slashdot.org/>! 
> > http://sdm.link/slashdot_______________________________________________ 
> > <http://sdm.link/slashdot_______________________________________________>
> > pdl-general mailing list
> > [email protected] <mailto:[email protected]>
> > https://lists.sourceforge.net/lists/listinfo/pdl-general 
> > <https://lists.sourceforge.net/lists/listinfo/pdl-general>
> 

> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot

> _______________________________________________
> pdl-general mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/pdl-general


-- 

                                                                  o
W. Luis Mochán,                      | tel:(52)(777)329-1734     /<(*)
Instituto de Ciencias Físicas, UNAM  | fax:(52)(777)317-5388     `>/   /\
Apdo. Postal 48-3, 62251             |                           (*)/\/  \
Cuernavaca, Morelos, México          | [email protected]   /\_/\__/
GPG: 791EB9EB, C949 3F81 6D9B 1191 9A16  C2DF 5F0A C52B 791E B9EB



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
pdl-general mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/pdl-general

Reply via email to