matrix exponential used by the control package
Torsten Lilge <[email protected]>
| Newsgroups | gmane.comp.gnu.octave.maintainers |
|---|---|
| Message-ID | <[email protected]> |
Hi everyone, the control package uses the SLICOT function mb05nd [1] (__sl_mb05nd__()) instead of the octave function expm() for the matrix exponential. The problem with mb05nd is that when discretizing a static gain in state space results in >> [a,b,c,d] = ssdata (c2d (ss (tf (1,1)),1)) a = [](1x0) b = 0 c = [](1x0) d = 1 Instead, using expm() leads to the correct result >> [a,b,c,d] = ssdata (c2d (ss (tf (1,1)),1)) a = [](0x0) b = [](0x1) c = [](1x0) d = 1 Are there any reasons against using expm()? Torsten [1] http://slicot.org/objects/software/shared/doc/MB05ND.html