-
Notifications
You must be signed in to change notification settings - Fork 2
Future development
Patrick Gleeson edited this page Apr 12, 2021
·
3 revisions
This page describes the work-in-progress features of MathicallJS, as well as proposed features that are likely to appear in future.
- Developer guide
- Full
debug
implementation - Full unit tests
- Update and complete documentation
- Code cleanup: comments and formatting
- Provide example in README
- Intersection, difference and symmetric difference (
intersect()
,diff()
,symdiff()
) - Sorting
- Optimised matrix and matrix-vector multiplication for
2x2
,3x3
and4x4
matrices - Get rows (
rows()
) or columns (cols()
) of a matrix
- Median
- Unit tests for
debug
mode - Availability as an
npm
package - Async, GPU and web-worker support, with Node.js compatability
- Examples directory
- Benchmark testing suite
- GitHub pages site for API documentation
- Polyfills
- Cascading options (e.g.
outputArrayType
,enableDebug
)
- Accurate _n_th root algorithm
- Better support for polar form
- Quaternions
- Row reduction (
rref
) - Determinant for >2D matrices
- Inversion of >2D matrices
- Complex matrices
- Sparse matrices
- Eigenvalues/vectors
- Integer powers of matrices (
pow(mat, n)
) - Cofactors and cofactor matrix
- Prime number generation
- Primality checking
- Prime factorisations
- Factors
- Wider range of uniform generators (Xorshift*, permuted congruential, linear congruential, etc.)
- Bernoulli, binomial, geometric, negative binomial, Poisson and Gaussian distributions
- Sphere sampling
- Worley noise
- OpenSimplex noise
- Shuffling
- Concatenate typed arrays
- Optimise maximum linear search length
- Multidimensional arrays
- Optional parameter in
indexOf
to find last (instead of first) occurrence.
- Definite integrals
- Iterative equation solving
- Numerical optimisation
- Linear regression
- Normal, Bernoulli, binomial, geometric, negative binomial, Poisson and Gaussian distributions
- Fast Fourier transform
- Array convolution
- Expression evaluation to value or function
- Equation solving
- Derivatives & integrals
- Support for LaTeX & AsciiMath
- Conversion between colour spaces
- Bilinear interpolation