Slicot's not ideal from a licensing standpoint, see the earlier discussion from February in this thread. There is a GPL-licensed version of Slicot available from Debian, which works for the sake of a package. Long term it makes more sense to reimplement the important parts of Slicot that wrap Lapack to provide Sylvester and Lyapunov and Riccati solvers for discrete and continuous time, in base Julia.
I think Jim Crist spent the summer doing a Python GSoC, so progress on control packages for Julia has been mostly stalled. Eventually I think Julia could make a fine platform for code generation of embedded controllers, hard or soft real time. Array views and the like will make this easier, but I don't see any reason you couldn't refactor Julia code to do the vast majority of allocation up-front and end up generating more or less the same LLVM IR that Rust's compiler would. And I doubt Rust will ever be as good of an interactive technical computing environment as Julia in terms of REPL, plotting, simulation, experimenting, etc. Compile-run-tweak cycles are not a convenient way to do control design (or much of anything, let's be honest). Generating embedded controllers in LLVM IR rather than C is currently very atypical, but eventually I think it could be made to work. A Julia replacement for "realtime workshop" is a good long-term goal. On Sunday, September 14, 2014 12:58:36 PM UTC-7, Andrew Wagner wrote: > > Hello again Uwe! > > It's fun running into someone I know on a language geek forum :) I'm > helping one of our bachelor's students implement an LQR controller on our > carousel in Freiburg. It's an ugly hack, but I'm calling an octave script > to recompute the feedback gains online. Octave wraps slicot, so if the > licenses are compatible, perhaps wrapping slicot is the way to go for some > functions, if the licenses are compatible. > > Personally, I have a burning desire for a better language we can actually > do control in (rust?). I doubt Julia qualifies due to the garbage > collection, but does anyone know if Julia has some sort of way to JIT Julia > expressions to code that does ~not have any garbage collection? If so, is > there a way to export them as object files and link against them from C? > Then you'd still have to write glue code in a systems language, but at > least the implementation of the controller wouldn't have to cross a > language boundary... > > Cheers, > Andrew > > On Thursday, February 20, 2014 10:56:20 PM UTC+1, Uwe Fechner wrote: >> >> Hello, >> >> I could not find any control system library for Julia yet. Would that >> make sense? >> There is a control system library available for Python: >> http://www.cds.caltech.edu/~murray/wiki/index.php/Python-control >> >> Perhaps this could be used as starting point? I think that implementing >> this in Julia >> should be easier and faster than in Python. >> >> Any comments? >> Should I open a feature request? >> >> Uwe Fechner, TU Delft, The Netherlands >> >
