MATLAB Examples

EXAMPLE 2: MULTIPLE WIND HISTORIES

The vertical bridge response is now computed for different values of the mean wind velocity, and compared to displacements from a time domain simulation.

Contents

Mechanical properties of the bridge

clearvars;close all;clc;
% phi and wn are matrix that I have built and store the mode shapes and
% eigen frequencies of the main span.
load('bridgeModalProperties.mat','wn','phi')

% Vertical mode shapes:
phiV = squeeze(phi(2,:,:));
% Vertical mode shapes:
wnV = squeeze(wn(2,:));

[Nmodes,Nyy]=size(phiV);
% Structural modal damping ratio for the  Bridge deck:
% here, for simplicity, it is taken as 0.5 % for every modes
Bridge.zetaStruct = 5e-3.*ones(1,Nmodes);

% The mechanical properties of the single span suspension bridge are
% computed.
Bridge.B = 12.3 ; % width of the bridge deck (m)
Bridge.D = 2.76 ; % height of the bridge deck (m)
Bridge.L = 446 ; % Length of the main span (m)
Bridge.x = linspace(0,1,Nyy) ; % normalized bridge main span
Bridge.m = 5350 ; % lineic mass of girder (kg/m)
Bridge.mc = 408 ; % lineic mass of cable (kg/m)
Bridge.m_theta = 82430; % torsional stifness (kg.m^2/m)
Bridge.k = 1/4; % bridge constant . cf aerodynamic of streamlined bridge

% aerodynamic coefficient (quasi steady terms)
Bridge.Cd = 1;% drag coefficient
Bridge.dCd = 0;% first derivative of drag coefficient
Bridge.Cl = 0.1;% lift coefficient
Bridge.dCl = 3;% first derivative of lift coefficient
Bridge.Cm = 0.02;% pitching moment coefficient
Bridge.dCm = 1.12;% first derivative of pitching moment coefficient

% Selection of position where the response is computed
% We choose to compute the response at 1/3 of the bridge.
% We recall that x is the normalized span length ranging from  0 to 1
[~,position] = min(abs(Bridge.x-1/3));
% Application: simulation of the bridge response for multiples wind records.
% Note: the simulation procedure takes < 1 minutes

Niter = 30; % number of wind histories simulated in the frequency domain
meanU = linspace(2,30,Niter); % mean wind speed computed

% STD of vertical bridge displacement in frequency domain (FD)
Doz_FD = zeros(1,Niter);
Bridge.DOF = 'vertical';
Bridge.wn = wnV;
Bridge.phi = phiV;

Wind properties

% Time and frequency definition
tmax = 300; % based on 1800 seconds of records = 30 min
fs = 3; % sampling frequency of 30 Hz is chosen
Nfreq = 512; % number of frequency steps is arbitrary
f = logspace(log10(1/tmax),log10(fs/2),Nfreq);
clear Wind
Wind.Cuy = 8; % decay coefficient for co-coherence for u-component along bridge span
Wind.Cwy = 8; % decay coefficient for co-coherence for w-component along bridge span
Wind.f = f;

% Integral length scales
Lu = 150;
Lw = 50;

Comparison with time domain simulation

Bridge response from a time-domain simulation are compared to the response computed with dynaRespFD in terms of root mean square (rms) of the vertical bridge displacement.

tic
Srz = zeros(Nyy,Nfreq);
for ii=1:Niter,
    Wind.U = meanU(ii);
    stdU = 0.2*Wind.U;
    stdW = 0.6*stdU;
    [Su] = VonKarmanSpectrum(f,Wind.U,stdU,Lu,'u');
    [Sw] = VonKarmanSpectrum(f,Wind.U,stdW,Lw,'w');
    % Storage of the data into the structure variableWind .
    Wind.Su = Su;
    Wind.Sw = Sw;
    [Srz(ii,:)] = dynaRespFD3(Bridge,Wind,position);
    Doz_FD(ii) = sqrt(trapz(f,Srz(ii,:)));
end
toc

load('DynamicDispl.mat')
figure
hold on;box on;
plot(Uref,std(Doz,0,2)./0.2,'kx')
plot(meanU,Doz_FD./0.2,'ro')
legend('time domain','Frequency domain','location','NorthWest');
xlabel(' U (m/s)');
ylabel('\sigma_{r_{z}} (m)');

ni = 20; % choice of iteration nb. 20
[S1,freq]=pwelch(Doz(ni,:),numel(t),1,numel(t),1/median(diff(t)));
figure
axis tight
hold on;box on
plot(freq,S1,'r');
axis tight
plot(f,Srz(ni,:),'k');
set(gca,'Xscale','log')
set(gca,'Yscale','log')
xlabel(' frequency (Hz)');
ylabel('S_{rz} (m^2/s)');
legend('time domain','Frequency domain','location','SouthWest')
Elapsed time is 11.899667 seconds.