Figura 1: Edificio de cortante de tres plantas: masas concentradas en las plantas, rigideces laterales de entrepiso y un acelerómetro por planta. Las fuerzas ambientales, independientes en cada planta, no se miden.
Las ecuaciones son las de A2 y S2: \(\mathbf M\ddot{\mathbf u}+\mathbf C\dot{\mathbf u}+\mathbf K\mathbf u=\mathbf f(t)\), con \(\mathbf M=m\mathbf I\), \(\mathbf K\) tridiagonal (edificio_cortante) y amortiguamiento de Rayleigh \(\mathbf C=\alpha\mathbf M+\beta\mathbf K\) elegido para que \(\zeta=1\,\%\) en los dos primeros modos. Se excita con fuerzas de ruido blanco independientes en las tres plantas (desviación típica \(2\cdot10^4\) N por muestra) y se mide la aceleración absoluta de cada planta a 100 Hz, con ruido de sensor de \(0{,}002\) m/s².
Ver el código
filas = ["| $j | $(coma(f3[j]; d=3)) | $(coma(100* zeta3[j]; d=2)) | $(join(coma.(Phi3[:, j] ./ Phi3[argmax(abs.(Phi3[:, j])), j]; d=3), "; ")) |" for j in1:3]Markdown.parse("| Modo | f (Hz) | ζ (%) | Forma (plantas 1; 2; 3) |\n|:--:|--:|--:|:--|\n"*join(filas, "\n"))
Tabla 1: Propiedades modales verdaderas del escenario A.
Modo
f (Hz)
ζ (%)
Forma (plantas 1; 2; 3)
1
1,105
1,00
0,420; 0,759; 1,000
2
2,939
1,00
1,000; 0,636; -0,903
3
4,390
1,27
-0,958; 1,000; -0,357
Los tres escenarios
Tabla 2: Escenarios del caso transversal. Cada registro dura 600 s a 100 Hz, con una semilla distinta.
Escenario
Qué representa
Cambio en el modelo
Archivo
A
Estado de referencia
ninguno
escenario_A.csv
B
Variabilidad ambiental (p. ej., temperatura)
las tres rigideces un \(1\,\%\) menores
escenario_B.csv
C
Daño localizado
el entrepiso 2 pierde un \(10\,\%\) de rigidez
escenario_C.csv
El objetivo pedagógico es la pregunta central de la monitorización: ¿un cambio de frecuencias es un daño o es variabilidad? En B todo cambia un poco y de forma coherente (las frecuencias bajan todas un \(0{,}5\,\%\)); en C cambia de forma desigual y las formas modales se alteran levemente.
Ver el código
res =Dict{Symbol,Any}()forein (:A, :B, :C) M, _, K =edificio_tres_plantas(escenario=e) res[e] =modos_propios(K, M)endfilas =String[]forein (:B, :C), j in1:3 f, P = res[e]push!(filas, "| $e | $j | $(coma(res[:A][1][j]; d=3)) | $(coma(f[j]; d=3)) | $(coma(100* (f[j] / res[:A][1][j] -1); d=2)) % | $(coma(mac(res[:A][2][:, j], P[:, j]); d=4)) |")endMarkdown.parse("| Escenario | Modo | f en A (Hz) | f (Hz) | Δf/f | MAC |\n|:--:|:--:|--:|--:|--:|--:|\n"*join(filas, "\n"))
Tabla 3: Frecuencias verdaderas de cada escenario, variación respecto de A y MAC con las formas de A.
Escenario
Modo
f en A (Hz)
f (Hz)
Δf/f
MAC
B
1
1,105
1,099
-0,50 %
1,0000
B
2
2,939
2,924
-0,50 %
1,0000
B
3
4,390
4,368
-0,50 %
1,0000
C
1
1,105
1,084
-1,85 %
0,9998
C
2
2,939
2,931
-0,24 %
0,9995
C
3
4,390
4,254
-3,11 %
0,9993
Las frecuencias del escenario C bajan \(1{,}85\,\%\), \(0{,}24\,\%\) y \(3{,}11\,\%\) (de forma desigual, como predice la perturbación de A2), y el MAC se mantiene por encima de \(0{,}999\).