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.

## 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.