Matlab Compiler & Control Systems Toolbox: Problems compiling associations of transfer functions.

조회 수: 1 (최근 30일)
Hi, I'm writing some code using the control systems toolbox and I want to compile it into a standalone version.
I have problems doing the inverse of an lti system. I want to do the following operation: A^{-1}*B. With A and B lti objects.
I tried several ways of performing it. All of them work when runned in Matlab, but all of them give error when the compiled version is runned.
The possible ways I tried are: 1.- inv(A)*B Result: Undefined function 'triperm' for input atguments of type 'char' 2.- A\B Result: Undefined function 'matscale' for input atguments of type 'char' 3.- Use the feedback function as follows: (feedback(eye(size(A,1)),A-eye(size(A,1))) )*B
3.- Operation using the ltf command from the control systems toolbox.
4.- Operation using the append and connect commands.
As I said, none of them works after compiling, and I couldn't find anything in the Matlab docummentation saying that the compilation of this functions is not supported.
Even more strange, the compiled version works for Linux but not for Windows.
Anybody knows why I get this problem?, do you know how to solve it or a workaround?
Thanks in advance for your help.
  댓글 수: 1
Craig
Craig 2012년 5월 4일
What version/release of MATLAB are you using? You can determine this by typing "ver" and the command line.

댓글을 달려면 로그인하십시오.

답변 (1개)

Kaustubha Govind
Kaustubha Govind 2012년 5월 4일
Are you using the same version of MATLAB on Windows and Linux? Perhaps support for LTI objects with MATLAB Compiler was added in a newer release, which you are using on Linux? Alternately, there could have been a bug on the version being used on Windows that does not work well with LTI objects. You could try using this solution by manually specifying the path to $matlabroot\toolbox\control to MCC, which is where I assume the LTI object related functions exist.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by