octave-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Octave-bug-tracker] [bug #66651] control package, MIMO systems wrong cr


From: Torsten Lilge
Subject: [Octave-bug-tracker] [bug #66651] control package, MIMO systems wrong created C matrix for state space representation using ss
Date: Fri, 10 Jan 2025 15:32:23 -0500 (EST)

Update of bug #66651 (group octave):

                  Status:                    None => Need Info

    _______________________________________________________

Follow-up Comment #2:

There exists an indefinite number of state space representations with
identical transfer function. You are expecting a diagonal form. You can try to
transform the result of ss() into a diagonal form by 

# Similarity trnasformation
[T, lambda] = eig (sys_ss.a);
A = inv(T)*sys_ss.a*T;
B = inv(T)*sys_ss.b;
C = sys_ss.c*T;
# Set very small values to 0 (finite
# numerical accuracy) for a nicer output
A(abs(A)<1e-12)= 0
B(abs(B)<1e-12)= 0
C(abs(C)<1e-12)= 0

However, this method is only possible for systems with single eigenvalues.

Could you please try this and report back whether you get the expected
results? The order of non-zero entries in B and C might differ because the
order of the subsystems in A follows the magnitude of their eigenvalues.


    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?66651>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]