X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=NEWS;h=4f68317243fba028cae5d185dbd4d6331c3ef42f;hp=d349c8fa083a54009dd58c74d4e63fbeff38f5c8;hb=18f71ac0970799444d3ea60924731c8e6ddd84a8;hpb=dd62f332ed50fd901700d4ff233c171d5f65ff1a diff --git a/NEWS b/NEWS index d349c8fa..4f683172 100644 --- a/NEWS +++ b/NEWS @@ -1,12 +1,62 @@ This file records noteworthy changes. -0.8.4 () +0.9.1 (27 June 2001) +* Ctors of class numeric are not explicit any more. All built-in callers for + pseudofunctions are now templated and default to ex arguments which relaxes + the need for explicit ctors. +* New functions/methods: + - find() + - remove_first(), remove_last(), sort() and unique() for lists + - symmetrize_cyclic() + - decomp_rational() +* Instead of just totally symmetric or antisymmetric, complex symmetries + can now be defined for indexed objects. Symmetries are described by a + tree of "symmetry" objects that is constructed with the sy_none(), + sy_symm(), sy_anti() and sy_cycl() functions. The symmetry of a function + with respect to its arguments can also be defined (this is currently + only used for the Beta function). +* Generalized map() to take a function object instead of a function pointer. + This allows passing an arbitrary number of additional state to the + function being called. +* color_trace(), dirac_trace(), diff(), expand(), evalf() and normal() work + better with container classes, e.g. using color_trace() on a relation will + take the trace on both sides, using diff() on a matrix differentiates every + element etc. +* diff() works properly with non-commutative products and indexed objects. +* New option flag "expand_function_args" for expand(). +* Supplement some (now deprecated) macros by inlined template functions: + - is_of_type(foo, type) -> is_a(foo) + - is_ex_of_type(foo, type) -> is_a(foo) + - is_exaclty_of_type(foo, type) -> is_exaclty_a(foo) + - is_ex_exaclty_of_type(foo, type) -> is_exaclty_a(foo) + - ex_to_foobar(baz) -> ex_to(baz) +* rem(c, p[x], x) (c: numeric, p[x]: polynomial) erroneously returned p[x] + instead of c. +* Small bugfixes in pattern matching. +* Updated libtool to version 1.4. + +0.9.0 (7 June 2001) +* In the output and in ginsh, lists are now delimited by { } braces, and + matrices are delimited by single [ ] brackets. * simplify_indexed() renames dummy indices so, e.g., "a.i*a.i+a.j*a.j" gets - simplified to "2*a.i*a.i". -* Added canonicalize_clifford() function that can be helpful when comparing - expressions containing Dirac matrices. -* Fixed possible crash when calling subs() on expressions with non-commutative - products. + simplified to "2*a.i*a.i" (or "2*a.j*a.j"). +* New functions/methods: + - canonicalize_clifford() (helpful when comparing expressions containing + Dirac matrices) + - symmetrize() and antisymmetrize() + - numer_denom() (return numerator and denominator in one call) + - map() (apply function to subexpressions) + - evalm() (evaluate sums, products and integer powers of matrices) +* Added a new function match() for performing pattern matching. subs() and + has() also accept patterns as arguments. A pattern can be any expression, + optionally containing wildcard objects. These are constructed with the + call "wild()" and are denoted as "$0", "$1" etc. in the output + and in ginsh. +* Positive integer powers of non-commutative expressions (except matrices) + are automatically expanded. +* Removed cint subdirectory, ginaccint is a separate package now due to + packaging considerations. +* Several little bugfixes. 0.8.3 (11 May 2001) * color and clifford classes are functional and documented. @@ -14,7 +64,7 @@ This file records noteworthy changes. * Predefined spinor metric tensor (created by spinor_metric()). * Symbols can have a LaTeX name, e.g. symbol s("s", "\\sigma"); * LaTeX output of indexed objects is much nicer. -* Fix some build-problems (with recent libreadline). +* Fixed some build problems (with recent libreadline). * Semantics of arithmetic operators now follows the C++ rules more strictly. 0.8.2 (24 April 2001)