Releases: lmendo/MATL
Various small changes
-
Zp
with non-negative inputs (isprime
) now accepts non-integer values -
Added predefined literal:
['0':'9' 'A':'Z']
-
Z?
: if 3 inputs and third input is char, the output is converted to char -
The format string in
YD
(sprintf
) is now the last input, not the first -
Changed default input specs for
Y-
(deconv
)
Corrections to Z? (sparse) and three-input Z+ (circular convolution)
Z?
(sparse): for each of the first three inputs, if it ischar
it is converted todouble
- For three-input
Z+
(cconv
), integer inputs are guaranteed to give exact integer results, up todouble
data type limitations
Corrections and extensions
-
Circular convolution (
cconv
) implemented asZ+
with 3 inputs; including Octave compatibility -
Zc
with a single, non-cell input replaces nonzeros by 35 (ASCII for '#') and converts to char -
Octave compatibility:
Zd
(gcd
) andZm
(lcm
) now allow char inputs -
Extended
Zs
with skewness and kurtosis -
Correction for set functions in Octave. The bug afffected Octave's compatibility functions for
setxor
,setdiff
,union
andintersect
. Thanks to Sanchises for noticing!
Various small changes
-
Y"
(repelem
, or run-length decoding) with two inputs and at least one of them empty used to give an error. Now it doesn't give an error, and it produces empty output -
YG
can now handle colormaps of typelogical
-
Zv now allows second input to be a vector (or array, and then it's linearized into a vector)
-
XG
(plot
) with first input complex now setsaxis equal
also with several inputs if second input is a string (it used to be only with a single, complex input) -
:
with single cell-array input treats the contents of the cell array as the actual inputs
Changes to `c` and `YT`
-
c
(convert to char) now allows logical input -
YT
now has 1 input by default. Output is char if any input is
Various changes; see description
Function _
with uint8
input normalizes it by converting to double and dividing by 255
Function XC
(histcount
) removed (for reasons indicated in the commit and in the doc)
Various changes; see description
-
Yr
: if the first input is a vector of 2 elements it is automatically sorted -
Y"
with 2 inputs: second input is linearized if needed. If the first or second input is shorter than the other, entries are repeated cyclically to match lengths -
The loop variable in the "do twice" loop now takes values
0
and1
, notF
andT
. -
Zv
with two inputs: symmetrize array along specified dimension -
Zu
now requires two inputs. Strings in second input can be replaced by numbers
Correction in `Z$`
Correction in Z$
. It was incorrectly reading as chars, instead of doing what it said. Now
it does what it said/says: reads bytes and converts each individual byte
to char.
Some additions
-
Defined
&
as2$
forr
(rand
) andXr
(randn
) -
For
3ZG
(hold
), flag strings in first input can be replaced by numbers, as follows: 1: 'on', 2: 'off'. -
Added predefined literals 17Y2, 18Y2, 19Y2: 'aeiouy', 'AEIOUY', 'aeiouyAEIOUY'
-
Added
imerode
andimdilate
inZI
-
Added
inpolygon
inZQ
-
YF
: With two outputs, primes that are not factors are skipped, together with thier (zero) exponents. If the input contains at least a negative entry the behaviour is changed: primes are skipped if one output, and are not skipped if two outputs.
"Do twice" loop; and some corrections
-
Defined "do twice" loop
-
D
with 1 output now replaces most input characters below 32 by space (similar to what happens with 0 outputs) -
Corrected
mat2str_comp
(Octave compatibility), so that it doesn't remove trailing spaces