Skip to content

ModalDamping

ModalDamping

ModalDamping(numberofModes: int, damping_factors: Iterable[float] | str, user_name: Optional[str] = None)

Bases: Damping

Mode-specific damping ratios for dynamic transient analysis.

ModalDamping defines viscous damping ratios directly for a specified number of eigenmodes. It is commonly used in structural dynamics when modal responses are decoupled.

Tcl form

Renders inside region definitions as: -modalDamping <factor1> <factor2> ...

Example
from femora.core.model import Model

model = Model()
damping = model.damping.modal(
    numberofModes=3,
    damping_factors=[0.05, 0.05, 0.05],
)
print(damping.tag)

Create a modal damping model.

Parameters:

Name Type Description Default
numberofModes int

Number of modes to apply damping to.

required
damping_factors Iterable[float] | str

Damping ratios (between 0.0 and 1.0) for each mode. Can be a list of floats or a comma-separated string.

required
user_name Optional[str]

Optional unique name for the damping object.

None

Raises:

Type Description
ValueError

If number of modes is invalid, or if the damping factors do not match the mode count, or are outside [0.0, 1.0].

Methods:

get_type staticmethod

get_type() -> str

Get the damping type name.

Returns:

Type Description
str

The string "Modal".