Figura 1: Densidad espectral de potencia (Welch, segmentos de 2048 muestras) de la aceleración de la cubierta en los tres escenarios. Las líneas grises son las frecuencias verdaderas del escenario A. Los tres picos están presentes en los tres registros y se desplazan poco; el desplazamiento del escenario C es visible en el primer y el tercer modo.
Para ver si el cambio se puede detectar, se estima la frecuencia de cada pico en 10 bloques de 60 s por escenario (Welch con interpolación parabólica del máximo) y se mira la media y la dispersión:
Ver el código
functionpico(f, P, f0) idx =findall(x ->abs(x - f0) <0.4, f) k = idx[argmax(P[idx])] a, b, c =log(P[k-1]), log(P[k]), log(P[k+1])return f[k] +0.5* (a - c) / (a -2b + c) * (f[2] - f[1])endest =Dict()forein ("A", "B", "C") m =zeros(10, 3)for b in1:10 seg = datos[e][(b-1)*6000+1:b*6000, 4] f, P =psd_welch(seg .-mean(seg), 100.0; nseg=2048)for j in1:3 m[b, j] =pico(f, P, f3[j])endend est[e] = mend# frecuencias verdaderas de cada escenario (las de E.1)verdad =Dict(e=>modos_propios(edificio_tres_plantas(escenario=Symbol(e))[[3, 1]]...)[1] forein ("A", "B", "C"))filas =String[]forein ("A", "B", "C"), j in1:3push!(filas, "| $e | $j | $(coma(verdad[e][j]; d=3)) | $(coma(mean(est[e][:, j]); d=3)) ± $(coma(std(est[e][:, j]); d=3)) |")endMarkdown.parse("| Escenario | Modo | f verdadera (Hz) | f estimada (Hz) |\n|:--:|:--:|--:|:--|\n"*join(filas, "\n"))
Tabla 1: Frecuencia estimada de cada pico en bloques de 60 s de la aceleración de la cubierta: media ± desviación típica entre los 10 bloques de cada escenario, frente al valor verdadero.
La dispersión de un bloque de 60 s es de \(0{,}01\)–\(0{,}04\) Hz, y a veces mayor que el cambio buscado: con un solo bloque, el primer modo del escenario C (\(-0{,}02\) Hz) apenas se distingue del A.
Con los 10 bloques sí. El error típico de la media es unas \(\sqrt{10}\approx3{,}2\) veces menor, y el cambio de C (\(-1{,}9\,\%\) en el primer modo) queda claramente separado; el de B (\(-0{,}5\,\%\), unos \(0{,}005\) Hz) no se separa de la dispersión: con este método no se distingue de «no pasa nada».
La estimación tiene sesgo: las medias de A no coinciden exactamente con la verdad (el tercer modo sale a unos \(0{,}03\) Hz de ella, por la resolución del Welch y la cercanía del modo 2).
Es la antesala de M12: la detección útil exige cuantificar la incertidumbre del estimador y compararla con la variabilidad del estado sano, y no basta con ver que un número cambia.