Wiki
Download
Manual
Eggs
API
Tests
Bugs
show
edit
history
You can edit this page using
wiki syntax
for markup.
Article contents:
== matrico A flonum matrix module for CHICKEN Scheme. [[toc:]] == matrico Function <procedure>(matrico)</procedure> returns ''void'', prints help message for '''matrico''' function. <procedure>(matrico sym)</procedure> 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 <type>matrix</type> a ''list''-of-''f64vectors'' (''flonum''-)''matrix'' type. This record type is not directly accessible, and can only be manipulated through "{{mx-}}" functions. == Matrix Generators <procedure>(mx rows cols val)</procedure> returns {{rows}}-by-{{cols}} ''matrix'' with all entries set to ''flonum'' {{val}} for positive ''fixnum''s {{rows}} and {{cols}}. <procedure>(mx% lst)</procedure> returns ''matrix'' from row-major ''list''-of-''lists''-of-''flonum''s {{lst}}. <procedure>(mx-identity dims)</procedure> returns {{dims}}-by-{{dims}} identity ''matrix'' for a positive ''fixnum'' {{dims}}. <procedure>(mx-exchange dims)</procedure> returns {{dims}}-by-{{dims}} [[https://en.wikipedia.org/wiki/Exchange_matrix|exchange ''matrix'']] for a positive ''fixnum'' {{dims}}. <procedure>(mx-hilbert dims)</procedure> returns {{dims}}-by-{{dims}} [[https://en.wikipedia.org/wiki/Hilbert_matrix|Hilbert ''matrix'']] for a positive ''fixnum'' {{dims}}. <procedure>(mx-pascal dims)</procedure> returns {{dims}}-by-{{dims}} (lower triangular) [[https://en.wikipedia.org/wiki/Pascal_matrix|Pascal ''matrix'']] for a positive ''fixnum'' {{dims}}. <procedure>(mx-lehmer rows cols)</procedure> returns {{rows}}-by-{{cols}} [[https://en.wikipedia.org/wiki/Lehmer_matrix|Lehmer ''matrix'']] for the positive ''fixnum''s {{rows}} and {{cols}}. <procedure>(mx-random rows cols low upp)</procedure> returns {{rows}}-by-{{cols}} uniformly distributed random ''matrix'' in the interval ''flonum'' {{low}} to ''flonum'' {{upp}} for the positive ''fixnum''s {{rows}} and {{cols}}. <procedure>(mx-tridiag dims low mid upp)</procedure> returns {{dims}}-by-{{dims}} ''matrix'' with lower, main, upper band entries given by the ''flonum''s {{low}}, {{mid}}, {{upp}} for a positive ''fixnum'' {{dims}}. <procedure>(mx-unit rows num)</procedure> 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. <procedure>(mx-iota dims)</procedure> returns {{dims}}-by-one column-''matrix'' with entries set to corresponding row index for a positive ''fixnum'' {{dims}}. <procedure>(mx-linspace x y num)</procedure> returns ''matrix'' of positive ''fixnum'' {{num}} row-wise linearly spaced entries with endpoints given by ''flonum''s or column-''matrix''es {{x}} and {{y}}. <procedure>(mx-logspace x y num)</procedure> 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 <procedure>(mx-cols mat)</procedure> returns ''fixnum'' number of columns of ''matrix'' {{mat}}. <procedure>(mx-rows mat)</procedure> returns ''fixnum'' number of rows of ''matrix'' {{mat}}. <procedure>(mx-numel mat)</procedure> returns ''fixnum'' number of entries of ''matrix'' {{mat}}. <procedure>(mx-dims mat)</procedure> returns ''fixnum'' number of dimensions of ''matrix'' {{mat}}. == Matrix Predicates <procedure>(mx? any)</procedure> returns ''boolean'' answering if {{any}} is a ''matrix''. <procedure>(mx-col? mat)</procedure> returns ''boolean'' answering if ''matrix'' {{mat}} has only a single column. <procedure>(mx-row? mat)</procedure> returns ''boolean'' answering if ''matrix'' {{mat}} has only a single row. <procedure>(mx-scalar? mat)</procedure> returns ''boolean'' answering if ''matrix'' {{mat}} has only a single row and single column. <procedure>(mx-vector? mat)</procedure> returns ''boolean'' answering if ''matrix'' {{mat}} has only a single row or single column. <procedure>(mx-square? mat)</procedure> returns ''boolean'' answering if ''matrix'' {{mat}} has the same number of rows and columns. <procedure>(mx-samecols? x y)</procedure> returns ''boolean'' answering if ''matrix''es {{x}} and {{y}} have same number of columns. <procedure>(mx-samerows? x y)</procedure> returns ''boolean'' answering if ''matrix''es {{x}} and {{y}} have same number of rows. <procedure>(mx-samedim? x y)</procedure> returns ''boolean'' answering if ''matrix''es {{x}} and {{y}} have same number of columns and rows. <procedure>(mx-any? pred mat)</procedure> returns ''boolean'' answering if any entry of ''matrix'' {{mat}} fulfills predicate ''procedure'' {{pred}}. <procedure>(mx-all? pred mat)</procedure> returns ''boolean'' answering if all entries of ''matrix'' {{mat}} fulfill predicate ''procedure'' {{pred}}. <procedure>(mx=? x y tol)</procedure> returns ''boolean'' answering if all entry-wise distances between ''matrix''es {{x}} and {{y}} are below tolerance ''flonum'' {{tol}}. == Matrix Accessors <procedure>(mx-ref11 mat)</procedure> returns ''flonum'' being the entry in the first row and first column of ''matrix'' {{mat}}. <procedure>(mx-ref mat row col)</procedure> returns ''flonum'' being ''matrix'' {{mat}} entry in row and column specified by ''fixnum''s {{row}}, {{col}}. <procedure>(mx-set mat row col val)</procedure> 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}}. <procedure>(mx-set! mat row col val)</procedure> 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}}. <procedure>(mx-col mat col)</procedure> returns ''matrix'' being ''matrix'' {{mat}}'s column specified by ''fixnum'' {{col}}. <procedure>(mx-row mat row)</procedure> returns ''matrix'' being ''matrix'' {{mat}}'s row specified by ''fixnum'' {{row}}. <procedure>(mx-diag mat)</procedure> returns column-''matrix'' holding square ''matrix'' {{mat}}'s diagonal entries. <procedure>(mx-submatrix mat row1 row2 col1 col2)</procedure> 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 <procedure>(mx+ x y)</procedure> returns ''matrix'' of entry-wise addition of ''matrix''es {{x}} and {{y}}. <procedure>(mx* x y)</procedure> returns ''matrix'' of entry-wise multiplication of ''matrix''es {{x}} and {{y}}. <procedure>(mx- x y)</procedure> returns ''matrix'' of entry-wise subtraction of ''matrix''es {{x}} and {{y}}. <procedure>(mx/ x y)</procedure> returns ''matrix'' of entry-wise division of ''matrix''es {{x}} by {{y}}. <procedure>(mx^ x y)</procedure> returns ''matrix'' of entry-wise exponentiation of ''matrix''es {{x}} to the {{y}}. <procedure>(mx-where pred x y)</procedure> returns ''matrix'' of entries of ''matrix''es {{x}} or {{y}} based on predicate ''procedure'' {{pred}}. == Matrix Mappers === Entry-Wise Elementary Functions <procedure>(mx- x)</procedure> returns ''matrix'' of entry-wise negation of ''matrix'' {{x}}. <procedure>(mx/ x)</procedure> returns ''matrix'' of entry-wise reciprocal of ''matrix'' {{x}}. <procedure>(mx*2 x)</procedure> returns ''matrix'' of entry-wise doubling of ''matrix'' {{x}}. <procedure>(mx^2 x)</procedure> returns ''matrix'' of entry-wise squaring of ''matrix'' {{x}}. === Entry-Wise Rounding Functions <procedure>(mx-round mat)</procedure> returns ''matrix'' with entries of ''matrix'' {{mat}} rounded to nearest integer. <procedure>(mx-floor mat)</procedure> returns ''matrix'' with entries of ''matrix'' {{mat}} rounded to nearest upper integer. <procedure>(mx-ceil mat)</procedure> returns ''matrix'' with entries of ''matrix'' {{mat}} rounded to nearest lower integer. === Entry-Wise Generalized Functions <procedure>(mx-abs mat)</procedure> returns ''matrix'' with entry-wise absolute value of ''matrix'' {{mat}}. <procedure>(mx-sign mat)</procedure> returns ''matrix'' with entry-wise sign of ''matrix'' {{mat}}. <procedure>(mx-delta mat)</procedure> returns ''matrix'' with entry-wise Kronecker delta of ''matrix'' {{mat}}. <procedure>(mx-heaviside mat)</procedure> returns ''matrix'' with entry-wise Heaviside step of ''matrix'' {{mat}}. === Entry-Wise Trigonometric Functions <procedure>(mx-sin mat)</procedure> returns ''matrix'' with entry-wise sine of ''matrix'' {{mat}}. <procedure>(mx-cos mat)</procedure> returns ''matrix'' with entry-wise cosine of ''matrix'' {{mat}}. <procedure>(mx-tan mat)</procedure> returns ''matrix'' with entry-wise tangent of ''matrix'' {{mat}}. === Entry-Wise Inverse Trigonometric Functions <procedure>(mx-asin mat)</procedure> returns ''matrix'' with entry-wise inverse sine of ''matrix'' {{mat}}, aka arcsine. <procedure>(mx-acos mat)</procedure> returns ''matrix'' with entry-wise inverse cosine of ''matrix'' {{mat}}, aka arccosine. <procedure>(mx-atan mat)</procedure> returns ''matrix'' with entry-wise inverse tangent of ''matrix'' {{mat}}, aka arctangent. === Entry-Wise Hyperbolic Functions <procedure>(mx-sinh mat)</procedure> returns ''matrix'' with entry-wise hyperbolic sine of ''matrix'' {{mat}}. <procedure>(mx-cosh mat)</procedure> returns ''matrix'' with entry-wise hyperbolic cosine of ''matrix'' {{mat}}. <procedure>(mx-tanh mat)</procedure> returns ''matrix'' with entry-wise hyperbolic tangent of ''matrix'' {{mat}}. === Entry-Wise Inverse Hyperbolic Functions <procedure>(mx-asinh mat)</procedure> returns ''matrix'' with entry-wise inverse hyperbolic sine of ''matrix'' {{mat}}, aka area hyperbolic sine. <procedure>(mx-acosh mat)</procedure> returns ''matrix'' with entry-wise inverse hyperbolic cosine of ''matrix'' {{mat}}, aka area hyperbolic cosine. <procedure>(mx-atanh mat)</procedure> returns ''matrix'' with entry-wise inverse hyperbolic tangent of ''matrix'' {{mat}}, aka area hyperbolic tangent. === Entry-Wise Haversed Trigonometric Functions <procedure>(mx-hsin mat)</procedure> returns ''matrix'' with entry-wise haversed sine of ''matrix'' {{mat}}. <procedure>(mx-hcos mat)</procedure> returns ''matrix'' with entry-wise haversed cosine of ''matrix'' {{mat}}. === Entry-Wise Logarithmic Hyperbolic Functions <procedure>(mx-lnsinh mat)</procedure> returns ''matrix'' with entry-wise log-sinh of ''matrix'' {{mat}}. <procedure>(mx-lncosh mat)</procedure> returns ''matrix'' with entry-wise log-cosh of ''matrix'' {{mat}}. === Entry-Wise Roots <procedure>(mx-sqrt mat)</procedure> returns ''matrix'' with entry-wise square root of ''matrix'' {{mat}}. <procedure>(mx-signsqrt mat)</procedure> returns ''matrix'' with entry-wise sign times square-root of absolute value of ''matrix'' {{mat}}. === Entry-Wise Logarithms <procedure>(mx-ln mat)</procedure> returns ''matrix'' with entry-wise natural logarithm of ''matrix'' {{mat}}. <procedure>(mx-lb mat)</procedure> returns ''matrix'' with entry-wise base-2 logarithm of ''matrix'' {{mat}}. <procedure>(mx-lg mat)</procedure> returns ''matrix'' with entry-wise base-10 logarithm of ''matrix'' {{mat}}. === Entry-Wise Exponential <procedure>(mx-exp mat)</procedure> returns ''matrix'' with entry-wise exponential of ''matrix'' {{mat}}. <procedure>(mx-gauss mat)</procedure> returns ''matrix'' with entry-wise Gaussian of ''matrix'' {{mat}}. === Entry-Wise Special Functions <procedure>(mx-sinc mat)</procedure> returns ''matrix'' with entry-wise cardinal sine of ''matrix'' {{mat}}. <procedure>(mx-sigm mat)</procedure> returns ''matrix'' with entry-wise sigmoid of ''matrix'' {{mat}}. <procedure>(mx-stirling mat)</procedure> returns ''matrix'' with entry-wise Stirling approximation of ''matrix'' {{mat}}. == Matrix Reducers === Sums <procedure>(mx-rowsum mat)</procedure> returns column-''matrix'' of summing row entries of ''matrix'' {{mat}}. <procedure>(mx-colsum mat)</procedure> returns row-''matrix'' of summing column entries of ''matrix'' {{mat}}. <procedure>(mx-sum mat)</procedure> returns ''flonum'' of summing all entries of ''matrix'' {{mat}}. === Products <procedure>(mx-rowprod mat)</procedure> returns column-''matrix'' of multiplying row entries of ''matrix'' {{mat}}. <procedure>(mx-colprod mat)</procedure> returns row-''matrix'' of multiplying column entries of ''matrix'' {{mat}}. <procedure>(mx-prod mat)</procedure> returns ''flonum'' of multiplying all entries of ''matrix'' {{mat}}. === Minima <procedure>(mx-rowmin mat)</procedure> returns column-''matrix'' of row-wise minima of ''matrix'' {{mat}}. <procedure>(mx-colmin mat)</procedure> returns row-''matrix'' of column-wise minima of ''matrix'' {{mat}}. <procedure>(mx-min mat)</procedure> returns ''flonum'' minimum of all ''matrix'' {{mat}} entries. === Maxima <procedure>(mx-rowmax mat)</procedure> returns column-''matrix'' of row-wise maxima of ''matrix'' {{mat}}. <procedure>(mx-colmax mat)</procedure> returns row-''matrix'' of column-wise maxima of ''matrix'' {{mat}}. <procedure>(mx-max mat)</procedure> returns ''flonum'' maximum of all ''matrix'' {{mat}} entries. === Midrange <procedure>(mx-rowmidr mat)</procedure> returns column-''matrix'' of row-wise midrange of ''matrix'' {{mat}}. <procedure>(mx-colmidr mat)</procedure> returns row-''matrix'' of column-wise midrange of ''matrix'' {{mat}}. <procedure>(mx-midr mat)</procedure> returns ''flonum'' midrange of all ''matrix'' {{mat}} entries. === Means <procedure>(mx-rowmean mat typ)</procedure> returns column-''matrix'' of row-wise power means of ''matrix'' {{mat}} of type ''symbol'' {{typ}}, which can be {{-1}}, {{0}}, {{1}}, {{2}}, or {{'inf}}. <procedure>(mx-colmean mat typ)</procedure> returns row-''matrix'' of column-wise power means of ''matrix'' {{mat}} of type ''symbol'' {{typ}}, which can be {{-1}}, {{0}}, {{1}}, {{2}}, or {{'inf}}. <procedure>(mx-mean mat typ)</procedure> returns ''flonum'' power mean of all ''matrix'' {{mat}} entries of type ''symbol'' {{typ}}, which can be {{-1}}, {{0}}, {{1}}, {{2}}, or {{'inf}}. === Norms <procedure>(mx-rownorm mat typ)</procedure> returns column ''matrix'' of row-wise matrix norms of ''matrix'' {{mat}} of type ''symbol'' {{typ}}, which can be {{1}}, {{2}}, or {{'inf}}. <procedure>(mx-colnorm mat typ)</procedure> returns row ''matrix'' of column-wise matrix norms of ''matrix'' {{mat}} of type ''symbol'' {{typ}}, which can be {{1}}, {{2}}, or {{'inf}}. <procedure>(mx-norm mat typ)</procedure> returns ''flonum'' matrix norms of ''matrix'' {{mat}} of type ''symbol'' {{typ}}, which can be {{1}}, {{'inf}}, {{'fro}}, or {{'max}}. == Linear Algebra <procedure>(mx-horcat x y)</procedure> returns ''matrix'' of horizontally concatenated ''matrix''es {{x}} and {{y}}. <procedure>(mx-vercat x y)</procedure> returns ''matrix'' of vertically concatenated ''matrix''es {{x}} and {{y}}. <procedure>(mx-vec mat)</procedure> returns ''matrix'' of vertically concatenated columns of ''matrix'' {{mat}}, aka vectorization. <procedure>(mx-transpose mat)</procedure> returns ''matrix'' of entries of ''matrix'' {{mat}} with swapped row and column indices. <procedure>(mx-axpy a x y)</procedure> returns ''matrix'' of entry-wise generalized addition of ''flonum'' {{a}} times ''matrix'' {{x}} plus ''matrix'' {{y}}. <procedure>(mx-sympart mat)</procedure> returns ''matrix'' being symmetric part of square ''matrix'' {{mat}}. <procedure>(mx-skewpart mat)</procedure> returns ''matrix'' being skey-symmetric part of square ''matrix'' {{mat}}, aka anti-symmetric part. <procedure>(mx-diagonal mat)</procedure> returns diagonal ''matrix'' from column ''matrix'' {{mat}}. === Linear Problems <procedure>(mx-qr mat)</procedure> returns ''pair'' of orthogonal ''matrix'' (Q) and upper right triangular ''matrix'' (R) factoring full column rank ''matrix'' {{mat}}. <procedure>(mx-solver mat)</procedure> returns ''function'' returning column-''matrix'' solving the linear (least-squares) problem of ''matrix'' {{mat}}, given a column-''matrix'' {{vec}} via QR decomposition. <procedure>(mx-solve mat vec)</procedure> returns column-''matrix'' solving the linear problem of ''matrix'' {{mat}} and column-''matrix'' {{vec}} via QR decomposition. <procedure>(mx-orth mat)</procedure> returns ''matrix'' orthogonalizing ''matrix'' {{mat}}. <procedure>(mx-absdet mat)</procedure> returns ''flonum'' being absolute value of the determinant of ''matrix'' {{mat}}. <procedure>(mx-logdet mat)</procedure> returns ''flonum'' being the (natural) logarithm of the determinant of ''matrix'' {{mat}}. === Traces <procedure>(mx-trace mat)</procedure> returns ''flonum'' being sum of square ''matrix'' {{mat}}'s diagonal entries. <procedure>(mx-multrace mat)</procedure> returns ''flonum'' being product of square ''matrix'' {{mat}}'s diagonal entries. <procedure>(mx-prodtrace* x yt)</procedure> returns ''flonum'' being the trace of the matrix product of ''matrix'' {{x}} and transposed ''matrix'' {{yt}}. <procedure>(mx-prodtrace x y)</procedure> returns ''flonum'' being the trace of the matrix product of ''matrix''es {{x}} and {{y}}. === Matrix Multiplication <procedure>(mx-scalar xt y)</procedure> returns ''flonum'' resulting from scalar product of column-''matrix''es {{xt}} and {{y}}. <procedure>(mx-dyadic x y)</procedure> returns ''flonum'' resulting from dyadic product of column-''matrix'' {{x}} and row-''matrix'' {{y}}. <procedure>(mx-dot* xt y)</procedure> returns ''matrix'' resulting from matrix multiplication of (transposed) ''matrix'' {{xt}} and ''matrix'' {{y}}. <procedure>(mx-dot x y)</procedure> returns ''matrix'' resulting from matrix multiplication of ''matrix''es {{x}} and {{y}}. <procedure>(mx-gram mat)</procedure> returns ''matrix'' resulting from matrix multiplication of transposed ''matrix'' {{mat}} with itself, aka Gram matrix. <procedure>(mx-gram* mat)</procedure> returns ''matrix'' resulting from matrix multiplication of ''matrix'' {{mat}} with itself transposed. <procedure>(mx-square mat)</procedure> returns ''matrix'' resulting from matrix multiplication of ''matrix'' {{mat}} with itself. === Multivariate Statistics <procedure>(mx-xcov x y)</procedure> returns ''matrix'' of cross-covariances of ''matrix''es {{x}} and {{y}}, representing columns of observations. <procedure>(mx-cov mat)</procedure> returns ''matrix'' of covariances of ''matrix'' {{mat}}, representing columns of observations. <procedure>(mx-var mat)</procedure> returns column ''matrix'' of variances of ''matrix'' {{mat}}, representing columns of observations. <procedure>(mx-std mat)</procedure> returns column ''matrix'' of standard deviations of ''matrix'' {{mat}}, representing columns of observations. <procedure>(mx-xcor x y)</procedure> returns ''matrix'' of cross-correlations of ''matrix''es {{x}} and {{y}}, representing columns of observations. <procedure>(mx-cor mat)</procedure> returns ''matrix'' of correlations of ''matrix'' {{mat}}, representing columns of observations. <procedure>(mx-angle x y)</procedure> returns ''matrix'' of angles between ''matrix''es {{x}} and {{y}}, representing columns of observations. <procedure>(mx-coher x y)</procedure> returns ''flonum'' of distance coherence between ''matrix''es {{x}} and {{y}}. == Analysis <procedure>(mx-diff mat)</procedure> returns ''matrix'' of differences of consecutives columns of ''matrix'' {{mat}}. <procedure>(mx-trapz mat)</procedure> returns column-''matrix'' trapezoid approximate integral of ''matrix'' {{mat}} being columns data-points of rows-dimensional function. <procedure>(mx-ode2-hyp num sys tim x0)</procedure> 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}}. <procedure>(mx-ode2-ssp num sys tim x0)</procedure> 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 <procedure>(mx->list mat)</procedure> returns ''list'' of entries of one-dimensional ''matrix'' {{mat}}. <procedure>(mx-print mat)</procedure> returns ''void'', prints ''matrix'' {{mat}} to terminal. <procedure>(mx-export str mat . sep)</procedure> returns ''void'', writes ''matrix'' {{mat}} to new ''character'' {{sep}}-separated-value file in relative path ''string'' {{str}}, by default {{sep}} is {{,}} resulting in CSV. <procedure>(mx-save str mat)</procedure> returns ''void'', writes ''matrix'' {{mat}} to new Scheme (SCM) file with name ''string'' {{str}}. <procedure>(mx-load str)</procedure> 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: <procedure>fp</procedure> is an alias for {{exact->inexact}}. <procedure>(fp% n d)</procedure> returns ''flonum'' fraction with numerator ''fixnum'' {{n}} and denominator ''fixnum'' {{d}}. <procedure>(fpzero?? x)</procedure> returns ''boolean'' answering if ''flonum'' {{x}} is exactly zero. <procedure>(fpzero? x tol)</procedure> returns ''boolean'' answering if absolute value of ''flonum'' {{x}} is less than ''flonum'' {{tol}}. <procedure>(fp*2 x)</procedure> returns ''flonum'' double of ''flonum'' {{x}}. <procedure>(fp^2 x)</procedure> returns ''flonum'' square of ''flonum'' {{x}}. <procedure>(fprec x)</procedure> returns ''flonum'' reciprocal of ''flonum'' {{x}}. <procedure>(fptau)</procedure> returns ''flonum'' [[https://tauday.com|circle constant Tau]] via fraction. <procedure>(fpeul)</procedure> returns ''flonum'' [[https://en.wikipedia.org/wiki/E_(mathematical_constant)|Euler's number]] via fraction. <procedure>(fpphi)</procedure> returns ''flonum'' [[https://en.wikipedia.org/wiki/Golden_ratio|golden ratio]] via fraction of consecutive Fibonacci numbers. <procedure>(fpdelta x)</procedure> returns ''flonum'' [[https://en.wikipedia.org/wiki/Kronecker_delta|Kronecker delta]] of ''flonum'' {{x}}. <procedure>(fpheaviside x)</procedure> returns ''flonum'' [[https://en.wikipedia.org/wiki/Heaviside_step_function|Heaviside step function]] of ''flonum'' {{x}}. <procedure>(fpsign x)</procedure> returns ''flonum'' [[https://en.wikipedia.org/wiki/Sign_function|sign]] of ''flonum'' {{x}}. <procedure>(fpln x)</procedure> returns ''flonum'' natural logarithm of ''flonum'' {{x}}. <procedure>(fplb x)</procedure> returns ''flonum'' base-2 logarithm of ''flonum'' {{x}}. <procedure>(fplg x)</procedure> returns ''flonum'' base-10 logarithm of ''flonum'' {{x}}. <procedure>(fphsin x)</procedure> returns ''flonum'' [[https://mathworld.wolfram.com/Haversine.html|haversed sine]] of ''flonum'' {{x}}. <procedure>(fphcos x)</procedure> returns ''flonum'' [[https://mathworld.wolfram.com/Havercosine.html|haversed cosine]] of ''flonum'' {{x}}. <procedure>(fplnsinh x)</procedure> returns ''flonum'' log-of-sinh of ''flonum'' {{x}}. <procedure>(fplncosh x)</procedure> returns ''flonum'' log-of-cosh of ''flonum'' {{x}}. <procedure>(fpsignsqrt x)</procedure> returns ''flonum'' sign times square root of absolute value of ''flonum'' {{x}}. <procedure>(fpsinc x)</procedure> returns ''flonum'' [[https://en.wikipedia.org/wiki/Sinc_function|cardinal sine function]] with removed singularity of ''flonum'' {{x}}. <procedure>(fpsigm x)</procedure> returns ''flonum'' [[https://en.wikipedia.org/wiki/Sigmoid_function|standard logistic function]] of ''flonum'' {{x}}, aka sigmoid. <procedure>(fpgauss x)</procedure> returns ''flonum'' [[https://en.wikipedia.org/wiki/Gaussian_function|Gauss bell curve function]] evaluation of ''flonum'' {{x}}. <procedure>(fpstirling x)</procedure> 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]])
Description of your changes:
I would like to authenticate
Authentication
Username:
Password:
Spam control
What do you get when you subtract 7 from 9?