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
>>
>

Reply via email to