Re: [eigen] documentation: the long tutorial |

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]

*To*: eigen@xxxxxxxxxxxxxxxxxxx*Subject*: Re: [eigen] documentation: the long tutorial*From*: Benoit Jacob <jacob.benoit.1@xxxxxxxxx>*Date*: Mon, 21 Jun 2010 07:48:51 -0400*Dkim-signature*: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=zCVK3uZz9R2NfrBA7GkMgn4ob7AkFwyizVTsuyCHkP0=; b=cfGXMiy6AHZXBQFtsswc0m1zpyWm40uf6bJeuuFH1RhOZJC1thBoAUVWroxTZIfB2V wCwtxjA8wHCiHmNxcYWwAAMldGkQva3DEgd4bKS6hLza7I+xSaTeXmIZZsj4H6yzjzMq 66b8nSjDKkgChNrvzR+ooHm7UJzV1otOWfly0=*Domainkey-signature*: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=RatCl0UM1PcbFl7/VQ3AgpJ9Tk9JU+mUk40RV0kH++H6YD5su/ci6tFdtojs1R9GJQ FkQJckkgGpwFSUhqiR0IwU8BcLo/BDdkRpVGTEtLhA5x/M9JtFudluU77h4TFo5XKNdz G6zNbRLWF3RO7XY4haiOoxdEZ+pngJltEtqqg=

2010/6/21 Benoit Jacob <jacob.benoit.1@xxxxxxxxx>: > 2010/6/20 Carlos Becker <carlosbecker@xxxxxxxxx>: >> Some new stuff: >> >> Arithmetic >> ops: http://carlosbecker.com.ar/eigen/doc/TutorialMatrixArithmetic.html > > Thanks. My main comment is that this needs a better structuring. For > example, the first example already shows the comma-initializer without > an explanation and already shows various products. I think the > comma-initializer deserves a short paragraph for itself (which is OK > to put in this page) and products totally deserve a paragraph for > themselves before you do any (except scalar-matrix product, that is OK > to do without a former explanation). > > It's good to explain right away that Matrix is only for linear algebra > and to forward-link to Array for coeff-wise ops. But rowwise and > colwise addition and substraction are actually available for matrices > as well (rowwise() is in DenseBase, not in ArrayBase) so that's not > the right example ;) since you just mentioned scalar+array, stick to > that example. > > In the paragraph "Combining operators in a single statement" you give > an example of how that allows to avoid useless temporaries, but in > that example, actually, that temporary is not useless at all (write > down the computation yourself on pen&paper, for > > tempMatrix = m + n/2; > v = tempMatrix * v; > > you'll see that doing the temporary actually reduces complexity) and > Eigen is clever enough to understand that, so actually in the 2nd > version in one line, Eigen internally uses such a temporary. Sorry! I read too fast. Indeed, since your right hand side is a vector, the temporary is actually useless. But the fact that this depends on v being a vector rather than a matrix makes it a rather subtle example - i would still prefer an example as described below, if you want to write a paragraph about that. > > If you want a good example of combining arithmetic operations into a > big expression to avoid temporaries, the easiest way to get a good > example is to just use additions and scalar-matrix multiplications. > > But I would not mention that at the top of this page, I'd rather put > at the end of it, since it's an advanced topic. > > In short: we need this page to expose all the basic arithmetic in a > rational, systematic, and progressive way, treating one thing at a > time, and deferring the advanced topics to the end. > > Also, regarding your first FIXME, you can remove for now the > navigation links at the top. > > Benoit > >> Array class: http://carlosbecker.com.ar/eigen/doc/TutorialArrayClass.html >> >> The Array class part is quite incomplete I guess. I am wondering whether >> more details should be added or if this is enough. I think that the examples >> found in http://eigen.tuxfamily.org/dox/TutorialCore.html are quite useful, >> does anyone know in which .dox file they are found? >> All feedback welcome. >> Carlos >

**References**:**[eigen] documentation: the long tutorial***From:*Benoit Jacob

**Re: [eigen] documentation: the long tutorial***From:*Gael Guennebaud

**Re: [eigen] documentation: the long tutorial***From:*Benoit Jacob

**Re: [eigen] documentation: the long tutorial***From:*Thomas Capricelli

**Re: [eigen] documentation: the long tutorial***From:*Carlos Becker

**Re: [eigen] documentation: the long tutorial***From:*Benoit Jacob

**Re: [eigen] documentation: the long tutorial***From:*Carlos Becker

**Re: [eigen] documentation: the long tutorial***From:*Carlos Becker

**Re: [eigen] documentation: the long tutorial***From:*Benoit Jacob

**Re: [eigen] documentation: the long tutorial***From:*Robert Lupton the Good

**Re: [eigen] documentation: the long tutorial***From:*Carlos Becker

**Re: [eigen] documentation: the long tutorial***From:*Benoit Jacob

**Re: [eigen] documentation: the long tutorial***From:*Carlos Becker

**Re: [eigen] documentation: the long tutorial***From:*Benoit Jacob

**Messages sorted by:**[ date | thread ]- Prev by Date:
**Re: [eigen] documentation: the long tutorial** - Next by Date:
**Re: [eigen] documentation: the long tutorial** - Previous by thread:
**Re: [eigen] documentation: the long tutorial** - Next by thread:
**Re: [eigen] documentation: the long tutorial**

Mail converted by MHonArc 2.6.19+ | http://listengine.tuxfamily.org/ |