X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=doc%2Ftutorial%2Fginac.texi;h=934e3193facde1a4bf08042b6d6667e854601381;hp=1021a32a22760cced31fd114e686d27e8a1c01cd;hb=0052e44b34c982b13b08454fd6c9429fe7a90f71;hpb=5745deb8dbcee040d1012b8260ed317eb2a32f4b diff --git a/doc/tutorial/ginac.texi b/doc/tutorial/ginac.texi index 1021a32a..934e3193 100644 --- a/doc/tutorial/ginac.texi +++ b/doc/tutorial/ginac.texi @@ -24,7 +24,7 @@ This is a tutorial that documents GiNaC @value{VERSION}, an open framework for symbolic computation within the C++ programming language. -Copyright (C) 1999-2015 Johannes Gutenberg University Mainz, Germany +Copyright (C) 1999-2016 Johannes Gutenberg University Mainz, Germany Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice @@ -52,7 +52,7 @@ notice identical to this one. @page @vskip 0pt plus 1filll -Copyright @copyright{} 1999-2015 Johannes Gutenberg University Mainz, Germany +Copyright @copyright{} 1999-2016 Johannes Gutenberg University Mainz, Germany @sp 2 Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice @@ -135,7 +135,7 @@ the near future. @section License The GiNaC framework for symbolic computation within the C++ programming -language is Copyright @copyright{} 1999-2015 Johannes Gutenberg +language is Copyright @copyright{} 1999-2016 Johannes Gutenberg University Mainz, Germany. This program is free software; you can redistribute it and/or @@ -484,10 +484,10 @@ required for the configuration, it can be downloaded from @uref{http://pkg-config.freedesktop.org}. Last but not least, the CLN library is used extensively and needs to be installed on your system. -Please get it from @uref{ftp://ftpthep.physik.uni-mainz.de/pub/gnu/} -(it is covered by GPL) and install it prior to trying to install -GiNaC. The configure script checks if it can find it and if it cannot -it will refuse to continue. +Please get it from @uref{http://www.ginac.de/CLN/} (it is licensed under +the GPL) and install it prior to trying to install GiNaC. The configure +script checks if it can find it and if it cannot, it will refuse to +continue. @node Configuration, Building GiNaC, Prerequisites, Installation @@ -3033,6 +3033,8 @@ canonicalize themselves according to rules specified in the implementation of the non-commutative classes. The drawback is that to work with other than the built-in algebras you have to implement new classes yourself. Both symbols and user-defined functions can be specified as being non-commutative. +For symbols, this is done by subclassing class symbol; for functions, +by explicitly setting the return type (@pxref{Symbolic functions}). @cindex @code{return_type()} @cindex @code{return_type_tinfo()} @@ -6505,7 +6507,7 @@ to map input (sub)strings to arbitrary expressions: table["x"] = x+log(y)+1; parser reader(table); ex e = reader("5*x^3 - x^2"); - // e = 5*(x+log(y)+1)^3 + (x+log(y)+1)^2 + // e = 5*(x+log(y)+1)^3 - (x+log(y)+1)^2 @} @end example @@ -6518,8 +6520,8 @@ with @code{get_syms()} method: parser reader; ex e = reader("2*x+sin(y)"); symtab table = reader.get_syms(); - symbol x = reader["x"]; - symbol y = reader["y"]; + symbol x = ex_to(table["x"]); + symbol y = ex_to(table["y"]); @} @end example