You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Sep 10, 2022. It is now read-only.
This list is not exhaustive but rather a reflection of what we have brainstormed to add so far.
Feel free to add comments or issues for new possible functions.
Mathjs functions:
Please note for these 'Mathjs functions', it's much easier to simply call mathjs. Here is an example:
/**** @param - a - the first input to find the lcm of relative to the second input* @param - b - the second input to find the lcm of relative to the first input* @returns - Number representing the least common multiple between a and b. */functionlcm(a,b){//check boundary cases...//check types and validity of parameters...// other misc checking before actually doing the logic..//instead of writing the logic yourself, for these functions you can just do this:letresult=mathjs.lcm(a,b);returnresult;}
Now of course you can add some extra stuff to it like the lcm between 2 matrix like structures,(in which youd need to write your own logic) but the bare minimum is lcm of 2 numbers/integers. After this 'Mathjs functions', this is no longer applicable. See their website for examples and specifications if you need: https://mathjs.org/docs/reference/functions/lcm.html.
lsolveAll -> [rename as lsolve_all] (find ALL solutions of linear equation system)
usolveAll -> [rename as usolve_all] (find all solutions of linear equation system)
slu (sparse matrix LU decomposition) - do not do yet (unless you want to also write a data structure for sparse matrices lol)
lcm(a,b) (least common multiple of a,b)
log(x,[base]) (log of x given a base)
mod(x, y) (x modulo y)
eigs(x, [prec]) (eigenvalues of a matrix with a precision amount)
identity(n) (creates 2-d identity matrix with nxn size) -------- submission being reviewed --------
resize(x, size, [defaultValue]) (resize a matrix x to be of size ‘size’ and any new elements will have value ‘defaultValue’)
rotationMatrix(theta in radians) (creates a 2d counter clockwise rotation 2x2 rotation matrix for a given angle in radians
multinomial(a) ( computes number of ways of picking a1, a2, … ai unordered outcomes from n possibilities, where a is array of integers>=0)
mean & median (almost finished - only need to add dimension wise mean/medians, dimension 1 being rows, dimension 2 being cols, dim 3 for tensors, dim 4 etc.... it's an optional argument.
mode(a,b,c…) (mode of a list or matrix element wise)
std(a,b,c,....) (standard deviation of a list or matrix element wise) ----------- submission being reviewed --------------
variance (a,b,c,....)(variance of a list or matrix element wise) ----------------submission being reviewed --------------
Matlab:
Preprocessing data:
any_missing (determine if any array element is missing)
is_missing (find missing values)
rmmissing (remove missing entries)
fillmissing (fill missing values)
missing (create missing values)
standardize_missing (insert standard missing values)
is_outlier (find outliers in data)
fill_outliers (detect and replace outliers in data)
rm_outliers (detect and remove outliers in data)
is_local_min (find local minima)
is_local_max (find local maxima)
smooth_data (smooth noisy data)
trend_decomp (find trends in data)
normalize (normalize data)
Grouping and binning data?
Descriptive statistics:
maxk (find k largest elements of array) ---- submission being reviewed ------
bounds (find min and max of array)
mean/median/mode/std/var (covered in mathjs) ----- covered in mathjs, will consider if in need of expansion -----
iqr (interquartile range of data set)
quantile (quantiles of data set)
prctile (percentiles of data set) (-> rename as percentile?)
rms (root mean square value)
correcoef ( correlation coefficient)
cov (covariance)
xcorr (cross correlation)
xcov (cross-covariance)
Trigonometry: base code issue for now
Test matrices -
hardamard (hadamard matrix)
hankel (hankel matrix)
hilb (hilbert matrix)
invhilb (inverse of hilbert matrix)
magic (magic square)
pascal (pascal matrix)
toeplitz (toeplitz matrix)
vander (vander matrix)
wilkinson (wilkinsons eigenvalue test matrix)
Linear Algebra:
(not in matlab - convolution)
svd (singular value decomp)
lsq (least square solution to linear equation)
pinv (moore-penrose psuedoinverse)
lscov (least square solution in presence of knoffwn covariance)
eig (eigenvalues and eigenvectors in other contexts than mathjs)
eigs (subset of eigenvalues and eigenvectors)
schur (schur decomposition of a matrix)
hess (hessenberg form of a matrix)
qz (qz factorization for generalized eigenvalues)
funm (evaluate general matrix function)
kron (kronecker tensor product)
cross (cross product)
dot (dot product)
condeig (condition number with respect to eigenvalue)
Sparse matrices (Matlab functions) - speye (sparse identity), sprand (sparse uniformly distributed random matrix), sprandn (sparse normally distributed random matrix), sprandsym (sparse symmetric random matrix), sparse (create sparse matrix) issparse, nnz (number of nonzero elements), spfun (apply function to nonzero elements), sponges (replace nonzero elements with ones), find (find indices and values of nonzero elements), Reordering algorithm…. Iterative methods and preconditioners……eigenvalues and singular values…… structural analysis….. LATER
Diff eq/calculus - no symbolic somewhere else, not nerdamer though (last thing) (check other implementations of newton/diff eq methods open source)
Fourier analysis/filtering - yes, later
Iterative methods - newtons method, golden etc? In javascript? Not yet and somewhere else
The text was updated successfully, but these errors were encountered:
This list is not exhaustive but rather a reflection of what we have brainstormed to add so far.
Feel free to add comments or issues for new possible functions.
Mathjs functions:
Please note for these 'Mathjs functions', it's much easier to simply call mathjs. Here is an example:
Now of course you can add some extra stuff to it like the lcm between 2 matrix like structures,(in which youd need to write your own logic) but the bare minimum is lcm of 2 numbers/integers. After this 'Mathjs functions', this is no longer applicable. See their website for examples and specifications if you need: https://mathjs.org/docs/reference/functions/lcm.html.
Matlab:
Preprocessing data:
Descriptive statistics:
Trigonometry: base code issue for now
Test matrices -
Linear Algebra:
Machine Learning: (https://github.com/Hedgehog-Computing/ml)
Linear regression (iterative method and numeric method)
Libsvm
Lasso
Logistic regression
Wrapper for tensorflow.js
Graph and network algorithms
*data structures
(basic matrix octave) https://octave.org/doc/v4.2.0/Basic-Matrix-Functions.html#Basic-Matrix-Functions
(matrix factorizations plus more octave)
https://octave.org/doc/v4.2.0/Matrix-Factorizations.html#Matrix-Factorizations
(matlab mathematics functions)
https://www.mathworks.com/help/matlab/referencelist.html?type=function&listtype=cat&category=mathematics&blocktype=all&capability=&s_tid=CRUX_lftnav
(matlab all functions)
https://www.mathworks.com/help/matlab/referencelist.html?type=function&listtype=cat&category=index&blocktype=all&capability=&s_tid=CRUX_lftnav
Sparse matrices (Matlab functions) - speye (sparse identity), sprand (sparse uniformly distributed random matrix), sprandn (sparse normally distributed random matrix), sprandsym (sparse symmetric random matrix), sparse (create sparse matrix) issparse, nnz (number of nonzero elements), spfun (apply function to nonzero elements), sponges (replace nonzero elements with ones), find (find indices and values of nonzero elements), Reordering algorithm…. Iterative methods and preconditioners……eigenvalues and singular values…… structural analysis….. LATER
Diff eq/calculus - no symbolic somewhere else, not nerdamer though (last thing) (check other implementations of newton/diff eq methods open source)
Fourier analysis/filtering - yes, later
Iterative methods - newtons method, golden etc? In javascript? Not yet and somewhere else
The text was updated successfully, but these errors were encountered: