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
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
veeresh g
am 13 Sep. 2019
Kommentiert: veeresh g
am 17 Okt. 2019
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
2 Kommentare
Akzeptierte Antwort
darova
am 13 Sep. 2019
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
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.
19 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Surrogate Optimization finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!