Discrepancy in transfer functions

조회 수: 1 (최근 30일)
Jeff
Jeff 2017년 6월 3일
편집: Walter Roberson 2017년 6월 4일
I have included in the .zip file a .slx model & the input data & parameters in the .mat file. You will need to import the contents of the .mat file into your WORKSPACE prior to opening the .slx model.
The .slx model is a dual mass/spring/damper system. Execute the following after running the model to obtain the transfer functions of the mass displacements.
TF=tf(SIMULINKbode.values);
z=TF(:,1).num;
zdiff=[cell2mat(z(1))-cell2mat(z(3));cell2mat(z(4));[0 0 1 b(3) c(3)]-[0 0 0 b(3) c(3)]];
tf(SIMULINKbode.values)
Below are the analytical expressions for the 2 masses and the difference between the 2:
The values for a, b, & c is listed in your WORKSPACE. Inspection of the results for X0-X1 which correlates to Y1-Y2 in the analytical expression against zdiff which represents the numerator of Y1-Y2 reveals a discrepancy. zdiff(3,:) is the correct result which concurs with the analytical results. Why are the results of zdiff(1,:) & zdiff(2,:) produced? Is this something numerical converting from the state-space representation, SIMULINKbode, to the tf representation? If so, is there any documentation about this?
  댓글 수: 2
Jeff
Jeff 2017년 6월 4일
Thanks Walter for providing the proper format for my coded commands. I do not know why my browser did not do this properly.
Walter Roberson
Walter Roberson 2017년 6월 4일
편집: Walter Roberson 2017년 6월 4일
When you enter code, afterwards you should highlight the block of code and click on the '{} Code' button.

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

답변 (0개)

카테고리

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

Community Treasure Hunt

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

Start Hunting!

Translated by