Clear Filters
Clear Filters

Dimensionless variables of the differential equation

4 views (last 30 days)
Hello all,
I hope you are all doing well. I have established a 2DOF differetial equation. Basically, the equations are the 2 spring-mass-damper system. But I am wondering how to define the variable X to be a dimentionless variable, such as X/L. In my equations, the variable X should be dimensionless but when I exclude the force (F_o the dimensionless force), the results of the equation are not dimensionless which I have already checked. My codes are attached. I think you can easily run it.
I appreciate your support.
Best wishes,
Yu
clc;
clear all;
tspan = 0:0.25:200;
% Units:
% stiffness: N/m, mass:kg, damping(c_1):Ns/m
% displacement(X):m
% alpha (stiffness ratio):k_1/k_2
% gamma (dimension ratio):a/L (structure length)
% f_opt (frequency ratio): f_1/f_2
X0 = [0 0 0 0];
%parameters-------
mu = 0.02; % mass ratio
f_opt = 1/(1+mu); %frequency ratio
xi_2 = sqrt(3*mu/8*(1+mu));
Omega_1 = 0.188; % 0.03 Hz k_1^2/m_1^2 (stiffness^2/mass^2)
Omega_2 = Omega_1*f_opt; % frequency of the second DOF k_2^2/m_2^2 (stiffness^2/mass^2)
xi_1 = 0.01; % damping ratio of first DOF xi_1=c_1/2*m_1*Omega_1
%matrix--------
M = [1+mu mu;
1 1];
C = [2*xi_1*Omega_1 0;
0 2*xi_2*Omega_2];
K = [Omega_1^2 0;
0 Omega_2^2];
% state space model-------------------
% M: mass matrix, K:stiffness matrix, C:damping matrix
O = zeros(2,2);
I = eye(2);
A = [O I; -inv(M)*K -inv(M)*C];
B = [O; inv(M)];
E = [I O];
D = zeros(2,2);
% solve the equations-------------------
options = odeset('RelTol',1e-10,'AbsTol',1e-10);
[t,X] = ode45(@(t,X) QZSdamper(t,A,B,X),tspan,X0,options);
x = X(:,1:4);
% F_o = 2*Omega_2.^2.*alpha.*(sqrt(1-gamma.^2)+X(:,2)).*(-1+sqrt(1/(X(:,2).^2+2.*sqrt(1-gamma^2).*X(:,2)+1)));
%
% f_s = Omega_2.^2*(X(:,2)-2*alpha*(sqrt(1-gamma^2)+X(:,2))*(-1+sqrt(1/(X(:,2).^2+2*sqrt(1-gamma^2)*X(:,2)+1))));
%
% f_1 = f_s(:,1);
%
% figure,
% plot(t,f_1);
figure,
plot(t,x(:,1)); xlabel('Time/s'),ylabel('Dimensionless displacement of primary structure')
figure,
plot(t,(x(:,2)))
sys = ss(A,B,E,D);
figure,
bodeplot(sys(1,1)) % from input 1 to output 3
bp.FrequencyScale = "linear";
[mag,phase,wout] = bode(sys(1,1));
mag = squeeze(mag);
phase = squeeze(phase);
fout = wout/(2*pi);
BodeTable = table(fout,mag,phase);
function dXdt = QZSdamper(t,A,B,X)
mu = 0.025;
alpha = 1;
gamma = 2*alpha/(2*alpha+1);
f_opt = 1/(1+mu);
Omega_1 = 0.188; % 0.03 Hz
Omega_2 = Omega_1*f_opt;
w = 0.180;
F = 0.001*sin(w*t);
F_o = 2*Omega_2^2*alpha*(sqrt(1-gamma^2)+X(2))*(sqrt(1/(X(2)^2+2*sqrt(1-gamma^2)*X(2)+1))-1);
% F_o = Omega_2^2*(sqrt(1-gamma^2)+2*alpha*(X(2))*(1/((X(2)-sqrt(1-gamma^2))^2+2*sqrt(1-gamma^2)*(X(2)-sqrt(1-gamma^2))+1)^(1/2)-1))
F = [F;F_o];
dXdt = A*X+B*(F);
end
  19 Comments
Torsten
Torsten on 6 Oct 2024
Again, force would have units of mass*distance/time^2.
Yes. Dividing each equation by m and the constant L/T^2 (which results from the non-dimensionalization of displacement and time by x~(t~) = 1/L * x(t) ) makes force dimensionless.
Yu
Yu on 6 Oct 2024
@Torsten I am really sorry that I have presented a mess description of my questions. I made some screenshots from word.doc last night when I got the comments from you.
I am aware that it may waste your time to undestand the mess variables and apologize for this.
I have editted my previous reply. I also clarify here
  1. F(t) is the harmonic excitation on the m_1. It should be [f(t) 0].
  2. Yes, F(t) is asin(omega*t) --- the harmonic excitation
  3. f_o = . This also is modified in my previous reply.
  4. Yes, x_tmd = x_2
  5. I just nondimensionalize the nonlinear stiffness force f_o in the second equation. But I have no clue about how to make the first equation nondimensionalized. Additionally, I am not sure I nondimensionalize the second equation successfully.
  6. Yes I need to present the clear description of my question to the professor. It was my mistake.
Again, I am sorry for the inconvenience and thank you for your patient help.
Best wishes,
Yu

Sign in to comment.

Accepted Answer

Sam Chak
Sam Chak on 7 Oct 2024
Hi @Yu
The aim is to render the entire dynamical system dimensionless (by finding the dimensionless time derivative), rather than focusing solely on a single state. I didn't study your tuned mass damper with with quasi-zero-stiffness (QZS), so I provide a relatively simple example below:
Example:
Consider the following example, which presents a simplified set of coupled dynamic equations for a tethered space system (TSS):
where
  • l is the tether length (unit: m),
  • θ is the libration angle (unit: radians, but considered dimensionless),
  • T is the tether tension (unit: kg·m/s²)
  • ω is the orbital angular velocity (a constant) of TSS (unit: rad/s²), and
  • is the mass equivalent (a constant), analogous to adding two "parallel resistors"; the mothership and the tethered probe (unit: kg).
To non-dimensionalize the dynamics of tether length, consider making the tether tension dimensionless by dividing the entire equation by a constant, . Note that is a nominal tether length chosen to satisfy a physical constraint.
If the following dimensionless quantities are defined:
  • dimensionless tension,
  • dimensionless length, , such that
  • dimensionless time,
  • dimensionless time derivative,
then the dimensionless form of the TSS dynamic equations can written as:
  3 Comments
Sam Chak
Sam Chak on 7 Oct 2024
Hi @Yu
Please do not confuse the TSS equations with your TMD equations; they are two distinct systems, though both share Newton's . I reviewed the "scattered equations" (which was very time-consuming), but I did not find the nominal tether length or the orbital angular velocity in your work. You should determine your own nominal displacement and the angular velocity of the TMD system.
I suggest consolidating all equations into a single post to enhance readability. This approach will also facilitate your explanation of the modifications made to the equations and make it easier for others to review them.
Yu
Yu on 7 Oct 2024
Edited: Yu on 7 Oct 2024
@Sam Chak Hi Sam,
Many thanks for your suggestions. And I am sorry that the unclear desciption have taken your much time. I have posted another questions with the description of my system. I guess it is clearer.

Sign in to comment.

More Answers (0)

Categories

Find more on Programming in Help Center and File Exchange

Products


Release

R2022b

Community Treasure Hunt

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

Start Hunting!