Más allá de A, C y Z, la familia de ponderaciones conserva cuatro curvas de propósito especial, cada una la herramienta adecuada para una tarea más concreta: la curva G de ISO 7196:1995 valora el infrasonido por debajo de 20 Hz igual que la ponderación A valora el ruido audible, la histórica B (ANSI S1.4-1983) reproduce mediciones tomadas bajo códigos nacionales antiguos, la D de ruido de aeronaves de la retirada IEC 537 sirve para comparaciones con datos heredados, y la AU (IEC 61012), aún en vigor como la curva G, mantiene las componentes ultrasónicas fuera de una lectura de exposición audible.
Las cuatro comparten la maquinaria de las curvas de IEC 61672-1 (0 dB a
1 kHz donde aplica, procesado multicanal y por bloques con estado), y B, D y
AU toman además el sobremuestreo high_accuracy, y la G también: el diseño
por defecto de G se sobremuestrea hacia 48 kHz, de modo que su rango de
0,25 Hz a 315 Hz se mantiene dentro de unos 0,05 dB sea cual sea la frecuencia
de entrada, mientras que el procesado por bloques con estado ejecuta el diseño
simple a la tasa de entrada, en torno a un decibelio por debajo en 315 Hz a
fs = 2000 y exactamente en la referencia de 0 dB a 10 Hz. Y eso
importa justo donde se usa la G: el infrasonido se graba a menudo a 1 kHz o
2 kHz, donde 315 Hz queda cerca de Nyquist y la deformación bilineal crece de
forma cuadrática; a frecuencias de audio la corrección es despreciable. Como con
A/C/Z, high_accuracy no puede combinarse con el procesado con
estado. Las propias curvas A, C y Z, su origen, el diseño
high_accuracy y la verificación de clase frente a la Tabla 3 de
IEC 61672-1 son el tema de
Ponderación frecuencial.
1. Infrasonido: ponderación G (ISO 7196)
Sección titulada «1. Infrasonido: ponderación G (ISO 7196)»La ponderación frecuencial G (ISO 7196:1995) valora el infrasonido igual que la ponderación A valora el ruido audible. Se define por una configuración de polos y ceros normalizada a 0 dB a 10 Hz, y tiene tres pendientes, no dos. Por encima de 20 Hz la respuesta cae a 24 dB/octava, lo que mantiene la energía del rango audible fuera de una lectura de infrasonido; entre 1 Hz y 20 Hz aproximadamente sube a 12 dB/octava, siguiendo el crecimiento abrupto de la percepción del infrasonido; y por debajo de 1 Hz aproximadamente vuelve a caer a 24 dB/octava, rechazando las fluctuaciones de presión casi estáticas — carga de viento, deriva barométrica, oscilación del edificio — que un micrófono registra y nadie oye. Úsala con fuentes con energía significativa por debajo de 20 Hz (aerogeneradores, climatización, voladuras):
import numpy as npfrom phonometry import filters
# recording: una captura de micrófono calibrada (Pa) — grabada con tu cadena de medición. Sintetizada aquí para que la guía funcione por sí sola.fs = 48000recording = 0.2 * np.sin(2 * np.pi * 1000 * np.arange(fs) / fs)
g_weighted = filters.weighting_filter(recording, fs, curve='G')Mostrar el código de esta figura
import matplotlib.pyplot as pltimport numpy as npfrom phonometry import filters
# Medimos la respuesta G: ponderamos un impulso unitario centrado y# tomamos su espectro. Un búfer largo da la resolución que necesita el# rango de infrasonido (20 s -> 0,05 Hz).fs = 4000impulse = np.zeros(20 * fs)impulse[impulse.size // 2] = 1.0freqs = np.fft.rfftfreq(impulse.size, 1 / fs)spectrum = np.fft.rfft(filters.weighting_filter(impulse, fs, curve="G"))
fig, ax = plt.subplots(figsize=(9, 5))ax.semilogx(freqs[1:], 20 * np.log10(np.abs(spectrum[1:]) + np.finfo(float).eps))ax.plot(10, 0, "o", color="tab:red", label="0 dB a 10 Hz")ax.set(xlim=(0.1, 1000), ylim=(-90, 15), xlabel="Frecuencia [Hz]", ylabel="Respuesta de la ponderación G [dB]")ax.grid(True, which="both", alpha=0.3)ax.legend()plt.show()La implementación sigue exactamente los polos/ceros de la Tabla 1 de ISO 7196 y
se verifica en CI contra todos los valores nominales de respuesta de la Tabla 2
(0,25 Hz a 315 Hz). WeightingFilter(fs, "G") admite el mismo procesado
multicanal y por bloques que A/C, pero el modo con estado ejecuta el diseño
simple a la frecuencia de entrada, así que si procesas la ponderación G en
streaming a una frecuencia de muestreo baja, verifica la respuesta antes de
fiarte del nivel. Los niveles medidos con la curva G se expresan como
(o para el nivel equivalente).
Leer un LpG: la escala no es la escala dB(A)
Sección titulada «Leer un LpG: la escala no es la escala dB(A)»Un nivel ponderado G de 85 dB no significa nada hasta que sabes qué aspecto tiene la escala, y no se parece a la audible. La introducción de ISO 7196 da las referencias: el umbral normal de percepción a 10 Hz está en torno a 100 dB re 20 µPa; los sonidos entre 1 Hz y 20 Hz que un oyente medio apenas percibe dan niveles ponderados G próximos a 100 dB; un infrasonido muy fuerte da un nivel ponderado G del orden de 120 dB, solo 20 dB por encima; y los niveles ponderados G por debajo de unos 90 dB no suelen ser significativos para la percepción humana.
De ahí se siguen dos consecuencias. La primera, que el rango útil abarca unos 30 dB y no los 100 dB a los que un lector está acostumbrado en dB(A), así que unos pocos decibelios importan aquí muchísimo más: un de 85 dB y otro de 105 dB no son «parecidos», son inaudible y muy fuerte. La segunda, que como el crecimiento de la sensación con el nivel es mucho más rápido que en el rango audible y el propio umbral varía entre individuos, un nivel próximo a 100 dB(G) puede ser imperceptible para una persona y claramente percibido por otra, y por eso las quejas por infrasonido se investigan caso por caso. Compara un con estas referencias de percepción, nunca con un límite ponderado A, y no combines nunca las dos cosas en un solo número.
Medir infrasonido, no solo ponderarlo
Sección titulada «Medir infrasonido, no solo ponderarlo»El filtro anterior es exacto desde 0,25 Hz. Casi ninguna cadena de captura corriente lo es, y nada en el código puede saberlo. El Anexo A de ISO 7196 especifica una cadena, no solo una curva, y su primer requisito (A.2) es un micrófono con una respuesta en frecuencia sustancialmente constante o bien definida al menos entre 0,25 Hz y 160 Hz, y preferiblemente hasta 315 Hz. Una cápsula de medida de uso general no puede darlo: su orificio de compensación de presión estática se comporta como un paso alto de primer orden, y un punto de corte tan alto como 2 Hz ya cuesta 7,0 dB a 1 Hz y 12,3 dB a 0,5 Hz. Cualquier conmutador de corte de graves del grabador elimina la banda que se está midiendo. Lo único que no importa es el tamaño de la cápsula: el Anexo A hace notar que no hay límite práctico para las dimensiones del micrófono, porque los efectos direccionales son despreciables a longitudes de onda infrasónicas.
De ahí salen dos acciones. Documenta el punto de corte en baja frecuencia de la propia cadena e informa el solo hasta donde la cadena sea plana; un nivel dado hasta 0,25 Hz con una cadena que está 12 dB por debajo a 0,5 Hz no es una medida. Elige un tiempo de promediación lo bastante largo para que el valor sea representativo: el apartado A.5 da un tiempo de integración o constante de tiempo de 10 s como elección habitual, 1 s cuando lo que contribuye principalmente es la parte alta de la banda de 1 Hz a 20 Hz, y para ruido fluctuante una ventana rectangular de al menos 1 min, cuyo resultado se informa como nivel de presión acústica ponderado G equivalente. Eso es un orden de magnitud más largo que los 125 ms que un lector trae del detector Fast.
En exteriores hay un tercer problema, y por debajo de 20 Hz suele ser el mayor: el viento sobre el diafragma genera más infrasonido que la fuente. Por eso el micrófono se coloca en el centro de una placa rígida sobre el suelo, dentro de un paravientos primario de espuma, con una pantalla hemisférica secundaria añadida cuando hay viento y con su pérdida por inserción documentada y corregida.
Lo que hay que dejar registrado para que el resultado sea informable es breve: el punto de corte en baja frecuencia de la propia cadena, la placa y las pantallas con sus correcciones, el tiempo de promediación y la forma de la ventana, y el con el ancho de banda de análisis con el que se calculó.
2. Curvas históricas y de propósito especial: B, D y AU
Sección titulada «2. Curvas históricas y de propósito especial: B, D y AU»Tres curvas más completan la familia. Las tres trabajan en el rango audible, así que comparten una gráfica, dibujada frente a la curva A porque es la referencia con la que se define o se describe cada una: B como la curva intermedia entre A y C, D como la que tiene una joroba que A no tiene, y AU como la propia A con un paso bajo añadido.
Las tres curvas frente a la referencia A (gris ancha), medidas a 96 kHz para que el eje llegue a los 40 kHz donde IEC 61012 aún especifica el paso bajo U. B (verde, discontinua) descarta menos graves que A; D (morada) lleva la joroba de +11,5 dB a 3,15 kHz, donde más molesta el silbido de la turbomaquinaria; AU (naranja) recorre el interior de la referencia A hasta 10 kHz y luego se desprende con U, hasta quedar 13 dB por debajo de A en 16 kHz. La curva G de infrasonido conserva su propia gráfica en la sección 1, y A, C y Z están en Ponderación frecuencial.
Mostrar el código de esta figura
import matplotlib.pyplot as pltimport numpy as npfrom phonometry import filters
# Medimos la respuesta de cada curva: ponderamos un impulso unitario centrado# y tomamos su espectro. 96 kHz, no 48 kHz: así se alcanza la fila de 40 kHz# de la tabla de la ponderación U de IEC 61012, que es la razón de ser de AU.fs = 96000impulse = np.zeros(fs)impulse[fs // 2] = 1.0freqs = np.fft.rfftfreq(fs, 1 / fs)
fig, ax = plt.subplots(figsize=(9, 5))# A va primero y ancha, como referencia con la que se leen las otras tres.for curve, width in (("A", 4.0), ("B", 1.8), ("D", 1.8), ("AU", 1.8)): spectrum = np.fft.rfft(filters.weighting_filter(impulse, fs, curve=curve)) ax.semilogx(freqs[1:], 20 * np.log10(np.abs(spectrum[1:]) + np.finfo(float).eps), label=curve, linewidth=width)ax.set(xlim=(10, 40000), ylim=(-90, 18), xlabel="Frecuencia [Hz]", ylabel="Respuesta [dB]")ax.grid(True, which="both", alpha=0.3)ax.legend()plt.show()B (ANSI S1.4-1983, histórica)
Sección titulada «B (ANSI S1.4-1983, histórica)»La curva intermedia del esquema original de conmutación por niveles A/B/C, trazada a partir de la línea isofónica de ~70 fonios. Analíticamente es la ponderación C con un cero más en el origen y un polo real adicional en (Apéndice C de ANSI S1.4-1983), así que descarta menos graves que A y más que C. Se eliminó cuando IEC 61672-1 sustituyó a las normas de sonómetros anteriores; úsala solo para reproducir datos históricos y mediciones tomadas bajo códigos nacionales antiguos (algunos procedimientos de ensayo de automoción heredados publicaban dB(B)). La implementación sigue las constantes del Apéndice C de ANSI S1.4-1983 y está anclada en CI a los valores de respuesta de la Tabla IV, dentro de la máscara más estricta de la Tabla V (Tipo 0).
D (IEC 537, retirada: ruido de aeronaves)
Sección titulada «D (IEC 537, retirada: ruido de aeronaves)»La ponderación D aproximaba las curvas de ruidosidad percibida del índice
de nivel de ruido percibido (PNL), para que un sonómetro corriente pudiera
estimar el ruido de aeronaves: la joroba de +11,5 dB en torno a 3,15 kHz es
donde más molesta el silbido de la turbomaquinaria (deliberadamente no es
un rasgo de igual sonoridad). El manual de métricas de ruido de aeronaves de
la NASA da la clásica regla aproximada .
IEC 537 fue retirada y la práctica de certificación actual calcula el EPNL a
partir de análisis en tercios de octava o usa niveles ponderados A, así que
D se ofrece para datos históricos y comparaciones. Con la norma no
disponible, la implementación usa la función de transferencia racional de
IEC 537, ampliamente publicada, contrastada con dos implementaciones
independientes (los polos y ceros de SQAT y la forma cerrada de librosa, que
coinciden dentro de 0,002 dB) y anclada en CI a la tabla de IEC 537 reeditada
en NASA CR-3406.
import numpy as npfrom phonometry import filters, signals
# Un silbido de 3,15 kHz cae justo en la joroba de la ponderación D:# D lo valora 10 dB *más fuerte* que A.fs = 96000t = np.arange(fs) / fswhine = 0.1 * np.sin(2 * np.pi * 3150 * t)
ld = signals.leq(filters.weighting_filter(whine, fs, curve="D"))la = signals.leq(filters.weighting_filter(whine, fs, curve="A"))print(f"LD = {ld:.1f} dB LA = {la:.1f} dB")# LD = 82.5 dB LA = 72.2 dBAU (IEC 61012, vigente: sonido audible en presencia de ultrasonidos)
Sección titulada «AU (IEC 61012, vigente: sonido audible en presencia de ultrasonidos)»La única de las tres aún en vigor. AU es la ponderación A en cascada con el
filtro paso bajo U de IEC 61012:1990 (seis polos, Tabla 2): plana
respecto a A hasta 10 kHz y con un corte abrupto después (-13 dB a 16 kHz,
-61,8 dB a 40 kHz para U sola). Úsala cuando componentes ultrasónicos
intensos (limpiadores y soldadores ultrasónicos, ahuyentadores de roedores,
algunos disuasorios de espacios públicos) se colarían en una lectura
ponderada A a través del rechazo imperfecto del sonómetro en alta frecuencia
y sobreestimarían la exposición audible:
import numpy as npfrom phonometry import filters, signals
# Tono de 1 kHz (audible) enterrado bajo una componente ultrasónica fuerte de 25 kHz.fs = 96000t = np.arange(fs) / fsaudible = 0.1 * np.sin(2 * np.pi * 1000 * t)x = audible + 1.0 * np.sin(2 * np.pi * 25000 * t)
la = signals.leq(filters.weighting_filter(x, fs, curve="A"))lau = signals.leq(filters.weighting_filter(x, fs, curve="AU"))la_ref = signals.leq(filters.weighting_filter(audible, fs, curve="A"))print(f"LA = {la:.1f} dB LAU = {lau:.1f} dB solo audible = {la_ref:.1f} dB")# LA = 78.6 dB LAU = 71.0 dB solo audible = 71.0 dB# El ultrasonido infla LA en 7,6 dB; AU recupera el nivel audible.El ultrasonido solo llega a un filtro digital si la frecuencia de muestreo lo captura, así que mide a 96 kHz o más (a 48 kHz no hay nada por encima de 24 kHz que rechazar); el diseño AU sobremuestrea internamente hacia 288 kHz para mantener preciso el corte abrupto de U. Los niveles se expresan como . La implementación sigue exactamente las posiciones de polos de la Tabla 2 (reproducen todos los valores nominales de la Tabla 1 dentro de 0,05 dB) y se verifica en CI contra las tolerancias de la Tabla 1 hasta 40 kHz.
La frecuencia de muestreo es solo el segundo requisito. El primero es el micrófono, y la aritmética anterior solo se sostiene si la cápsula y la interfaz entregaron de verdad la componente de 25 kHz con una respuesta conocida. La introducción de IEC 61012 plantea el problema sin rodeos: un sonómetro cuya respuesta llegue por casualidad hasta la frecuencia de trabajo del equipo ultrasónico da lecturas infladas de la parte audible, que es justo lo que la U existe para evitar; y cuando hay que cuantificar la propia componente ultrasónica, esa misma introducción pide un sistema de micrófono del que se sepa que su respuesta en frecuencia llega al menos hasta esa frecuencia de trabajo. En la práctica eso significa una cápsula de 1/4 o de 1/8 de pulgada en vez de la de 1/2 pulgada que se usa para el trabajo audible: una cápsula de 1/2 pulgada ya está cayendo y es fuertemente direccional por encima de 20 kHz, así que sería ella, y no el filtro U, la que decidiría la lectura. Comprueba también el convertidor: una interfaz que corre a 96 kHz pero filtra el aliasing a 20 kHz no mide nada que rechazar. Y como el campo próximo de estos equipos cambia varios decibelios en unos pocos centímetros, toma la lectura en la posición de la cabeza del operador y déjalo anotado. Informa el junto con el nivel sin ponderar de la componente ultrasónica y el tipo de cápsula: separar esas dos cosas es todo el sentido de la ponderación AU.
3. Verificación de clase: B y AU sí, G y D no
Sección titulada «3. Verificación de clase: B y AU sí, G y D no»Solo dos de las cuatro curvas de esta página pueden devolver un veredicto de
clase, porque solo dos tienen tablas de tolerancias publicadas.
El verificador verify_weighting_class, descrito en la sección 6 de
Ponderación frecuencial, también cubre
las curvas de esta guía que tienen tablas de tolerancias publicadas. Para B
usa ANSI S1.4-1983 (objetivos de diseño de
la Tabla IV, límites de la Tabla V) y los veredictos de «clase» se leen como
los Tipos de instrumento 1 y 2 de la norma. Para AU usa la Tabla 1 de
IEC 61012:1990 (A nominal + U nominal con las tolerancias de filtro como
unidad separada, cero en la referencia de 1 kHz); IEC 61012 publica un único
juego de tolerancias, así que ambos márgenes coinciden y el veredicto es
simplemente conforme (1) o no (None) — ten en cuenta que comprobar las
filas por encima de 20 kHz requiere fs ≥ 96 kHz (por debajo se descartan y
el veredicto queda range_limited). G y D se rechazan: ISO 7196 define
una única tolerancia de ±1 dB sin estructura de clases y la retirada IEC 537
no dejó tabla de tolerancias (ambas curvas se anclan numéricamente en el
informe de conformidad de CI).
Qué cubre esta guía
Sección titulada «Qué cubre esta guía»Cubierto
ISO 7196:1995 para la curva G (valores de polo/cero de la Tabla 1, verificados frente a todos los valores nominales de la Tabla 2). ANSI S1.4-1983 para la curva histórica B (definición del Apéndice C, objetivos de diseño de la Tabla IV, límites de tolerancia de la Tabla V). IEC 61012:1990 para AU (el paso bajo U de la Tabla 2 en cascada con A, verificado frente a la Tabla 1). IEC 537:1976 para la curva D de ruido de aeronaves, retirada, implementada desde su función de transferencia publicada y contrastada con dos implementaciones independientes.
No cubierto
verify_weighting_classno produce un veredicto de clase para G ni para D: ISO 7196 define una única tolerancia de ±1 dB sin estructura de clases, y la retirada IEC 537 no dejó tabla de tolerancias. Ambas curvas se anclan numéricamente a sus tablas publicadas en el informe de conformidad de CI en su lugar, no a través de este verificador público. B y D se ofrecen solo para datos históricos y códigos nacionales antiguos; ninguna es práctica actual (IEC 61672-1 sustituyó a B, y la certificación de ruido de aeronaves informa hoy el EPNL o niveles con ponderación A simples en lugar de D).
Véase también
Sección titulada «Véase también»- Ponderación frecuencial: las curvas A,
C y Z, el diseño
high_accuracyy la verificación de clase frente a la Tabla 3 de IEC 61672-1 sobre las que se apoyan estas curvas. - Referencia de la API:
filters.weightingyfilters.compliance. - Teoría: Ponderación G (ISO 7196): la curva G de ISO 7196 y de dónde viene su normalización.
Respuestas rápidas
Sección titulada «Respuestas rápidas»¿Qué ponderación debo usar para infrasonido por debajo de 20 Hz?
Sección titulada «¿Qué ponderación debo usar para infrasonido por debajo de 20 Hz?»Usa la ponderación frecuencial G de ISO 7196:1995, que valora el infrasonido igual que la ponderación A valora el ruido audible. Normalizada a 0 dB a 10 Hz, sube a 12 dB/octava entre 1 Hz y 20 Hz aproximadamente, cae a 24 dB/octava por encima de 20 Hz y vuelve a caer a 24 dB/octava por debajo de 1 Hz aproximadamente. Aplícala a fuentes como aerogeneradores, climatización y voladuras, y expresa los niveles como (o para el nivel equivalente). Lee el resultado contra las referencias de percepción de ISO 7196, nunca contra un límite ponderado A: unos 100 dB(G) es el umbral normal, por debajo de unos 90 dB(G) el infrasonido no suele ser significativo, y un infrasonido muy fuerte ronda los 120 dB(G).
Referencias
Sección titulada «Referencias»- American National Standards Institute. (1983). Specification for Sound Level Meters (ANSI S1.4-1983). La ponderación B histórica: definición analítica del Apéndice C (fórmula C2), objetivos de diseño de la Tabla IV y límites de tolerancia de la Tabla V que comprueba verify_weighting_class en la sección 3.
- Bennett, R. L. y Pearsons, K. S. (1981). Handbook of Aircraft Noise Metrics (NASA CR-3406). NASA. Reedita la tabla de la ponderación D de IEC 537 (Tabla SLD-I) usada para anclar la respuesta D en CI.
- International Electrotechnical Commission. (1976). Frequency weighting for the measurement of aircraft noise (D-weighting) (IEC 537:1976 (retirada)). La ponderación D, implementada desde su función de transferencia racional publicada y contrastada con dos implementaciones independientes y con la curva tabulada reeditada en NASA CR-3406 (Tabla SLD-I).
- International Electrotechnical Commission. (1990). Filters for the measurement of audible sound in the presence of ultrasound (IEC 61012:1990). La ponderación AU: posiciones de los polos de la ponderación U (Tabla 2), respuestas nominales y tolerancias (Tabla 1) y la definición combinada AU del apartado 2.2.
- International Organization for Standardization. (1995). Acoustics — Frequency-weighting characteristic for infrasound measurements (ISO 7196:1995). La definición de polos y ceros de la ponderación G (Tabla 1), verificada frente a todos los valores nominales de respuesta de la Tabla 2 (0,25 Hz a 315 Hz).