Releases: markrogoyski/math-php
Releases · markrogoyski/math-php
v2.4.0
New Features
- Complex Exponential (
exp) - Complex Exponentiation (
pow) - Zipf's Law Discrete Distribution
- Generalized harmonic non-integer sequence
Improvements
- Fixed Complex
polarFormto compute the right values - Fixed
hyperharnomicnon-integer sequence. Previously was computing the wrong thing - Fixed how
ArbitraryIntergerhandlespowof negative exponents
Backwards Incompatible Changes
- Complex
polarFormnow returns an array rather than a Complex number, as the Complex return was incorrect - Interface to
hyperharmonicnon-integer sequence changed due to previous implementation being incorrect
v2.3.0
New Features
- Matrix SVD (Singular Value Decomposition)
- Polynomial companion matrix
v2.2.0
New Features
- PLS (Partial Least Squares Regression)
Improvements
- Add custom
__debugInfotoNumericMatrix
v2.1.0
New Features
- Quaternion
v2.0.0
New Features
- Matrix Improvements
walkmethod to map a function to all values without mutation or returning a valueMatrixFactorycreates more matrix typesMatrixFactory::createNumericto createNumericMatrixtypesMatrixFactory::createFromRowVectorMatrixFactory::createFromColumnVector- Internal
ObjectMatriximprovements- Add
trace - Add
scalarMultiply
- Add
- Add initial
ComplexMatrix
- Sample data People
Improvements
- Bug fixes
- Issue 414 fixed - PCA/Eigenvalue convergence
- Issue 413 fixed - matrix solve with singular matrix using RREF
Migration - Upgrading to v2.0 from v1.0
- PHP minimum version now 7.2 (was 7.0)
- Deprecated code removed (backwards-incompatible change)
MathPHP\Statistics\Distance::kullbackLeiblerDivergenceremoved (UseMathPHP\Statistics\Divergence::kullbackLeiblerinstead)MathPHP\Statistics\Distance::jensenShannonDivergenceremoved (UseMathPHP\Statistics\Divergence::jensenShannoninstead)- Matrix Decompositions no longer implement
\ArrayAccessinterface to access decomposition matrixes. Use properties instead.MathPHP\LinearAlgebra\Decomposition\Cholesky$cholesky['L'],$cholesky['Lᵀ'],$cholesky['LT']removed, use$cholesky->L,$cholesky->Lᵀ,$cholesky->LTinstead.
MathPHP\LinearAlgebra\Decomposition\Crout$crout['L'],$crout['U']removed, use$crout->L,$crout->Uinstead.
MathPHP\LinearAlgebra\Decomposition\LU$LU['L'],LU['U'],LU['P']removed, use$LU->L,$LU->U,$LU->Pinstead.
MathPHP\LinearAlgebra\Decomposition\QR$QR['Q'],$QR['R']removed, use$QR->Q,$QR->Rinstead.
- Methods renamed (backwards-incompatible change)
MathPHP\Statistics\Distance::bhattacharyyaDistancerenamed toMathPHP\Statistics\Distance::bhattacharyyaMathPHP\Statistics\Distance::hellingerDistancerenamed toMathPHP\Statistics\Distance::hellinger
- Moved Functionality (backwards-incompatible change)
MathPHP\Functions\Polynomialmoved toMathPHP\Expression\PolynomialMathPHP\Functions\Piecewisemoved toMathPHP\Expression\Piecewise
- Matrix internal refactoring
- Note: These changes will not affect any client code as long as matrices were created using
MatrixFactory. Matrixis not a base abstract class for all matrix classes to extendMatrixrenamedNumericMatrixMatrixbase methodcreateZeroValue- Use case is various
ObjectMatrixclasses that implementObjectArithmetic
- Use case is various
RowVectorremoved. UseMatrixFactory::createFromRowVectorinsteadColumnVectorremoved. UseMatrixFactory::createFromColumnVectorinstead
- Note: These changes will not affect any client code as long as matrices were created using
v1.11.0
Improvements
- Bugfix (Issue 413): Matrix solve with singular matrix using RREF
- Bugfix (Issue 414): PCA/Eigenvalue convergence
v1.10.0
Improvements
- Bugfix (Issue 356): Fix Finance IRR NANs
v1.9.0
New Features
- Vector min and max
- Arithmetic isqrt (integer square root)
Improvements
- Remove Travis CI (Moved CI to Github Actions in v1.8.0 release)
- Rearrange non-code files
v1.8.0
Improvements
- Improve permutations algorithm to be more efficient and more numerically stable
- Qualify PHP function names with root namespace
- Move CI to Github Actions
v1.7.0
New Features
- Algebra linear equation of one variable
- Rational number inverse
- Rational number pow
Improvements
- Improve combinations algorithm to be more efficient and more numerically stable
- Internal Matrix class reorganization