== matrico
A flonum matrix module for CHICKEN Scheme.
[[toc:]]
== matrico Function
(matrico)
returns ''void'', prints help message for '''matrico''' function.
(matrico sym)
returns ''any'', depending on argument ''symbol'' {{sym}}:
* {{'list}} - returns ''void'', prints list of "{{mx}}" functions;
* {{'about}} - returns ''void'', prints summary about '''matrico''';
* {{'banner}} - returns ''void'', prints the '''matrico''' banner;
* {{'version}} - returns ''pair'' holding major and minor version numbers of '''matrico''';
* {{'citation}} - returns ''void'', prints citation information for '''matrico''';
* {{'benchmark}} - returns ''fixnum'', prints approximated million-instructions-per-second for current machine;
* otherwise - returns ''boolean'' answering if argument is a symbol matching an existing function, starting with "{{mx}}", and prints its docstring.
== Matrix Type
matrix
a ''list''-of-''f64vectors'' (''flonum''-)''matrix'' type.
This record type is not directly accessible, and can only be manipulated through "{{mx-}}" functions.
== Matrix Generators
(mx rows cols val)
returns {{rows}}-by-{{cols}} ''matrix'' with all entries set to ''flonum'' {{val}} for positive ''fixnum''s {{rows}} and {{cols}}.
(mx% lst)
returns ''matrix'' from row-major ''list''-of-''lists''-of-''flonum''s {{lst}}.
(mx-identity dims)
returns {{dims}}-by-{{dims}} identity ''matrix'' for a positive ''fixnum'' {{dims}}.
(mx-exchange dims)
returns {{dims}}-by-{{dims}} [[https://en.wikipedia.org/wiki/Exchange_matrix|exchange ''matrix'']] for a positive ''fixnum'' {{dims}}.
(mx-hilbert dims)
returns {{dims}}-by-{{dims}} [[https://en.wikipedia.org/wiki/Hilbert_matrix|Hilbert ''matrix'']] for a positive ''fixnum'' {{dims}}.
(mx-pascal dims)
returns {{dims}}-by-{{dims}} (lower triangular) [[https://en.wikipedia.org/wiki/Pascal_matrix|Pascal ''matrix'']] for a positive ''fixnum'' {{dims}}.
(mx-lehmer rows cols)
returns {{rows}}-by-{{cols}} [[https://en.wikipedia.org/wiki/Lehmer_matrix|Lehmer ''matrix'']] for the positive ''fixnum''s {{rows}} and {{cols}}.
(mx-random rows cols low upp)
returns {{rows}}-by-{{cols}} uniformly distributed random ''matrix'' in the interval ''flonum'' {{low}} to ''flonum'' {{upp}} for the positive ''fixnum''s {{rows}} and {{cols}}.
(mx-tridiag dims low mid upp)
returns {{dims}}-by-{{dims}} ''matrix'' with lower, main, upper band entries given by the ''flonum''s {{low}}, {{mid}}, {{upp}} for a positive ''fixnum'' {{dims}}.
(mx-unit rows num)
returns {{dims}}-by-one column-''matrix'' of zeros except the positive ''fixnum'' {{num}}-th entry set to one for a positive ''fixnum'' {{dims}}, aka canonical base vector.
(mx-iota dims)
returns {{dims}}-by-one column-''matrix'' with entries set to corresponding row index for a positive ''fixnum'' {{dims}}.
(mx-linspace x y num)
returns ''matrix'' of positive ''fixnum'' {{num}} row-wise linearly spaced entries with endpoints given by ''flonum''s or column-''matrix''es {{x}} and {{y}}.
(mx-logspace x y num)
returns ''matrix'' of positive ''fixnum'' {{num}} row-wise (base-10) logarithmic spaced entries with endpoints given by ''flonum''s or column ''matrix''es {{x}} and {{y}}.
== Matrix Dimensions
(mx-cols mat)
returns ''fixnum'' number of columns of ''matrix'' {{mat}}.
(mx-rows mat)
returns ''fixnum'' number of rows of ''matrix'' {{mat}}.
(mx-numel mat)
returns ''fixnum'' number of entries of ''matrix'' {{mat}}.
(mx-dims mat)
returns ''fixnum'' number of dimensions of ''matrix'' {{mat}}.
== Matrix Predicates
(mx? any)
returns ''boolean'' answering if {{any}} is a ''matrix''.
(mx-col? mat)
returns ''boolean'' answering if ''matrix'' {{mat}} has only a single column.
(mx-row? mat)
returns ''boolean'' answering if ''matrix'' {{mat}} has only a single row.
(mx-scalar? mat)
returns ''boolean'' answering if ''matrix'' {{mat}} has only a single row and single column.
(mx-vector? mat)
returns ''boolean'' answering if ''matrix'' {{mat}} has only a single row or single column.
(mx-square? mat)
returns ''boolean'' answering if ''matrix'' {{mat}} has the same number of rows and columns.
(mx-samecols? x y)
returns ''boolean'' answering if ''matrix''es {{x}} and {{y}} have same number of columns.
(mx-samerows? x y)
returns ''boolean'' answering if ''matrix''es {{x}} and {{y}} have same number of rows.
(mx-samedim? x y)
returns ''boolean'' answering if ''matrix''es {{x}} and {{y}} have same number of columns and rows.
(mx-any? pred mat)
returns ''boolean'' answering if any entry of ''matrix'' {{mat}} fulfills predicate ''procedure'' {{pred}}.
(mx-all? pred mat)
returns ''boolean'' answering if all entries of ''matrix'' {{mat}} fulfill predicate ''procedure'' {{pred}}.
(mx=? x y tol)
returns ''boolean'' answering if all entry-wise distances between ''matrix''es {{x}} and {{y}} are below tolerance ''flonum'' {{tol}}.
== Matrix Accessors
(mx-ref11 mat)
returns ''flonum'' being the entry in the first row and first column of ''matrix'' {{mat}}.
(mx-ref mat row col)
returns ''flonum'' being ''matrix'' {{mat}} entry in row and column specified by ''fixnum''s {{row}}, {{col}}.
(mx-set mat row col val)
returns ''matrix'' copy of ''matrix'' {{mat}} but with entry in row ''fixnum'' {{row}} and column ''fixnum'' {{col}} set to ''flonum'' or one-by-one ''matrix'' {{val}}.
(mx-set! mat row col val)
returns ''void'', sets entry of ''matrix'' {{mat}} in row and column specified by ''fixnum''s {{row}} and {{col}} to ''flonum'' or one-by-one ''matrix'' {{val}}.
(mx-col mat col)
returns ''matrix'' being ''matrix'' {{mat}}'s column specified by ''fixnum'' {{col}}.
(mx-row mat row)
returns ''matrix'' being ''matrix'' {{mat}}'s row specified by ''fixnum'' {{row}}.
(mx-diag mat)
returns column-''matrix'' holding square ''matrix'' {{mat}}'s diagonal entries.
(mx-submatrix mat row1 row2 col1 col2)
returns ''matrix'' holding entries of ''matrix'' {{mat}} in rows specified by ''fixnum''s {{row1}} to {{row2}} and columns specified by ''fixnum''s {{col1}} to {{col2}}.
== Matrix Expanders
(mx+ x y)
returns ''matrix'' of entry-wise addition of ''matrix''es {{x}} and {{y}}.
(mx* x y)
returns ''matrix'' of entry-wise multiplication of ''matrix''es {{x}} and {{y}}.
(mx- x y)
returns ''matrix'' of entry-wise subtraction of ''matrix''es {{x}} and {{y}}.
(mx/ x y)
returns ''matrix'' of entry-wise division of ''matrix''es {{x}} by {{y}}.
(mx^ x y)
returns ''matrix'' of entry-wise exponentiation of ''matrix''es {{x}} to the {{y}}.
(mx-where pred x y)
returns ''matrix'' of entries of ''matrix''es {{x}} or {{y}} based on predicate ''procedure'' {{pred}}.
== Matrix Mappers
=== Entry-Wise Elementary Functions
(mx- x)
returns ''matrix'' of entry-wise negation of ''matrix'' {{x}}.
(mx/ x)
returns ''matrix'' of entry-wise reciprocal of ''matrix'' {{x}}.
(mx*2 x)
returns ''matrix'' of entry-wise doubling of ''matrix'' {{x}}.
(mx^2 x)
returns ''matrix'' of entry-wise squaring of ''matrix'' {{x}}.
=== Entry-Wise Rounding Functions
(mx-round mat)
returns ''matrix'' with entries of ''matrix'' {{mat}} rounded to nearest integer.
(mx-floor mat)
returns ''matrix'' with entries of ''matrix'' {{mat}} rounded to nearest upper integer.
(mx-ceil mat)
returns ''matrix'' with entries of ''matrix'' {{mat}} rounded to nearest lower integer.
=== Entry-Wise Generalized Functions
(mx-abs mat)
returns ''matrix'' with entry-wise absolute value of ''matrix'' {{mat}}.
(mx-sign mat)
returns ''matrix'' with entry-wise sign of ''matrix'' {{mat}}.
(mx-delta mat)
returns ''matrix'' with entry-wise Kronecker delta of ''matrix'' {{mat}}.
(mx-heaviside mat)
returns ''matrix'' with entry-wise Heaviside step of ''matrix'' {{mat}}.
=== Entry-Wise Trigonometric Functions
(mx-sin mat)
returns ''matrix'' with entry-wise sine of ''matrix'' {{mat}}.
(mx-cos mat)
returns ''matrix'' with entry-wise cosine of ''matrix'' {{mat}}.
(mx-tan mat)
returns ''matrix'' with entry-wise tangent of ''matrix'' {{mat}}.
=== Entry-Wise Inverse Trigonometric Functions
(mx-asin mat)
returns ''matrix'' with entry-wise inverse sine of ''matrix'' {{mat}}, aka arcsine.
(mx-acos mat)
returns ''matrix'' with entry-wise inverse cosine of ''matrix'' {{mat}}, aka arccosine.
(mx-atan mat)
returns ''matrix'' with entry-wise inverse tangent of ''matrix'' {{mat}}, aka arctangent.
=== Entry-Wise Hyperbolic Functions
(mx-sinh mat)
returns ''matrix'' with entry-wise hyperbolic sine of ''matrix'' {{mat}}.
(mx-cosh mat)
returns ''matrix'' with entry-wise hyperbolic cosine of ''matrix'' {{mat}}.
(mx-tanh mat)
returns ''matrix'' with entry-wise hyperbolic tangent of ''matrix'' {{mat}}.
=== Entry-Wise Inverse Hyperbolic Functions
(mx-asinh mat)
returns ''matrix'' with entry-wise inverse hyperbolic sine of ''matrix'' {{mat}}, aka area hyperbolic sine.
(mx-acosh mat)
returns ''matrix'' with entry-wise inverse hyperbolic cosine of ''matrix'' {{mat}}, aka area hyperbolic cosine.
(mx-atanh mat)
returns ''matrix'' with entry-wise inverse hyperbolic tangent of ''matrix'' {{mat}}, aka area hyperbolic tangent.
=== Entry-Wise Haversed Trigonometric Functions
(mx-hsin mat)
returns ''matrix'' with entry-wise haversed sine of ''matrix'' {{mat}}.
(mx-hcos mat)
returns ''matrix'' with entry-wise haversed cosine of ''matrix'' {{mat}}.
=== Entry-Wise Logarithmic Hyperbolic Functions
(mx-lnsinh mat)
returns ''matrix'' with entry-wise log-sinh of ''matrix'' {{mat}}.
(mx-lncosh mat)
returns ''matrix'' with entry-wise log-cosh of ''matrix'' {{mat}}.
=== Entry-Wise Roots
(mx-sqrt mat)
returns ''matrix'' with entry-wise square root of ''matrix'' {{mat}}.
(mx-signsqrt mat)
returns ''matrix'' with entry-wise sign times square-root of absolute value of ''matrix'' {{mat}}.
=== Entry-Wise Logarithms
(mx-ln mat)
returns ''matrix'' with entry-wise natural logarithm of ''matrix'' {{mat}}.
(mx-lb mat)
returns ''matrix'' with entry-wise base-2 logarithm of ''matrix'' {{mat}}.
(mx-lg mat)
returns ''matrix'' with entry-wise base-10 logarithm of ''matrix'' {{mat}}.
=== Entry-Wise Exponential
(mx-exp mat)
returns ''matrix'' with entry-wise exponential of ''matrix'' {{mat}}.
(mx-gauss mat)
returns ''matrix'' with entry-wise Gaussian of ''matrix'' {{mat}}.
=== Entry-Wise Special Functions
(mx-sinc mat)
returns ''matrix'' with entry-wise cardinal sine of ''matrix'' {{mat}}.
(mx-sigm mat)
returns ''matrix'' with entry-wise sigmoid of ''matrix'' {{mat}}.
(mx-stirling mat)
returns ''matrix'' with entry-wise Stirling approximation of ''matrix'' {{mat}}.
== Matrix Reducers
=== Sums
(mx-rowsum mat)
returns column-''matrix'' of summing row entries of ''matrix'' {{mat}}.
(mx-colsum mat)
returns row-''matrix'' of summing column entries of ''matrix'' {{mat}}.
(mx-sum mat)
returns ''flonum'' of summing all entries of ''matrix'' {{mat}}.
=== Products
(mx-rowprod mat)
returns column-''matrix'' of multiplying row entries of ''matrix'' {{mat}}.
(mx-colprod mat)
returns row-''matrix'' of multiplying column entries of ''matrix'' {{mat}}.
(mx-prod mat)
returns ''flonum'' of multiplying all entries of ''matrix'' {{mat}}.
=== Minima
(mx-rowmin mat)
returns column-''matrix'' of row-wise minima of ''matrix'' {{mat}}.
(mx-colmin mat)
returns row-''matrix'' of column-wise minima of ''matrix'' {{mat}}.
(mx-min mat)
returns ''flonum'' minimum of all ''matrix'' {{mat}} entries.
=== Maxima
(mx-rowmax mat)
returns column-''matrix'' of row-wise maxima of ''matrix'' {{mat}}.
(mx-colmax mat)
returns row-''matrix'' of column-wise maxima of ''matrix'' {{mat}}.
(mx-max mat)
returns ''flonum'' maximum of all ''matrix'' {{mat}} entries.
=== Midrange
(mx-rowmidr mat)
returns column-''matrix'' of row-wise midrange of ''matrix'' {{mat}}.
(mx-colmidr mat)
returns row-''matrix'' of column-wise midrange of ''matrix'' {{mat}}.
(mx-midr mat)
returns ''flonum'' midrange of all ''matrix'' {{mat}} entries.
=== Means
(mx-rowmean mat typ)
returns column-''matrix'' of row-wise power means of ''matrix'' {{mat}} of type ''symbol'' {{typ}}, which can be {{-1}}, {{0}}, {{1}}, {{2}}, or {{'inf}}.
(mx-colmean mat typ)
returns row-''matrix'' of column-wise power means of ''matrix'' {{mat}} of type ''symbol'' {{typ}}, which can be {{-1}}, {{0}}, {{1}}, {{2}}, or {{'inf}}.
(mx-mean mat typ)
returns ''flonum'' power mean of all ''matrix'' {{mat}} entries of type ''symbol'' {{typ}}, which can be {{-1}}, {{0}}, {{1}}, {{2}}, or {{'inf}}.
=== Norms
(mx-rownorm mat typ)
returns column ''matrix'' of row-wise matrix norms of ''matrix'' {{mat}} of type ''symbol'' {{typ}}, which can be {{1}}, {{2}}, or {{'inf}}.
(mx-colnorm mat typ)
returns row ''matrix'' of column-wise matrix norms of ''matrix'' {{mat}} of type ''symbol'' {{typ}}, which can be {{1}}, {{2}}, or {{'inf}}.
(mx-norm mat typ)
returns ''flonum'' matrix norms of ''matrix'' {{mat}} of type ''symbol'' {{typ}}, which can be {{1}}, {{'inf}}, {{'fro}}, or {{'max}}.
== Linear Algebra
(mx-horcat x y)
returns ''matrix'' of horizontally concatenated ''matrix''es {{x}} and {{y}}.
(mx-vercat x y)
returns ''matrix'' of vertically concatenated ''matrix''es {{x}} and {{y}}.
(mx-vec mat)
returns ''matrix'' of vertically concatenated columns of ''matrix'' {{mat}}, aka vectorization.
(mx-transpose mat)
returns ''matrix'' of entries of ''matrix'' {{mat}} with swapped row and column indices.
(mx-axpy a x y)
returns ''matrix'' of entry-wise generalized addition of ''flonum'' {{a}} times ''matrix'' {{x}} plus ''matrix'' {{y}}.
(mx-sympart mat)
returns ''matrix'' being symmetric part of square ''matrix'' {{mat}}.
(mx-skewpart mat)
returns ''matrix'' being skey-symmetric part of square ''matrix'' {{mat}}, aka anti-symmetric part.
(mx-diagonal mat)
returns diagonal ''matrix'' from column ''matrix'' {{mat}}.
=== Linear Problems
(mx-qr mat)
returns ''pair'' of orthogonal ''matrix'' (Q) and upper right triangular ''matrix'' (R) factoring full column rank ''matrix'' {{mat}}.
(mx-solver mat)
returns ''function'' returning column-''matrix'' solving the linear (least-squares) problem of ''matrix'' {{mat}}, given a column-''matrix'' {{vec}} via QR decomposition.
(mx-solve mat vec)
returns column-''matrix'' solving the linear problem of ''matrix'' {{mat}} and column-''matrix'' {{vec}} via QR decomposition.
(mx-orth mat)
returns ''matrix'' orthogonalizing ''matrix'' {{mat}}.
(mx-absdet mat)
returns ''flonum'' being absolute value of the determinant of ''matrix'' {{mat}}.
(mx-logdet mat)
returns ''flonum'' being the (natural) logarithm of the determinant of ''matrix'' {{mat}}.
=== Traces
(mx-trace mat)
returns ''flonum'' being sum of square ''matrix'' {{mat}}'s diagonal entries.
(mx-multrace mat)
returns ''flonum'' being product of square ''matrix'' {{mat}}'s diagonal entries.
(mx-prodtrace* x yt)
returns ''flonum'' being the trace of the matrix product of ''matrix'' {{x}} and transposed ''matrix'' {{yt}}.
(mx-prodtrace x y)
returns ''flonum'' being the trace of the matrix product of ''matrix''es {{x}} and {{y}}.
=== Matrix Multiplication
(mx-scalar xt y)
returns ''flonum'' resulting from scalar product of column-''matrix''es {{xt}} and {{y}}.
(mx-dyadic x y)
returns ''flonum'' resulting from dyadic product of column-''matrix'' {{x}} and row-''matrix'' {{y}}.
(mx-dot* xt y)
returns ''matrix'' resulting from matrix multiplication of (transposed) ''matrix'' {{xt}} and ''matrix'' {{y}}.
(mx-dot x y)
returns ''matrix'' resulting from matrix multiplication of ''matrix''es {{x}} and {{y}}.
(mx-gram mat)
returns ''matrix'' resulting from matrix multiplication of transposed ''matrix'' {{mat}} with itself, aka Gram matrix.
(mx-gram* mat)
returns ''matrix'' resulting from matrix multiplication of ''matrix'' {{mat}} with itself transposed.
(mx-square mat)
returns ''matrix'' resulting from matrix multiplication of ''matrix'' {{mat}} with itself.
=== Multivariate Statistics
(mx-xcov x y)
returns ''matrix'' of cross-covariances of ''matrix''es {{x}} and {{y}}, representing columns of observations.
(mx-cov mat)
returns ''matrix'' of covariances of ''matrix'' {{mat}}, representing columns of observations.
(mx-var mat)
returns column ''matrix'' of variances of ''matrix'' {{mat}}, representing columns of observations.
(mx-std mat)
returns column ''matrix'' of standard deviations of ''matrix'' {{mat}}, representing columns of observations.
(mx-xcor x y)
returns ''matrix'' of cross-correlations of ''matrix''es {{x}} and {{y}}, representing columns of observations.
(mx-cor mat)
returns ''matrix'' of correlations of ''matrix'' {{mat}}, representing columns of observations.
(mx-angle x y)
returns ''matrix'' of angles between ''matrix''es {{x}} and {{y}}, representing columns of observations.
(mx-coher x y)
returns ''flonum'' of distance coherence between ''matrix''es {{x}} and {{y}}.
== Analysis
(mx-diff mat)
returns ''matrix'' of differences of consecutives columns of ''matrix'' {{mat}}.
(mx-trapz mat)
returns column-''matrix'' trapezoid approximate integral of ''matrix'' {{mat}} being columns data-points of rows-dimensional function.
(mx-ode2-hyp num sys tim x0)
returns states-times-steps ''matrix'' trajectory solving an ordinary differential equation, by a 2nd order hyperbolic Runge-Kutta method of ''fixnum'' {{num}} stages, with vector field ''procedure'' or ''pair'' of vector field and output ''procedure''s {{sys}}, time step ''flonum'' and time horizon ''flonum'' in ''pair'' {{tim}}, initial state column-''matrix'' {{x0}}.
(mx-ode2-ssp num sys tim x0)
returns states-times-steps ''matrix'' trajectory solving an ordinary differential equation, by a 2nd order strong stability preserving Runge-Kutta method of ''fixnum'' {{num}} stages, with vector field ''procedure'' or ''pair'' of vector field and output ''procedure''s {{sys}}, time step ''flonum'' and time horizon ''flonum'' in ''pair'' {{tim}}, initial state column-''matrix'' {{x0}}.
== Matrix Utilities
(mx->list mat)
returns ''list'' of entries of one-dimensional ''matrix'' {{mat}}.
(mx-print mat)
returns ''void'', prints ''matrix'' {{mat}} to terminal.
(mx-export str mat . sep)
returns ''void'', writes ''matrix'' {{mat}} to new ''character'' {{sep}}-separated-value file in relative path ''string'' {{str}}, by default {{sep}} is {{,}} resulting in CSV.
(mx-save str mat)
returns ''void'', writes ''matrix'' {{mat}} to new Scheme (SCM) file with name ''string'' {{str}}.
(mx-load str)
returns ''matrix'' loaded from SCM file in relative path specified by ''string'' {{str}}.
== Additional Flonum Operations
The '''matrico''' module implicitly exports the [[http://wiki.call-cc.org/man/5/Module%20(chicken%20flonum)|'''(chicken flonum)''']] module,
as well as the following additional ''flonum'' operations:
fp
is an alias for {{exact->inexact}}.
(fp% n d)
returns ''flonum'' fraction with numerator ''fixnum'' {{n}} and denominator ''fixnum'' {{d}}.
(fpzero?? x)
returns ''boolean'' answering if ''flonum'' {{x}} is exactly zero.
(fpzero? x tol)
returns ''boolean'' answering if absolute value of ''flonum'' {{x}} is less than ''flonum'' {{tol}}.
(fp*2 x)
returns ''flonum'' double of ''flonum'' {{x}}.
(fp^2 x)
returns ''flonum'' square of ''flonum'' {{x}}.
(fprec x)
returns ''flonum'' reciprocal of ''flonum'' {{x}}.
(fptau)
returns ''flonum'' [[https://tauday.com|circle constant Tau]] via fraction.
(fpeul)
returns ''flonum'' [[https://en.wikipedia.org/wiki/E_(mathematical_constant)|Euler's number]] via fraction.
(fpphi)
returns ''flonum'' [[https://en.wikipedia.org/wiki/Golden_ratio|golden ratio]] via fraction of consecutive Fibonacci numbers.
(fpdelta x)
returns ''flonum'' [[https://en.wikipedia.org/wiki/Kronecker_delta|Kronecker delta]] of ''flonum'' {{x}}.
(fpheaviside x)
returns ''flonum'' [[https://en.wikipedia.org/wiki/Heaviside_step_function|Heaviside step function]] of ''flonum'' {{x}}.
(fpsign x)
returns ''flonum'' [[https://en.wikipedia.org/wiki/Sign_function|sign]] of ''flonum'' {{x}}.
(fpln x)
returns ''flonum'' natural logarithm of ''flonum'' {{x}}.
(fplb x)
returns ''flonum'' base-2 logarithm of ''flonum'' {{x}}.
(fplg x)
returns ''flonum'' base-10 logarithm of ''flonum'' {{x}}.
(fphsin x)
returns ''flonum'' [[https://mathworld.wolfram.com/Haversine.html|haversed sine]] of ''flonum'' {{x}}.
(fphcos x)
returns ''flonum'' [[https://mathworld.wolfram.com/Havercosine.html|haversed cosine]] of ''flonum'' {{x}}.
(fplnsinh x)
returns ''flonum'' log-of-sinh of ''flonum'' {{x}}.
(fplncosh x)
returns ''flonum'' log-of-cosh of ''flonum'' {{x}}.
(fpsignsqrt x)
returns ''flonum'' sign times square root of absolute value of ''flonum'' {{x}}.
(fpsinc x)
returns ''flonum'' [[https://en.wikipedia.org/wiki/Sinc_function|cardinal sine function]] with removed singularity of ''flonum'' {{x}}.
(fpsigm x)
returns ''flonum'' [[https://en.wikipedia.org/wiki/Sigmoid_function|standard logistic function]] of ''flonum'' {{x}}, aka sigmoid.
(fpgauss x)
returns ''flonum'' [[https://en.wikipedia.org/wiki/Gaussian_function|Gauss bell curve function]] evaluation of ''flonum'' {{x}}.
(fpstirling x)
returns ''flonum'' [[https://en.wikipedia.org/wiki/Stirling%27s_approximation|Stirling approximation]] of factorial of ''flonum'' {{x}}.
== Authors
[[https://himpe.science|Christian Himpe]]
== Repository
[[https://git.io/matrico]]
== License
Copyright (c) 2022 Christian Himpe. [[https://spdx.org/licenses/zlib-acknowledgement.html|zlib-acknowledgement]] license
== Version History
; 0.1 : Initial Release
; 0.2 : Major Update
; 0.3 : Major Update
; 0.4 : Minor Update
; 0.5 : Minor Update
; 0.6 : Major Update ([[https://github.com/gramian/matrico#changelog|details]])