import numpy as np
import [Link] as plt
# === Paramètres système ===
mu = 0.03 # Masse relative (m / M)
nu = 1.0 # Rapport de fréquence wn / Omega
Omega = 1.0 # Fréquence propre du système principal (normalisée)
wn = nu * Omega # Fréquence propre du TMD
# === Masse et raideur ===
M = 1.0
m = mu * M
K = M * Omega**2
k = m * wn**2
# === Plage de fréquence d'excitation ===
omega = [Link](0.5, 1.5, 1000)
# === Réponse avec TMD non amorti ===
num = k - m * omega**2
den = (K + k - M * omega**2) * (k - m * omega**2) - k**2
X1_F_with_TMD = [Link](num / den)
# === Réponse sans TMD (système masse-ressort seul) ===
X1_F_no_TMD = 1 / [Link]((K - M * omega**2)**2)
# === Tracé ===
[Link](figsize=(9, 5))
[Link](omega, X1_F_with_TMD, 'b-', linewidth=2, label='|X₁/F| avec TMD non amorti')
[Link](omega, X1_F_no_TMD, 'r--', linewidth=2, label='|X₁/F| sans TMD')
[Link](x=Omega, color='gray', linestyle='--', linewidth=1.5, label='Ω = ω ₙ')
[Link]("Fréquence d'excitation ω (normalisée)", fontsize=12)
[Link]("|X₁/F|", fontsize=12)
[Link]("Comparaison : TMD non amorti vs sans TMD", fontsize=14)
[Link](True, which='both', linestyle='--', linewidth=0.5)
[Link](loc='upper left', fontsize=10)
plt.tight_layout()
[Link]()
--
Trésor KANYIKI
Ingénieur civil mécanicien