# LME Libraries Release Notes

## LME 7.0

### New

- new library
`probdist`

### Minor changes

- polynom: in
`polynom::roots`,`ratfun::isproper`and`ratfunzp`constructor, leading zero polynomial coefficients ignored

### Bug fixes

- polynom: in
`ratfunzp::char`(and`ratfunzp::disp`which calls it), inf and nan caused an infinite loop; fixed - lti: no more leading zero coefficients in transfer functions resulting from the conversion of pid objects with zero parameters

## LME 6.0.1

### Bug fixes

- lti: graphical functions have not accepted string style arguments since version 6.0; fixed

## LME 6.0

### New

- lti:
`zpk`,`pid`,`pidstd`and`frd`classes - lti_filter (new)
- polynom (aka classes):
`ratfunzp`class for rational functions defined by zeros, poles and gain

### Minor changes

- stdib:
`isprime`,`linspace`,`logspace`, and`median`removed (built-in functions) - date: support for second fractions in
`datestr` - classes.lml has been renamed polynom.lml, and a new classes.lml includes polynom.lml for backward compatibility
- sigenc.lml, filter.lml: unused arguments replaced with ~

### Bug fixes

- lti:
`tf::mpower`actually computed`tf::power`; fixed (both`power`and`mpower`are implemented) - polynom: operations where the first argument was a
`polynom`and the second one a`ratfun`failed; fixed thanks to`superiorto` `tf::minreal`introduces less roundoff errors, especially when transfer functions order cannot be reduced

## LME 5.1

### Minor changes

- stdib:
`factor`removed (built-in function)

## LME 5.0

### New

- colormaps: color maps for
`colormap`command - polyhedra: regular polyhedra
- solids: simple solid shapes

## LME 4.7

### Minor changes

- classes: in
`char`and`disp`, support for complex coefficients - classes: all errors have error identifiers
- quaternion: not bundled anymore (replaced by native support of quaternions)

## LME 4.6

### New features

- stdlib:
`ndgrid`

### Minor changes

- stdlib:
`fft2`,`ifft2`,`std`, and`cross`have been removed (they are native now) - stat:
`moment`,`var`,`skewness`, and`kurtosis`have been removed (they are native now)- bench:
`uint8`benchmark requires less memory for setup (no effect on timings) - bench: new results for Intel Macintosh and Atari ST

### Bug fixes

- lti:
`zpk`didn't pass correctly arguments to`tf::tf`; fixed - stdlib:
`toeplitz`with a single argument was broken; fixed

## LME 4.5.2

### Minor changes

- lti, quaternion, stdlib:
`prod(size(...))`replaced by`numel(...)`

### Bug fixes

- lti:
`tf::horzcat`and`tf::vertcat`didn't work correctly with models without any state; fixed - lti:
`tf::connect`was missing; fixed

## LME 4.5.1

### Minor changes

- stdlib: functions
`sec`,`csc`,`cot`,`asec`,`acsc`,`acot`,`sech`,`csch`,`coth`,`asech`,`acsch`,`acoth`, and`log2`have been removed; they're now native in LME

### Bug fixes

- wav: glitch in the source code fixed

## LME 4.5

### New features

- bench: new
- date: new
- stdlib:
`blkdiag` - lti:
`ssdata`,`tfdata` - lti:
`lti::norm`(H2 norm) - lti:
`lti::isct`,`lti::isdt`,`lti::dcgain` - quaternion: support for matrices of quaternions; internal structure has
changed,
`double`gives now an m-by-n-by-4 array, arithmetic operators now work on quaternion matrices like on real or complex matrices,`inv`and matrix division operators work on matrices and not element-wise; new functions`beginning`,`cos`,`ctranspose`,`cumprod`,`cumsum`,`det`,`diag`,`elnorm`(which replaces`norm`),`end`,`flipdim`,`fliplr`,`flipud`,`horzcat`,`imag`,`isempty`,`ldivide`(which replaces`mldivide`),`length`,`lu`,`prod`,`real`,`rdivide`(which replaces`mrdivide`),`repmat`,`rot90`,`sin`,`size`,`sqrt`,`subsasgn`,`subsref`,`sum`,`times`(which replaces`mtimes`),`transpose`,`tril`,`triu`,`vertcat` - stat:
`nancov`,`nancorrcoef` - filter: new

### Minor changes

- lti:
`tf`objects have a cell array of`ratfun`objects instead of a list and a separate field for the size - lti:
`tf::feedback`and`tf::plus`apply`minreal`to the result to remove superfluous states - lti:
`ss::repmat` - lti: tags for all error messages
- lti:
`G*H`and`G+H`, where`G`or`H`is 1-by-1 - lti: the sample time of lti objects representing static gains is ignored in expresions where they would cause the error "Sample time don't match"
- stdlib:
`logspace`displays a warning when the upper bound gives infinity

### Bug fixes

- stdlib:
`toeplitz(c,r)`where`length(r)`was 1 gave`c'`instead of`c`; fixed - lti:
`lti::disp`doesn't display a superfluous blank line anymore - lti:
`tf::feedback`for SISO systems ignored the sign argument; fixed - lti:
`lti::feedback`couldn't mix state-space, transfer functions or numeric matrices; fixed - lti:
`tf`with a sample time had a default variable name of`'s'`; no it's`'z'` - lti:
`ss::minreal`didn't always produce the correct result; fixed