| NEWS | R Documentation |
NEWS file for the minimaxApprox package
Developmental Note: Version 0.0.0+
So long as the package remains in its experimental development state—noted by a 0 major version—the API may change without incrementing the major version. Please read these development notes carefully. Breaking changes will be prefaced by “Breaking:”.
Version 0.4.3 (2024-06-20)
Changed
Efficiency tweaks to C code.
Use native CRAN DOI and update ‘README’.
Expanded package metadata testing.
Version 0.4.2 (2024-05-20)
Changed
If an explicitly passed
conviteris larger thanminiter, thenminiteris set toconviter.Documentation made more consistent.
C code tweaked for clarity and efficiency.
Updated unit tests.
Set up Github workflow for testing with rhub.
Version 0.4.1 (2024-02-28)
Changed
One unit test adjusted to pass on Professor Ripley's OpenBLAS test machine which has different tolerances than the standard twelve on CRAN, six on Github, three on R Win Builder, and the one on R Mac Builder.
Version 0.4.0 (2024-02-26)
Added
-
Breaking: Analysis now uses the Chebyshev polynomials of the first kind,
T_k, as the default basis instead of the monomials,x^k. Monomials can still be used by passing the appropriatebasisparameter. The internal functions underlying the Chebyshev polynomial calculations were ported to C for speed.
Changed
-
Breaking: Changed names in return object. What was
Basisis nowExtrema. Thebasisparameter is now used to capture whether monomials or Chebyshev polynomials should be/were used. -
Breaking: User-facing functions now have
basisparameter to determine which basis to use; see appropriate help files. Parameter positions have thus changed. The
print,plot, andcoefmethods were updated to recognize or allow basis selection.The
printmethod now shows 14 digits for the convergence ratio by default.Internal code was streamlined and tolerances were tightened.
Updated documentation for new functionality.
The C files were split and header files created to keep Chebyshev and Horner code seperate from each other.
Fixed
Fixed potential division-by-zero problem in the “unchanging” test.
Fixed outdated parameter name in documentation.
Fixed incorrect ‘NEWS’ entries.
Version 0.3.0 (2024-01-25)
Changed
-
Breaking: More descriptive names in return object. See the Value section of
help("minimaxApprox")for details. -
Breaking: When using relative error for convergence and one of the basis points has a functional value of 0, instead of stopping with an error, the algorithm will perturb that basis point by
1e-12in the appropriate direction and proceed with a warning. -
Breaking: Forced convergence to look only at the ratio if the difference between tested values is
\le.Machine$double.eps. -
Breaking: Increased default for
conviterfrom 10 to 30 as tests on some values now need more iterations to acheive ratio convergence given a distance\le.Machine$double.eps.
Added
Added unit tests for additional functionality.
Fixed
Fixed a misnamed option value in some unit tests.
Version 0.2.2 (2023-10-12)
Changed
Refactored ‘README’ to split out security and contributions wordings to their own respective files and link the citation to the file on CRAN.
Changed some tests to be more acceptable for CRAN.
Added
Added
LTO_OPTto ‘Makevars’ andUseLTOto ‘DESCRIPTION’.
Version 0.2.1 (2023-09-04)
Changed
Test for calculating polynomial of degree
n + 1when one of degreenfails, while passing both R Mac Builder and Github's Mac platform, failed on CRAN's testbed. So test is no longer run for Mac on CRAN.
Version 0.2.0 (2023-09-04)
Added
When the polynomial algorithm fails with a singular matrix error for degree
n, it will now look for a polynomial of degreen + 1. If found, and the contribution of that coefficient is less than the new optiontailtol(default1e-10), it will return the found polynomial without the uppermost coefficient—which is effectively 0. It will message the user to that effect. PassingNULLskips the test. (see Issue 2 with thanks to Hans W. Borchers).New option
ztolwhich acts similarly tozapsmallin that it will zero out coefficient values—both polynomial and rational—whose contributions are\leztolat each step of the iteration. The default,NULL, skips the test.
Changed
Ported Compensated Horner Scheme algorithms to C for speed. The algorithms are now roughly 10x faster.
Changed linear solution algorithm to use
qr.solvewhen the defaultsolvefails with a singular matrix issue. This may allow for higher degree polynomials in certain cases.-
Breaking: Changed name of ‘
round’ parameter in print method to ‘digits’ to prevent any confusion with base functionround. Updated unit tests.
Cleaned up and updated some documentation and various messages.
Tightened tolerances and cleaned up some internal functions.
Added ‘LICENSE’ to ‘.Rbuildignore’ and removed from ‘DESCRIPTION’ as suggested on R-pkg-devel.
Version 0.1.0 (2023-08-07)
Changed
Internal polynomial evaluations now uses Compensated Horner Scheme of Langlois et al. (2006) for increased precision and stability.
Clarified some error messages.
Removed
Remove one test which fails on M1 Mac (thanks to Professor Brian Ripley) and PowerPC (Issue 1; thanks to Sergey Fedorov) due to it returning a singular matrix where on Linux and Windows it does not.
Added
Added file LICENSE with text of MPL-2.0.
Added copyright and license notices to source code where it was missing.
Added unit tests.
Version 0.0.2 (2023-07-20)
Changed
Correct documentation and make more consistent.
Provide better examples for
minimaxApprox.Updated README with live CRAN links.
Version 0.0.1 (2023-07-18)
Added
Initial release.