필터 지우기
필터 지우기

reconciling zpk output?

조회 수: 3 (최근 30일)
Jeff
Jeff 2017년 5월 14일
댓글: Walter Roberson 2017년 6월 4일
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
Jeff
Jeff 2017년 6월 3일
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 2017년 6월 4일
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.)

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

답변 (1개)

Jeff
Jeff 2017년 6월 4일
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?

카테고리

Help CenterFile Exchange에서 Magnetic Elements에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by