Reduced flexible model results across different MATLAB Versions

24 Ansichten (letzte 30 Tage)
younghwa park
younghwa park am 27 Okt. 2025 um 12:48
Kommentiert: Umar am 29 Okt. 2025 um 5:09
Hi,
The deflection of rod is different across different MATLAB version.
When I exert 1N to bar in Simulink, the response is diffrent across different MATLAB version.
The schematic is like this.
It must be an error for my modelling or model change os simscape. What is a cause for this difference?
BR,
  1 Kommentar
Umar
Umar am 29 Okt. 2025 um 5:09

Hi @younghwa park, Have you made any progress or need further assistance, please let us know.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Umar
Umar am 28 Okt. 2025 um 4:27

Hi @younghwa park,

I looked at your code in the GitHub link provided by you and the deflection difference between versions. Your beam.m script creates a reduced-order model but doesn't include any damping - you're only generating mass and stiffness matrices with the reduce function. This means your Simulink model is using whatever default damping values are set in the Reduced Order Flexible Solid block parameters, and those defaults likely changed between R2024b and R2025a. So, open your beam.slx file in both versions, double-click the Reduced Order Flexible Solid block, and compare the Damping settings. You'll probably find different values for the damping ratio or the damping type itself has changed. That would explain the factor of two difference you're seeing. To test if this is really the issue, try adding explicit damping to your code right after the reduce line:

rom = reduce(femodel,'FrequencyRange',[0 20]*(2*pi));
rom.C = 0.01 * 2 * sqrt(rom.K .* rom.M);

This adds 1% damping to all modes. If both versions give you the same results after this change, you've confirmed it's a damping default issue. Also check that the reduced-order model itself is the same between versions by running this after your reduce command:

disp(size(rom.K,1));
[V,D] = eig(rom.K, rom.M);
disp(sort(sqrt(diag(D))/(2*pi)));

The number of DOFs and natural frequencies should match between versions. If they don't, the reduce function itself changed behavior.

References:

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by