reconciling zpk output?

1 vue (au cours des 30 derniers jours)
Jeff
Jeff le 14 Mai 2017
Commenté : Walter Roberson le 4 Juin 2017
I have included a SIMSCAPE model of a 3 DOF system in the attached ZIP file along with the necessary input data. In the jpg schematic below I have highlighted the signals which I transformed using the zpk command. The signals highlighted in blue & green in the schematic yield identical transforms shown in the output below. I then subtract the 2 signals & transform that signal highlighted in red. If linearity is valid then should the transform of the red signal = 0? The output of zpk does not give 0 but what looks like a 3 DOF system with 2 complex conjugate pole pairs & a real pole with a low frequency gain of 0.090058.
The results below were obtained by executing zpk(SIMULINKbode.values)
(s^2 + 2200s + 1.25e08)
Mass 0 X: -------------------------------------------------
(s^2 + 1138s + 1.964e07) (s^2 + 3062s + 1.273e08)
(s+600) (s^2 + 2200s + 1.25e08)
Free node X: ---------------------------------------------------------
(s+600) (s^2 + 1138s + 1.964e07) (s^2 + 3062s + 1.273e08)
0.090058
X0-X1: ---------------------------------------------------------
(s+600) (s^2 + 1138s + 1.964e07) (s^2 + 3062s + 1.273e08)
Can anyone account for this or reconcile the discrepancy?
I have included the .slx model along with the necessary input data in the .zip file to allow you to experiment with the results. Let me know if anything is missing & I will provide it.
Thanks for any assistance
  4 commentaires
Jeff
Jeff le 3 Juin 2017
I have had NO responses on this matter whatsoever. Is there anything I need to provide or is the matter too open-ended?
If anyone has attempted to address this & they are getting errors it is likely due to the lack of input values & data. If you experience this you need to import the contents of the data.mat into your WORKSPACE prior to running the models. Maybe I should have specified that up front, but I assumed those who are examining this would already realize that a priori. I might have assumed too much.
Walter Roberson
Walter Roberson le 4 Juin 2017
People with simscape experience seldom post on MATLAB Answers. As far as I know none of hundred or so most active volunteers have simscape experience (or not much of it.)

Connectez-vous pour commenter.

Réponses (1)

Jeff
Jeff le 4 Juin 2017
I believe I found the source of the problem, but I do not know how to deal with it. It appears that the ZEROS of X0 & X1 are not exactly the same. They should be, but at 10^10 they do differ. You can see this by running the following code after running the .slx model:
TF=zpk(SIMULINKbode.values)
z=TF(:,1).z;
z3=cell2mat(z(3));
z9=cell2mat(z(9));
zdiff=z3-z9(1:2);
Inspection of zdiff shows the difference. Analytically, X0 & X1 should be identical. In fact, subtracting the 2 signals in the time domain shows this:
x.signals.values(:,3)-x.signals.values(:,4);
So transforming into the frequency domain introduces numerical error. What is the best strategy to avoid this or do I simply have to live with it?

Catégories

En savoir plus sur Magnetic Elements dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by