Skip to content

RayleighDamping

RayleighDamping

RayleighDamping(alphaM: float = 0.0, betaK: float = 0.0, betaKInit: float = 0.0, betaKComm: float = 0.0, user_name: Optional[str] = None)

Bases: Damping

Classical mass- and stiffness-proportional Rayleigh damping model.

RayleighDamping defines viscous damping factors proportional to mass (alphaM) and/or elements stiffness (betaK, betaKInit, betaKComm). It is commonly assigned to regions for dynamic transient simulations in OpenSees.

Tcl form

Renders inside region definitions as: -rayleigh <alphaM> <betaK> <betaKInit> <betaKComm>

Note
  • All factors must be non-negative.
  • At least one damping factor must be greater than zero.
Example
from femora.core.model import Model

model = Model()
damping = model.damping.rayleigh(
    alphaM=0.05,
    betaK=0.01,
)
print(damping.tag)

Create a Rayleigh damping model.

Parameters:

Name Type Description Default
alphaM float

Mass-proportional damping factor.

0.0
betaK float

Current stiffness-proportional damping factor.

0.0
betaKInit float

Initial stiffness-proportional damping factor.

0.0
betaKComm float

Committed stiffness-proportional damping factor.

0.0
user_name Optional[str]

Optional unique name for the damping object.

None

Raises:

Type Description
ValueError

If any damping factor is negative or if all factors are zero.

Methods:

get_type staticmethod

get_type() -> str

Get the damping type name.

Returns:

Type Description
str

The string "Rayleigh".