How to find Quadratic Damping?
Show older comments
Hi,
I have a time series data set from a motion decay test (sample attached).
load('sampleData.mat');
% whos
figure
plot(x, y);
xlabel('time [s]'); ylabel('amplitude'), grid minor
I want to find the quadratic equivalent damping using this data set, in the form of,
damping = A*amplitude + B*amplitude*|amplitude|
where, A and B are the coefficients that needs to be found. I tried the Logarithmic decrement approach, but I couldn't find the right peaks, plus I don't know how to use that approach to find two coefficients. Any help is very much appreciated.
2 Comments
Mathieu NOE
on 18 Mar 2024
Edited: Mathieu NOE
on 17 May 2024
this is a starter - I will probably have a bit more time at the end of the week for the quadratic term

the code for linear damping (log decrement) is :
load('sampleData.mat');
ind = 1:20000; % I restrict to the first half of data to avoid the noise at the end of the record
[Ypk,Xpk,Wpk,Ppk] = findpeaks(y(ind),'MinPeakHeight',1,'MinPeakDistance',200);
plot(x,y,x(Xpk),Ypk,'dr')
label('time [s]'); ylabel('amplitude')
n_peaks=numel(Xpk);
%Vector length of interest
x_new = x(Xpk);
y_new = Ypk;
%---Calculate Logarithmic Decrement, undamped natural frequency, damped natural frequency, damping ratio
Log_Dec = zeros(length(n_peaks));
for nn = 1:n_peaks-1 %
Log_Dec(nn)= log(y_new(nn)/y_new(nn+1)); % computed with n = 1 periods apart
end
Mean_dec = mean(Log_Dec); %Calculate Average Logarithmic Decrement
%Damping
damp_ratio_logdec = 1/sqrt(1+((2*pi/(Mean_dec))^2)) %Assesses Damping Constant
Jake
on 18 Mar 2024
Accepted Answer
More Answers (0)
Categories
Find more on Splines in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!