Fix for Issue #78: Faster Newton evaluation on multiple coefficient sets
This commit accelerates the Newton evaluation on multiple coefficient sets (Issue #78 (closed)).
- Newton monomials are now computed on all query points first before being multiplied with the coefficients. The multiplication is vectorized and is much faster than the previous implementation. See the latest update of the benchmark results in Issue #78 (closed).
- For a single coefficient set, there's no dramatic changes in performance but is faster with a large number of sets. This is particularly useful for constructing a regression matrix of Lagrange monomials in Newton basis.
- Some older functions have been renamed for clarity; the interfaces largely remain the same.
- The test suite has been expanded to include the evaluation of Newton polynomials with different coefficient sets.
Note that the docstrings mostly still used the description from the old version (e.g., the algorithm complexities). I will go through that again for an already opened issue (#46). Furthermore, there's also some refactoring ideas, for example, regarding verifying and rectifying inputs and outputs (I will open a new issue for this).
Edited by Damar Wicaksono