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
 _________________________________________________________________________