doc BLKIN
Documentation of the BLKIN function.
helpFun('BLKIN')
Bilinear kinematic hysteretic model with elastic viscous damping [F,K,C,K_STATUS,D] = BLKIN(U,UT,K_HI,K_LO,UY,M,KSI,K_STATUS,D) Description Define the internal force vector, tangent stiffness matrix and tangent damping matrix of a bilinear elastoplastic hysteretic structure with elastic damping as a function of displacement and velocity. The MDOF structure modeled with this function consists of lumped masses connected with stiffness and damping elements in series. Each lumped mass has one degree of freedom. The first degree of freedom is at the top of the structure and the last at its fixed base. However, the last degree of freedom is not included in the input arguments of the function, i.e. not contained in ndof, as it is always fixed. The nonlinear stiffness is virtually of the bilinear type, where an initial stiffness and a post-yield stiffness are defined. The unloading or reloading curve of this model are parallel to the initial loading curve, and a hysteresis loop is created by continuously loading and unloading the structure above its yield limit. This behavior can be viewed as hardening of the kinematic type. An appropriate reference for this function definition is Hughes, Pister & Taylor (1979): "Implicit-explicit finite elements in nonlinear transient analysis". This function should be defined in accordance with equations (3.1), (3.2) and (3.3) of this paper. This representation has as special cases nonlinear elasticity and a class of nonlinear “rate-type” viscoelastic materials. Tangent stiffness and tangent damping matrices are the "consistent" linearized operators associated to f in the sense of [Hughes & Pister, "Consistent linearization in mechanics of solids", Computers and Structures, 8 (1978) 391-397]. Input parameters U [double(1 x 1)] is the absolute displacement. UT [double(1 x 1)] is the absolute velocity. K_HI [double(1 x 1)] is the initial stiffness of the system before its first yield, i.e. the high stiffness. K_LO [double(1 x 1)] is the post-yield stiffness of the system, i.e. the low stiffness. UY [double(1 x 1)] is the yield limit of the structure. The structure is considered to yield, if the displacement exceeds uy(i). M [double(1 x 1)] is the lumped mass. KSI [double(1 x 1)] is the ratio of critical viscous damping of the system, assumed to be unique for all damping elements of the structure. K_STATUS [double(1 x 1)] is the is the stiffness vector which takes into account any plastic response of the structure. It is used to record the status of the structure so that it is known before the next application of this function at a next (time) step. Initialize by setting K_STATUS=K_HI. D [double(1 x 1)] is the is the equilibrium displacement vector which takes into account any plastic response of the structure. It is used to record the status of the structure so that it is known before the next application of this function at a next (time) step. Initialize by setting D=zeros(ndof,1). Output parameters F [double(1 x 1)] is the internal force vector of the structure (sum of forces due to stiffness and damping) at displacement u and velocity ut K [double(1 x 1)] is the tangent stiffness matrix (nonlinear function of displacement u and velocity ut). It is equivalent to the derivative d(f)/d(u) C [double(1 x 1)] is the tangent damping matrix (nonlinear function of displacement u and velocity ut). It is equivalent to the derivative d(f)/d(u) K_STATUS [double(1 x 1)] is the is the stiffness vector which takes into account any plastic response of the structure. It is used to record the status of the structure so that it is known before the next application of this function at a next (time) step. D [double(1 x 1)] is the is the equilibrium displacement vector which takes into account any plastic response of the structure. It is used to record the status of the structure so that it is known before the next application of this function at a next (time) step. Example u=0:0.2:4; u=[u,u(end:-1:1)]; u=[u,-u]; u=[u u]; ut=0.001*ones(1,numel(u)); ut=[ut,-ut]; ut=[ut,ut(end:-1:1)]; ut=[ut ut]; k_hi=1000; k_lo=1; uy=2; M=1; ksi=0.05; k=k_hi; d=0; f=zeros(1,numel(u)); for i=1:numel(u) [f(i),K,C,k,d] = BLKIN(u(i),ut(i),k_hi,k_lo,uy,M,ksi,k,d); end figure() plot(u,f) __________________________________________________________________________ Copyright (c) 2018-2023 George Papazafeiropoulos Major, Infrastructure Engineer, Hellenic Air Force Civil Engineer, M.Sc., Ph.D. Email: gpapazafeiropoulos@yahoo.gr _________________________________________________________________________