3.1.5.59. FrictionSpringDamper Material

This command is used to construct a FrictionSpringDamper uniaxial material object. The material models the force-deformation response of a self-centering friction spring damper. The model is based on the behavior described by Wang et al. (2019) in series with an elastic stiffness.

uniaxialMaterial FrictionSpringDamper $matTag $Ke $K $Kp $preload <-initialStrain $initStrain>

Parameter

Type

Description

$matTag

integer

Integer tag identifying the material.

$Ke

float

Elastic stiffness, as shown in the figure above.

$K

float

Loading stiffness, as shown in the figure above.

$Kp

float

Unloading stiffness, as shown in the figure above.

$preload

float

Preload, as shown in the figure above.

$initStrain

float

Optional initial strain. The default value is 0.0.

../../../../_images/FrictionSpringDamper.png

Fig. 3.1.5.20 Force-deformation response of the FrictionSpringDamper material.

The effective secondary tangent stiffness during loading is

\[K_{eq1} = \left(\frac{1}{K_e}+\frac{1}{K}\right)^{-1}\]

and the effective tangent stiffness during unloading is

\[K_{eq2} = \left(\frac{1}{K_e}+\frac{1}{K_p}\right)^{-1}\]

The force associated with the transition during unloading and reloading is

\[F_2 = F_{preload}\frac{K_p}{K}\]

where \(F_{preload}\) is the specified $preload.

The optional -initialStrain argument shifts the strain supplied to the constitutive model such that

\[\epsilon = \epsilon_{applied} + \epsilon_{initial}\]

Thus, a nonzero initial strain can result in a nonzero initial force.

Example

The following example creates a FrictionSpringDamper material with a tag of 1, elastic stiffness of 1000, loading stiffness of 200, unloading stiffness of 100, and preload of 50.

Tcl Code

uniaxialMaterial FrictionSpringDamper 1 1000.0 200.0 100.0 50.0

Python Code

ops.uniaxialMaterial('FrictionSpringDamper', 1, 1000.0, 200.0, 100.0, 50.0)

An initial strain can optionally be specified.

Tcl Code

uniaxialMaterial FrictionSpringDamper 1 1000.0 200.0 100.0 50.0 -initialStrain 0.01

Python Code

ops.uniaxialMaterial('FrictionSpringDamper', 1, 1000.0, 200.0, 100.0, 50.0, '-initialStrain', 0.01)

References:

Wang, W., Fang, C., Zhao, Y., Sause, R., Hu, S., and Ricles, J. (2019). “Self-centering friction spring dampers for seismic resilience.” Earthquake Engineering & Structural Dynamics, 48(9), 1045-1065. https://doi.org/10.1002/eqe.3174

Code Developed by: Mark D. Denavit, University of Tennessee, Knoxville