How do I get the right vector of spring coefficients for the nonlinear translational spring?

조회 수: 2 (최근 30일)
Hi, I have to simulate a arrangement of nonlinear translational springs. Now i have the polynomial expression:
F = (286e+16*x^3)/209e+4 - (412e+15*x^2)/838e+3 + (352e+16*x)/167e+9;
% F = k_3 * x^3 + k_2 * x^2 + k_1 * x;
And now i tryed to give the different factors k1 to k5 to the spring:
Also i tested it with a constant force with the following model: (its also attached)
But now i get errors. I tryed the system with linear springs and it worked well. Anybody have a clue what I've done wrong or have to change?
An error occurred while running the simulation and the simulation was terminated
Caused by:

채택된 답변

Yifeng Tang
Yifeng Tang 2024년 7월 17일
Hi Emefun,
A couple of things to fix:
(1) add mass blocks. The "dynamic variable derivatives" error is most likely referring to applying a force to where the mass is zero, so inf acceleration. When you had a linear spring, the solver may be able to simplify the equation enough to avoid this, but it's not in general possible for nonlinear spring.
(2) I noticed you've specified nominal values in all the nonlinear spring blocks. I suspect that you meant to set initial conditions. It should be done in the "Initial Target" section. It's very rare when it's necessary to modify the nominal values.
Making these two changes and the model will run. But it runs very slow. I looked at the results and I believe it's due to the very high frequency of the oscillation you have in the system. Please check whether the parameters (spring constants, masses, etc) are correctly set, including the units.
See attached model.
  댓글 수: 1
Emefun
Emefun 2024년 7월 17일
Thank you so much! I controll the nominal values from a matlab script. So I can calculate them in the m-file and save it to the workspace and then I'm able to simulate the model.
About the simulation-speed, yess I know its slow, but I have to deal with it. Luckily its only for a single chase. The other calculation have other parameters and there its done in a few seconds.
Thanks again. Best regards.

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

추가 답변 (0개)

카테고리

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

제품


릴리스

R2023b

Community Treasure Hunt

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

Start Hunting!

Translated by