Releases: Zushah/Chalkboard
v2.1.0 Seki
The eleventh release of the Chalkboard library, version 2.1.0. Main updates include:
- Changed all of the
matr
commands to work significantly faster for 2x2, 3x3, and 4x4 matrices (for example, multiplications are about 67% faster, inversions are about 85% faster, and determinants are about 95% faster) when compared with previous versions of Chalkboard - Added a total of 26
.isFoo
commands in thematr
,tens
, andvect
categories that check if a matrix, tensor, or vector fulfills a particular property (for example,matr.isDiagonal
checks if a matrix is a diagonal matrix) - There are also 14 more matrix commands, such as
matr.diagonal
,matr.eigenvalue
,matr.eigenvector
,matr.norm
, andmatr.perm
- Changed the parameters of
matr.adjugate
,matr.concat
,matr.cofactor
,matr.push
,matr.pull
,matr.toVector
, andvect.toMatrix
in a few different ways (details are in the detailed changelog below) - Removed
matr.binomial
andmatr.shift
and replaced them withmatr.lowerBinomial
,matr.symmetricBinomial
,matr.upperBinomial
,matr.lowerShift
, andmatr.upperShift
Detailed changelog: CHANGELOG.md#v210---01222024
Commits: v2.0.0...v2.1.0
Chalkboard website: https://zushah.github.io/Chalkboard
v2.0.0 al-Khwarizmi
The tenth release of the Chalkboard library, version 2.0.0. Main updates include:
- Rewrote everything in TypeScript, applied ESLint and Prettier, and remade the documentation with TypeDoc
- Merged the
vec2
,vec3
, andvec4
categories into onevect
category - Added the
APPLY
command which applies a callback function in an element-wise manner on a complex number, matrix, quaternion, tensor, or vector - Renamed all of the
.new
commands to.init
,real.function
toreal.define
,comp.function
tocomp.define
, andplot.function
toplot.definition
- Discontinued the Processsing.js edition of the library, meaning it will no longer be updated and it will only be available on the Khan Academy release (it will no longer be available on GitHub)
Detailed changelog: CHANGELOG.md#v200---01082024
Commits: v1.7.0...v2.0.0
Chalkboard website: https://zushah.github.io/Chalkboard
v1.7.0 Descartes
The ninth release of the Chalkboard library, version 1.7.0. Main updates include:
- Added tensors (multidimensional multidimensional matrices, or n-dimensional arrays) with 29 commands in the new
tens
category - There are also 12 more matrix commands: copying, resizing, five new primitive matrices (exchange, shift, binomial, Hilbert, Lehmer), concatenating, multiplying with vectors, Kronecker sum, Kronecker product, and converting to a tensor
- Two new Chalkboard globals:
PARSEPREFIX
, which makes it easier to add custom functions to Chalkboard functions than theinit
parameter inreal.parse
/comp.parse
, andCONTEXT
, which replaces the removedplot.CONTEXT
- The
plot
commands will now use theconfig.x
andconfig.y
options to determine their position on the canvas instead ofconfig.origin
- Fixed
matr.QRdecomp
by adapting @JentGent's implementation
Detailed changelog: CHANGELOG.md#v170---01012024
Commits: v1.6.0...v1.7.0
Chalkboard website: https://zushah.github.io/Chalkboard/home.html
v1.6.0 Fermat
The eighth release of the Chalkboard library, version 1.6.0. Main updates include:
- Added inverse functions and operations (defining, evaluating, plotting, differentiating, etc.) for them
- Changed all of the
plot
commands to use an optionalconfig
object parameter to configure their customizations (size, color, domain, etc.) instead of separate parameters for each of them - The canvas rendering context (
CanvasRenderingContext2D
) for theplot
commands can now be set withplot.CONTEXT
- Many types of statistical regression models can be calculated with the new
stat.regression
command - Matrix decomposition (or factorization) has been added with
matr.LUdecomp
andmatr.QRdecomp
Detailed changelog: CHANGELOG.md#v160---12252023
Commits: v1.5.0...v1.6.0
Chalkboard website: https://zushah.github.io/Chalkboard/home.html
v1.5.0 Cauchy
The seventh release of the Chalkboard library, version 1.5.0. Main updates include:
- The library can now be installed with npm to be used for server-side applications
- Added complex-valued functions (definitions and evaluations) and complex-valued calculus operations (differentiation and integration)
- The domain coloring of a complex-valued function can be plotted with
plot.function
stat.gte
andstat.lte
have been removed and their functionalities have been respectively incorporated intostat.gt
andstat.lt
- Added
calc.Taylor
andplot.Taylor
for approximating functions with Taylor polynomials
Detailed changelog: CHANGELOG.md#v150---12182023
Commits: v1.4.0...v1.5.0
Chalkboard website: https://zushah.github.io/Chalkboard/home.html
v1.4.0 Herschel
The sixth release of the Chalkboard library, version 1.4.0. Main updates include:
- Added many new commands for arrays, including but not limited to: calculating different types of the norm (and the squared norm) of an array, calculating the array that has the numbers that are equal to, greater than (or equal to), less than (or equal to), or some compound inequality of another number or array, calculating the skewness and kurtosis of an array, and converting an array to a vector, matrix, object, or string
- Data can now be plotted with
plot.barplot
,plot.lineplot
, andplot.scatterplot
, and all of theplot
commands have been changed to return arrays of all of the ordered pairs of the plotted points - Calculating the angle between a point/vector and the positive x-axis on the Cartesian plane can be done with the new
trig.arctan2
command - Added new vector commands for calculating reflections and refractions
- Fixed
calc.dfrdt
which didn't work due to a slight misspelling in anif()
statement
Detailed changelog: CHANGELOG.md#v140---12112023
Commits: v1.3.1...v1.4.0
Chalkboard website: https://zushah.github.io/Chalkboard/home.html
v1.3.1 Heaviside Patch
The fifth release of the Chalkboard library, version 1.3.1. This is a small patch for version 1.3.0 that fixes:
matr.translator
which had a misspellingmatr.rotator
which didn't work for two-dimensional rotations and also had a misspellingcalc.grad
which didn't work for vector fields
Again, this is only a patch for version 1.3.0. The initial release can be visited here.
Detailed changelog: v1.2.0...v1.3.1
Chalkboard website: https://zushah.github.io/Chalkboard/home.html
v1.3.0 Heaviside
The fourth release of the Chalkboard library, version 1.3.0. Main updates include:
- Lots of exciting new
calc
commands, including but not limited to: multivariable explicit functions, vector fields, 3D parametric curves and surfaces, second-order differentiation, partial differentiation, gradient, divergence, curl, double integration, arc length, surface area, and line/surface integration - A new example which shows off the new vector field functionalities
- Several new and updated vector commands regarding conversions between coordinate systems (polar, cylindrical, spherical, etc.), conversions between matrices and vectors (specifiable rows/columns in
matr.toVector
), and vector projections/rejections - All
plot
commands can now optionally have their opacity changed (with thergba
parameter, which used to only bergb
) - The
func.type
value for parametric functions has been changed from"para"
to either"curv"
(for parametric curves) or"surf"
(for parametric surfaces)
Thanks to @bhavjitChauhan for his contribution to this update regarding a bugfix with the matr.invert
command.
Detailed changelog: v1.2.0...v1.3.0
Chalkboard website: https://zushah.github.io/Chalkboard/home.html
v1.2.0 Cayley
The third release of the Chalkboard library, version 1.2.0. Main updates include:
- Matrices of any and all dimensions are now fully supported for any and all matrix commands, there is no four-by-four dimension limit anymore
- New matrix commands for calculating the trace of a matrix, the rank, the row space, the column space, the null space, the exponentiation, the reduced row echelon form (Gaussian elimination), solving a multidimensional system of linear equations, and converting a matrix into an object
- All
.display
commands (plotting commands for complex numbers, vectors, and matrices) have been moved to theplot
category - All
.mulScl
commands (scalar multiplication commands for vectors and matrices) have been renamed as.scl
- Minor bugfix regarding the
vec2.magset
andvec3.magset
commands
Detailed changelog: v1.1.0...v1.2.0
Chalkboard website: https://zushah.github.io/Chalkboard/home.html
v1.1.0 Riemann
The second release of the Chalkboard library, version 1.1.0. Main updates include:
- Differentiation and integration can now be calculated for all types of Chalkboard functions instead of only explicit Chalkboard functions
- Square matrices of any and all dimensions are able to have their determinant calculated
- Convolutions, cross-correlations, and autocorrelations are computable (and plottable) for all arrays and Chalkboard functions
- One of three featured new number theory commands calculates the nth prime number, another calculates a random number according to a Gaussian distribution, and another calculates the prime factors of a given number
- The integration command is even more accurate by the use of Simpson's rule instead of the trapezoidal Riemann sum
Detailed changelog: v1.0.0...v1.1.0
Chalkboard website: https://zushah.github.io/Chalkboard/home.html