[SCM] GiNaC -- a C++ library for symbolic computations branch, master, updated. release_1-4-0-611-g26840ecc
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 26840ecc367d9f9dd4e3758233be1bdd3563cd8a (commit) from 48619ed77871a6bcae23df460f426fc34698cd1e (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 26840ecc367d9f9dd4e3758233be1bdd3563cd8a Author: Vitaly Magerya <vmagerya@gmail.com> Date: Wed Jun 13 23:07:45 2018 +0200 Add optional matrix::rank() algorighm selection. Before, matrix::rank() was hardcoded to use Bareiss elimination, which for some matrices is way too slow (and I had to work around this limitation in my own code). I propose adding an argument that will allow users to select which elimination scheme to use. The argument is the same as matrix::solve() takes (so, solve_algo::*). I've tried to mimic how a similar argument was added to matrix::inverse() by keeping the current set of rank() functions and defining separate ones with the 'algo' argument, with the old ones calling the new ones with solve_algo::automatic. This is instead of using default argument values. I've also put the code that makes the automatic selection of the elimination method into a separate function so that both matrix::solve() and matrix::rank() could share it. There's a bit of similar code in matrix::determinant(), but since the self of determinant algorithms is different from the elimination algorithms, it's not clear if these two could be unified. ----------------------------------------------------------------------- Summary of changes: doc/tutorial/ginac.texi | 14 +++---- ginac/matrix.cpp | 108 ++++++++++++++++++++++++++---------------------- ginac/matrix.h | 4 ++ 3 files changed, 69 insertions(+), 57 deletions(-) hooks/post-receive -- GiNaC -- a C++ library for symbolic computations
participants (1)
-
git@ginac.de