E.1 El modelo y los tres escenarios

E · Caso transversal: un edificio de tres plantas

Esquema de un edificio de tres plantas: tres losas rectangulares unidas al suelo y entre sí por muelles verticales a ambos lados, con las rigideces de cada entrepiso, un punto naranja que marca el acelerómetro de cada planta y flechas con los desplazamientos de cada una.
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 in 1: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}()
for e in (:A, :B, :C)
    M, _, K = edificio_tres_plantas(escenario=e)
    res[e] = modos_propios(K, M)
end
filas = String[]
for e in (:B, :C), j in 1: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)) |")
end
Markdown.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\).