Richard Kreckel [Wed, 2 Feb 2000 18:49:29 +0000 (18:49 +0000)]
- diff() is now only defined on classes ex and basic, where it handles
higher derivatives. derivative() is now the method to be implemented
by the user that does single derivatives, it is protected.
- Implemented some very clumpsy automatic generation of ginaccint.
It is ugly because we have to compile libginac without namespace GiNaC.
- Fixed some wrong logic in numeric::power().
Christian Bauer [Mon, 31 Jan 2000 21:50:12 +0000 (21:50 +0000)]
- archive file format is a little more compact (stores property name and type
as one unsigned value)
- moved #include "config.h" from lortensor.h to lortensor.cpp (none of the
public headers must include config.h)
Richard Kreckel [Sun, 30 Jan 2000 23:52:53 +0000 (23:52 +0000)]
- Renamed flag NO_GINAC_NAMESPACE to NO_NAMESPACE_GINAC because of m4.
- Made configure check for cint and makecint and call makecint to dump out
cint/Makefile.cint, which will later be called by cint/Makefile. See
configure option --with-cint.
- Added some documentation about GiNaC-cint (e.g. a manpage).
- All dummies in subdir cint/ are created by cint/dummies.pl now, removed
older stuff.
Christian Bauer [Tue, 25 Jan 2000 22:35:47 +0000 (22:35 +0000)]
- lcm_of_coefficients() works for unexpanded polynomials
- frac_cancel() works for unexpanded polynomials
- gcd() can handle partially-factored input polynomials without expanding them
Christian Bauer [Mon, 24 Jan 2000 20:53:56 +0000 (20:53 +0000)]
- renamed archive::dump() to archive::printraw() for consistency with the
other classes
- implemented archiving for the following classes: color, idx, coloridx,
isospin
- non-crational numbers are now stored in an integer-decoded format in archives
Richard Kreckel [Mon, 24 Jan 2000 15:40:42 +0000 (15:40 +0000)]
- Macro GINAC_CHECK_LIBCLN only checks if doublefactorial is available now.
If it is, the version is new enough and we can omit the second sanity
test which makes that configure step twice as fast.
Richard Kreckel [Wed, 19 Jan 2000 23:51:21 +0000 (23:51 +0000)]
- Changed policy: look for cln/cln.h instead of CLN/cln.h, reflecting an
agreement with Bruno Haible.
- Don't #include <cln/cln.h> but only those headers necessary for GiNaC.
Christian Bauer [Wed, 19 Jan 2000 22:46:56 +0000 (22:46 +0000)]
- implemented global class registry (for class basic and derived classes)
- implemented archiving of expressions (except for class idx, and all classes
derived from idx and indexed)
- added series() wrapper function
- class series renamed to pseries to avoid name clashes with global series()
wrapper function, ex::series(), and basic::series()
- corrected the series expansion of single symbols with respect to the order
term
- calling subs() on a series didn't work
Christian Bauer [Wed, 19 Jan 2000 22:42:36 +0000 (22:42 +0000)]
- updated for class series->class pseries
- added one additional check for the behavior of the order term during the
series expansion of a simple polynomial
Richard Kreckel [Mon, 20 Dec 1999 20:12:36 +0000 (20:12 +0000)]
- more logic on the trigonometric function stuff.
- changed several occurences of numeric const & to const numeric &, which
is the same, but doxygen kept being confused because declarations
differed from implementations.
Richard Kreckel [Mon, 20 Dec 1999 20:06:12 +0000 (20:06 +0000)]
- more logic on the trigonometric function stuff.
- changed several occurences of numeric const & to const numeric &, which
is the same, but doxygen kept being confused because declarations
differed from implementations.
Richard Kreckel [Fri, 17 Dec 1999 19:58:25 +0000 (19:58 +0000)]
- Banned exZERO(), exONE(), exMINUSHALF() and all this from the interface.
There is now _ex1() meaning 1, _ex_1() meaning -1, _ex1_2() meaning 1/2
and so on defined in utils.h and implemented in utils.cpp. Feel free
to extend them as it pleases you but use them inside the library only.
- Added more evaluations of trigonometric functions
- Added series expansions for psi(x) and psi(n,x) at all their poles
Richard Kreckel [Mon, 13 Dec 1999 18:43:11 +0000 (18:43 +0000)]
- introduced info_flags::cinteger, info_flags::crational,
info_flags::cinteger_polynomial, info_flags::crational_polynomial with
intuitive behaviour.
- extended documentation
- made things like evlaf(zeta(3)) work
- killed several bugs
Richard Kreckel [Fri, 10 Dec 1999 20:23:46 +0000 (20:23 +0000)]
- changed behaviour of numeric::is_rational() and added numeric::is_cinteger()
and numeric::is_crational() which work for complex numbers now
- added default ctor for constant to please CInt
- documentation reflects the changes for upcoming 0.4.1
Richard Kreckel [Fri, 10 Dec 1999 14:59:18 +0000 (14:59 +0000)]
- Introduced exception do_taylor to signal Taylor expansion is ok for series
- Finished a clean implementation of gamma function's series expansion
- Bumped up version number to 1.4.1 to reflect the changes and the
soon-to-come second prerelease.
Richard Kreckel [Wed, 1 Dec 1999 21:13:01 +0000 (21:13 +0000)]
- added prefix and postfix increment and decrement operators for class numeric
- made all function_index const
- added overloaded psi(x) and psi(n,x) with some sensible behaviour
Christian Bauer [Wed, 1 Dec 1999 19:03:37 +0000 (19:03 +0000)]
- added 'ginac-config' script and 'ginac.m4' macros to help making packages
that use GiNaC
- installation does no longer fail when HTML docs were disabled by
configuration
Richard Kreckel [Mon, 29 Nov 1999 22:50:42 +0000 (22:50 +0000)]
- changed function::diff() to be more tolerant by checking first if the
nth argument when differentiated is non-zero and *then* building the sum.
- added support for overloaded polygamma functions psi(x) and psi(n,x).
- changed return code of atan2_diff to be somewhat simpler and adjusted
check/differentiation.cpp to account for this.