doc CDReSp
Documentation of the CDReSp function.
helpFun('CDReSp')
Constant Ductility Response Spectra
[PSA,PSV,SD,SV,SA,FYK,MUK,ITERK]=CDRESP(DT,XGTT,T,KSI,MU,N,TOL,...
PYSF,DTTOL,ALGID,RINF,MAXTOL,JMAX,DAK)
Description
The constant ductility response spectra for a given time-history of
constant time step, eigenperiod range, viscous damping ratio and
ductility are computed. See section 7.5 in Chopra (2012) and the
notes "Inelastic Response Spectra" (CEE 541. Structural Dynamics) by
Henri P. Gavin.
Input parameters
DT [double(1 x 1)] is the time step of the input acceleration time
history XGTT.
XGTT [double(1:numsteps x 1)] is the input acceleration time history.
numsteps is the length of the input acceleration time history.
T [double(1:numSDOFs x 1)] contains the values of eigenperiods for
which the response spectra are requested. numSDOFs is the number
of SDOF oscillators being analysed to produce the spectra.
KSI [double(1 x 1)] is the fraction of critical viscous damping.
MU [double(1 x 1)] is the target ductility for which the response
spectra are calculated.
N [double(1 x 1)] is the maximum number of iterations that can be
performed until convergence of the calculated ductility to the
target ductility is achieved.
TOL [double(1 x 1)] is the tolerance for convergence for the target
ductility.
PYSF [double(1 x 1)] is the post-yield stiffness factor, i.e. the
ratio of the postyield stiffness to the initial stiffness. PYSF=0
is not recommended for simulation of an elastoplastic system. A
small positive value is always suggested. PYSF is ignored if
MU=1.
DTTOL [double(1 x 1)] is the tolerance for resampling of the input
acceleration time history. For a given eigenperiod T, resampling
takes place if DT/T>dtTol.
ALGID [char(1 x :inf)] is the algorithm to be used for the time
integration. It can be one of the following strings for superior
optimally designed algorithms:
'generalized a-method': The generalized a-method (Chung &
Hulbert, 1993)
'HHT a-method': The Hilber-Hughes-Taylor method (Hilber,
Hughes & Taylor, 1977)
'WBZ': The Wood–Bossak–Zienkiewicz method (Wood, Bossak &
Zienkiewicz, 1980)
'U0-V0-Opt': Optimal numerical dissipation and dispersion
zero order displacement zero order velocity algorithm
'U0-V0-CA': Continuous acceleration (zero spurious root at
the low frequency limit) zero order displacement zero order
velocity algorithm
'U0-V0-DA': Discontinuous acceleration (zero spurious root at
the high frequency limit) zero order displacement zero order
velocity algorithm
'U0-V1-Opt': Optimal numerical dissipation and dispersion
zero order displacement first order velocity algorithm
'U0-V1-CA': Continuous acceleration (zero spurious root at
the low frequency limit) zero order displacement first order
velocity algorithm
'U0-V1-DA': Discontinuous acceleration (zero spurious root at
the high frequency limit) zero order displacement first order
velocity algorithm
'U1-V0-Opt': Optimal numerical dissipation and dispersion
first order displacement zero order velocity algorithm
'U1-V0-CA': Continuous acceleration (zero spurious root at
the low frequency limit) first order displacement zero order
velocity algorithm
'U1-V0-DA': Discontinuous acceleration (zero spurious root at
the high frequency limit) first order displacement zero order
velocity algorithm
'Newmark ACA': Newmark Average Constant Acceleration method
'Newmark LA': Newmark Linear Acceleration method
'Newmark BA': Newmark Backward Acceleration method
'Fox-Goodwin': Fox-Goodwin formula
RINF [double(1 x 1)] is the minimum absolute value of the eigenvalues
of the amplification matrix. For the amplification matrix see
eq.(61) in Zhou & Tamma (2004).
MAXTOL [double(1 x 1)] is the maximum tolerance of convergence of the
Full Newton Raphson method for numerical computation of
acceleration.
JMAX [double(1 x 1)] is the maximum number of iterations per
increment. If JMAX=0 then iterations are not performed and the
MAXTOL parameter is not taken into account.
DAK [double(1 x 1)] is the infinitesimal acceleration for the
calculation of the derivetive required for the convergence of the
Newton-Raphson iteration.
Output parameters
PSA [double(1:numSDOFs x 1)] is the Pseudo-Spectral Acceleration.
PSV [double(1:numSDOFs x 1)] is the Pseudo-Spectral Velocity.
SD [double(1:numSDOFs x 1)] is the Spectral Displacement.
SV [double(1:numSDOFs x 1)] is the Spectral Velocity.
SA [double(1:numSDOFs x 1)] is the Spectral Acceleration.
FYK [double(1:numSDOFs x 1)] is the yield limit that each SDOF must
have in order to attain ductility equal to muK.
MUK [double(1:numSDOFs x 1)] is the achieved ductility for each
period (each SDOF).
ITERK [double(1:numSDOFs x 1)] is the number of iterations needed for
convergence for each period (each SDOF).
Example
dt=0.02;
N=10;
a=rand(N,1)-0.5;
b=100*pi*rand(N,1);
c=pi*(rand(N,1)-0.5);
t=(0:dt:(100*dt))';
xgtt=zeros(size(t));
for i=1:N
xgtt=xgtt+a(i)*sin(b(i)*t+c(i));
end
figure()
plot(t,xgtt)
T=(0.04:0.04:4)';
ksi=0.05;
mu=2;
n=50;
tol=0.01;
pysf=0.1;
dtTol=0.02;
AlgID='U0-V0-Opt';
rinf=1;
maxtol=0.01;
jmax=200;
dak=eps;
[CDPSa,CDPSv,CDSd,CDSv,CDSa,fyK,muK,iterK]=CDReSp(dt,xgtt,T,ksi,...
mu,n,tol,pysf,dtTol,AlgID,rinf,maxtol,jmax,dak);
figure()
plot(T,CDSd)
figure()
plot(T,fyK)
figure()
plot(T,muK)
figure()
plot(T,iterK)
__________________________________________________________________________
Copyright (c) 2018-2023
George Papazafeiropoulos
Major, Infrastructure Engineer, Hellenic Air Force
Civil Engineer, M.Sc., Ph.D.
Email: gpapazafeiropoulos@yahoo.gr
_________________________________________________________________________