MATLAB Answers

0

Amplitudes or seat to head transmissibilities calculation? i wrote a code based on some already optimized parameters to calculate amplitude ratios but curve is not matching can any one help me to find out where is the mistake

Asked by veeresh g on 13 Sep 2019
Latest activity Commented on by veeresh g on 27 Sep 2019 at 10:25
clc
clear all
%This is the programme with parameterssuggested by the somaye
m1=5.5 ;m2= 20;m3=4.17;m4= 9.337 ;m5=15.853 ;m6= 5.807;
k1=49340 ;k2=20000;k3=10000;k4=134400 ;k5=2916 ;k6=146640;k7= 68064;
c1=2475 ;c2=330 ;c3=200;c4= 250;c5=316;c6=3252.9;c7=1606.3;
M=[m1 0 0 0 0 0 ;0 m2 0 0 0 0; 0 0 m3 0 0 0;0 0 0 m4 0 0;0 0 0 0 m5 0;0 0 0 0 0 m6];
K=[k1+k2+k7 -k2 0 0 -k7 0; -k2 k2+k3 -k3 0 0 0; 0 -k3 k3+k4 -k4 0 0; 0 0 -k4 k4+k5 -k5 0;-k7 0 0 -k5 k5+k6+k7 -k6; 0 0 0 0 -k6 k6];
C=[c1+c2+c7 -c2 0 0 -c7 0; -c2 c2+c3 -c3 0 0 0; 0 -c3 c3+c4 -c4 0 0; 0 0 -c4 c4+c5 -c5 0;-c7 0 0 -c5 c5+c6+c7 -c6; 0 0 0 0 -c6 c6];
W = 2*pi*[0.5 0.63 0.8 1 1.25 1.6 2 2.5 3.15 4 5 6.3 8 10 12.5 16 20];% Experimental frequency range in radians
p=zeros(17,1);
x=zeros(17,1);
x1=zeros(17,1);
q=zeros(17,1);
y=zeros(17,1);
y1=zeros(17,1);
r=zeros(17,1);
z=zeros(17,1);
z1=zeros(17,1);
[rows columns] = size(W);
for i=1:columns % Retriveing number of frquencies
A= (-W(i)^2*M+j*W(i)*C+K);
B=[k1 c1; 0 0; 0 0; 0 0;0 0;0 0];
a = [1.01 1.01 1.01 1.02 1.03 1.06 1.08 1.1 1.16 1.29 1.45 1.23 1.01 0.96 0.86 0.71 0.63]; % Experimental results of seat to head transmissibility.
% b1= abs([0 0 0 0 0 1]*inv(A)*B*[1; j*W(i)]); % Analytical calculation of seat to head trasnmissibility.
%
% p(i)= abs(b1);
% x(i)= (p(i)- a(i)); % Difference between analytical and experimental STHT values.
% x1(i)= (x(i)^2); % square of the Errors.
end

1 Answer

Answer by darova
on 13 Sep 2019
 Accepted Answer

These matrices look like symmetric except:
>> C-C'
ans =
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 316 0
0 0 0 0 0 0
0 0 -316 0 0 0
0 0 0 0 0 0
>> (K-K')/1000
ans =
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 2.9160 0
0 0 0 0 0 0
0 0 -2.9160 0 0 0
0 0 0 0 0 0
2.jpeg
Giving only 6th root?
b1= abs([0 0 0 0 0 1]*inv(A)*B*[1; j*W(i)]); % Analytical calculation of seat to head trasnmissibility.

  16 Comments

Thank you. It surely will help somebody
Also, this part can be shorter
% p=zeros(17,1);
% x=zeros(17,1);
% x1=zeros(17,1);
% q=zeros(17,1);
% y=zeros(17,1);
% y1=zeros(17,1);
% r=zeros(17,1);
% z=zeros(17,1);
% z1=zeros(17,1);
[p,x,x1,q,y,y1,r,z,z1] = deal( zeros(17,1) );
% M = [m1 0 0 0 0 0 ;0 m2 0 0 0 0; 0 0 m3 0 0 0;0 0 0 m4 0 0;0 0 0 0 m5 0;0 0 0 0 0 m6];
M = diag( [m1 m2 m3 m4 m5 m6] );

Sign in to comment.