[GiNaC-devel] [SCM] GiNaC -- a C++ library for symbolic computations branch, master, updated. release_1-4-0-77-g55af760
Jens Vollinga
git at ginac.de
Wed Aug 27 21:44:33 CEST 2008
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GiNaC -- a C++ library for symbolic computations".
The branch, master has been updated
via 55af76071727bd6e2fd540ad58eac26dd961f9c9 (commit)
via a79a813e7249f793859d1d3b443d1931dbab94b6 (commit)
via 6ff92476a4dcd32f9a0c6f59c95c74812ea86fef (commit)
via 55e50ea26252dff7432bdce8b010f9fbd058e907 (commit)
via 1d09676118944532e6100c93383d1659b1253a60 (commit)
via adb1dbd383ae6e5a999b5f8cba72a5c2bfd50c11 (commit)
via c77689e7ac8d8f4dbca0f337b6e9acf2419010ff (commit)
via 77b6a0304a48d6a306deeda18177680f16025b33 (commit)
via 7d7131d3af3de5425b7fe80b1f587740294371bc (commit)
via b65fcd7481a401ec23c284c91f6f4e883e967676 (commit)
via 8474043d373a19e04008f476fa9b77e45734b604 (commit)
via ff09c4f8103f53fe3b7a51eb3c33eff2e5a243f0 (commit)
via b4b302fe5d54720b58a23568a4270e04ee1ca216 (commit)
from 1222eac51cee964961d2aad889dc4ceccb144a36 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 55af76071727bd6e2fd540ad58eac26dd961f9c9
Author: Jens Vollinga <jensv at nikhef.nl>
Date: Wed Aug 27 17:25:16 2008 +0200
Added internal code for multivariate factorization.
commit a79a813e7249f793859d1d3b443d1931dbab94b6
Author: Alexei Sheplyakov <varg at theor.jinr.ru>
Date: Mon Aug 25 16:57:38 2008 +0400
gcd_pf_pow_pow: deobfuscate a little bit (no functional changes).
Use
if (foo)
return bar();
return baz();
instead of
if (foo) {
return bar();
} else {
return baz();
}
This makes the code a little bit more readable.
commit 6ff92476a4dcd32f9a0c6f59c95c74812ea86fef
Author: Alexei Sheplyakov <varg at theor.jinr.ru>
Date: Mon Aug 25 16:57:02 2008 +0400
gcd_pf_pow: get rid of duplicate code.
This function (which helps gcd() handle partially factored expressions)
contained two copies of the same code. Remove one redundant copy.
commit 55e50ea26252dff7432bdce8b010f9fbd058e907
Author: Alexei Sheplyakov <varg at theor.jinr.ru>
Date: Mon Aug 25 16:56:04 2008 +0400
introduce gcd_pf_pow_pow: gcd helper to handle partially factored expressions.
gcd_pf_pow_pow handles the case when both arguments of gcd() are powers.
N.B. the actual code moved from gcd_pf_pow, no functional changes.
commit 1d09676118944532e6100c93383d1659b1253a60
Author: Alexei Sheplyakov <varg at theor.jinr.ru>
Date: Mon Aug 25 16:55:42 2008 +0400
gcd_pf_{pow, mul}: don't check if the arguments are polynomials.
These functions gets called only from gcd(), which does this check
on its own.
commit adb1dbd383ae6e5a999b5f8cba72a5c2bfd50c11
Author: Alexei Sheplyakov <varg at theor.jinr.ru>
Date: Mon Aug 25 16:55:13 2008 +0400
gcd_pf_mul: get rid of duplicate code.
This function (which helps gcd() handle partially factored expressions)
contained two copies of the same code. Remove one redundant copy.
commit c77689e7ac8d8f4dbca0f337b6e9acf2419010ff
Author: Alexei Sheplyakov <varg at theor.jinr.ru>
Date: Mon Aug 25 16:54:46 2008 +0400
gcd(): allow user to override (some of) heuristics.
GiNaC tries to avoid expanding expressions while computing GCDs and applies
a number of heuristics. Usually this improves performance, but in some cases
it doesn't. Allow user to switch off heuristics.
Part 5:
* gcd(): don't use heuristic GCD algorithm if gcd_options::no_heur_gcd
flag is set.
* gcd(): don't handle partially factored expressions in a special way
if gcd_options::no_part_factored flag is set.
commit 77b6a0304a48d6a306deeda18177680f16025b33
Author: Alexei Sheplyakov <varg at theor.jinr.ru>
Date: Mon Aug 25 16:54:10 2008 +0400
refactor gcd() a little bit (no functional changes).
GiNaC tries to avoid expanding expressions while computing GCDs and applies
a number of heuristics. Usually this improves performance, but in some cases
it doesn't. Allow user to switch off heuristics.
Part 4:
refactor gcd() a little bit, so subsequent patch(es) won't be so big and ugly.
commit 7d7131d3af3de5425b7fe80b1f587740294371bc
Author: Alexei Sheplyakov <varg at theor.jinr.ru>
Date: Mon Aug 25 16:53:47 2008 +0400
introduce gcd_pf_mul: gcd helper to handle partially factored expressions.
GiNaC tries to avoid expanding expressions while computing GCDs and applies
a number of heuristics. Usually this improves performance, but in some cases
it doesn't. Allow user to switch off heuristics.
Part 3:
Move the code handling products from gcd() into a separate function. This
is *really* only code move, everything else should be considered a bug.
commit b65fcd7481a401ec23c284c91f6f4e883e967676
Author: Alexei Sheplyakov <varg at theor.jinr.ru>
Date: Mon Aug 25 16:53:07 2008 +0400
introduce gcd_pf_pow: gcd helper to handle partially factored expressions.
GiNaC tries to avoid expanding expressions while computing GCDs and applies
a number of heuristics. Usually this improves performance, but in some cases
it doesn't. Allow user to switch off heuristics.
Part 2:
Move the code handling powers from gcd() into a separate function. This
is *really* only code move, everything else should be considered a bug.
commit 8474043d373a19e04008f476fa9b77e45734b604
Author: Alexei Sheplyakov <varg at theor.jinr.ru>
Date: Mon Aug 25 16:52:45 2008 +0400
gcd: allow user to override (some of) heuristics.
GiNaC tries to avoid expanding expressions while computing GCDs and applies
a number of heuristics. Usually this improves performance, but in some cases
it doesn't. Allow user to switch off heuristics.
Part 1:
* add new (optional) argument to gcd() to control its behaviour.
* introduce gcd_options structure.
N.B. No actual code changes so far, the actual handling of newly introduced
options is the subject of further patches.
commit ff09c4f8103f53fe3b7a51eb3c33eff2e5a243f0
Author: Alexei Sheplyakov <varg at theor.jinr.ru>
Date: Sun Aug 24 15:25:24 2008 +0400
inifscn_nstdsums: make functions handling Li/G transformations reentrant.
Explicitly pass the dummy symbols instead of using a global variable.
As a side effect, the code is more clear now (that's a bit subjective, but
anyway).
commit b4b302fe5d54720b58a23568a4270e04ee1ca216
Author: Alexei Sheplyakov <varg at theor.jinr.ru>
Date: Fri Aug 22 02:42:17 2008 +0400
Bail out if both autogen and autogen'erated file(s) are missing.
This makes the error message(s) more helpful.
-----------------------------------------------------------------------
Summary of changes:
ginac/Makefile.am | 1 +
ginac/factor.cpp | 657 +++++++++++++++++++++++++++++++++++++++++++-
ginac/inifcns_nstdsums.cpp | 128 +++++----
ginac/normal.cpp | 306 ++++++++++-----------
ginac/normal.h | 25 ++-
5 files changed, 897 insertions(+), 220 deletions(-)
hooks/post-receive
--
GiNaC -- a C++ library for symbolic computations
More information about the GiNaC-devel
mailing list