X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=NEWS;h=4a119ee677fedc7a484c607103f3db4d2a4e4e32;hp=008b05e8a24c47af94d7b7dd7ba2204383969350;hb=af922d5eb36ed70e4a9e3ffaf4c24492cf89a1a6;hpb=ebc7c9b1ef9b051ec35a954ff2e6d2da18ab37e4 diff --git a/NEWS b/NEWS index 008b05e8..4a119ee6 100644 --- a/NEWS +++ b/NEWS @@ -1,13 +1,67 @@ This file records noteworthy changes. -0.5.4 (?x?y?z? March 2000) -* Algorithms in class matrix (determinant and solve) were replaced by +0.6.4 (10 August 2000) +* Complete revamp of methods in class matrix. Some redundant (and poor) + implementations of elimination schemes were thrown out. The code is now + highly orthogonal, more flexible and much more efficient. +* Some long standing and quite nasty bugs were discovered and fixed in the + following functions: add::normal(), heur_gcd(), sr_gcd() and Order_eval(). + +0.6.3 (25 July 2000) +* Derivatives are now assembled in a slightly different manner (i.e. they + might 'look' different on first sight). Under certain circumstances this + can result in a dramatic speedup because it gives hashing a better chance, + especially when computing higher derivatives. +* Some series expansions of built-in functions have been reengineered. +* The algorithm for computing determinants can be chosen by the user. See + ginac/flags.h and ginac/matrix.h. +* The Dilogarithm (Li2) now has floating point evaluation, derivative and a + proper series expansion. +* Namespace 'std' cleanly disentangled, as demanded by ISO/EIC 14882-1998(E). +* Some minor bugfixes, one major lsolve()-bugfix and documentation updates. + +0.6.2 (21 June 2000) +* ginaccint.bin is now launched by a binary program instead of by a scripts. + This allows us to write #!-scripts. A small test suite for GiNaC-cint was + added. +* Several minor bugfixes. + +0.6.1 (18 May 2000) +* Cleanup in the interface to Cint. The required version is now Cint 5.14.38. +* Several bugfixes in target install. + +0.6.0 (11 May 2000) +* IMPORTANT: Several interface changes make programs written with GiNaC + much clearer but break compatibility with older versions: + - f(x).series(x,p[,o]) -> f(x).series(x==p,o) + - series(f(x),x,p[,o]) -> series(f(x),x==p,o) + - gamma() -> tgamma() (The true Gamma function, there is now also + log(tgamma()), called lgamma(), in accord with ISO/IEC 9899:1999.) + - EulerGamma -> Euler +* #include'ing ginac.h defines the preprocessor symbols GINACLIB_MAJOR_VERSION, + GINACLIB_MINOR_VERSION, and GINACLIB_MICRO_VERSION with the respective GiNaC + library version numbers. +* Expressions can be constructed from strings like this: + ex e("2*x+y", lst(x, y)); +* ex::to_rational() provides a way to extend the domain of functions like + gcd() and divide() that only work on polynomials or rational functions (the + good old ex::subs() method reverses this process) +* Calling diff() on a function that has no derivative defined returns the + inert derivative function "Derivative". +* Several new timings in the check target. Some of them may be rather rude + at your machine, feel free to interrupt them. + +0.5.4 (15 March 2000) +* Some algorithms in class matrix (notably determinant) were replaced by less brain-dead ones and should now have much better performance. -* Checks were reorganized and split up into three parts: +* Checks were completely reorganized and split up into three parts: a) exams (small regression tests with predefined input) b) checks (lenghty coherence checks with random input) c) timings (for coherence and crude benchmarking) * Behaviour of .evalf() was changed: it doesn't .evalf() any exponents. +* Expanded expressions now remember they are expanded to prevent + superfluous expansions. +* Small bugfixes and improvements in the series expansion. 0.5.3 (23 February 2000) * A more flexible scheme for registering functions was implemented,