Thanks Walter for providing the proper format for my coded commands. I do not know why my browser did not do this properly.
Discrepancy in transfer functions
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
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 commentaires
Walter Roberson
le 4 Juin 2017
Modifié(e) : Walter Roberson
le 4 Juin 2017
When you enter code, afterwards you should highlight the block of code and click on the '{} Code' button.
Réponses (0)
Voir également
Catégories
En savoir plus sur Troubleshooting 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!