<!-- canonical: https://docs.jmrp.io/phonometry/es/signals/metrology/compliance-verification/ -->
Source: https://docs.jmrp.io/phonometry/es/signals/metrology/compliance-verification/

Tres clases de evidencia respaldan un número calculado con esta biblioteca, y
viven en páginas distintas. Los **verificadores** son funciones públicas que
califican un filtro o una ponderación que tú configuraste frente a los
límites de aceptación de su norma de referencia. El **informe de
conformidad** es la tabla publicada de {totalChecks} comprobaciones que ancla
la implementación distribuida a los valores esperados de las propias normas,
regenerada con cada cambio. Y las **notas de alcance** de cada guía dicen
dónde termina la afirmación del software y dónde empieza la del laboratorio.
Esta página es el mapa de las tres: qué afirma realmente una clase de
prestaciones, qué función verifica qué, cómo leer el informe, y exactamente
qué partes de las series IEC 61672 e IEC 61260 puede y no puede reclamar una
biblioteca.

## 1. Qué afirma una clase de prestaciones

IEC 61672-1:2013 (sonómetros) e IEC 61260-1:2014 (filtros de banda de octava
y de fracción de octava) especifican ambas **dos categorías de prestaciones,
clase 1 y clase 2**, y ambas las definen igual: la clase 1 y la clase 2
comparten los *mismos objetivos de diseño* y difieren sobre todo en los
**límites de aceptación** alrededor de esos objetivos y en el rango de
temperatura de funcionamiento; los límites de clase 2 son mayores o iguales
que los de clase 1 en todas partes (IEC 61672-1:2013, apartado 1;
IEC 61260-1:2014, apartado 1.2).

Así que una clase no es una nota de calidad de la lectura. Es una **cota de
error de peor caso bajo condiciones declaradas**: una ponderación A de
clase 1 puede desviarse de la respuesta objetivo en 1 kHz como mucho
±0,7 dB, una de clase 2 ±1,0 dB, y cada banda de un filtro de tercio de
octava de clase 1 lee un tono centrado en la banda a menos de ±0,4 dB de su
nivel verdadero. La cota es lo que se encadena: una medición de clase 1
necesita que todas las etapas sostengan la clase 1, desde el
[calibrador](/phonometry/es/signals/metrology/calibration/) pasando por la
ponderación hasta el filtro de banda, porque la tolerancia de cada etapa
entra en el nivel que entrega a la siguiente. Una sola etapa de clase 2
acota la cadena en clase 2, atestigüe lo que atestigüe el resto.

Dos bordes del vocabulario conviene fijarlos antes de verificar nada:

- **La clase 0 no es una clase de 2014.** La clase de filtro más estricta
  pertenece a las máscaras retiradas de IEC 61260:1995 / ANSI S1.11-2004;
  IEC 61260-1:2014 define solo las clases 1 y 2. Los verificadores mantienen
  viva la máscara antigua tras `edition="1995"`, y
  [Verificación de clase de filtros](/phonometry/es/signals/filters/filter-compliance/#2-clase-0-iec-612601995--ansi-s111-2004)
  cubre cuándo es honesta una afirmación de clase 0 y cómo citarla.
- **Una clase pertenece a una especificación, no a un número.** «Clase 1» a
  secas no dice nada; la afirmación es «clase 1 según la Tabla 3 de
  IEC 61672-1:2013» o «clase 1 según la Tabla 1 de IEC 61260-1:2014», y las
  dos máscaras son objetos distintos comprobados por funciones distintas,
  que es la sección siguiente.

## 2. Los verificadores: qué función demuestra qué

La biblioteca expone un verificador por etapa de instrumento. Cada uno
comprueba un diseño que tú configuraste, banda a banda o frecuencia a
frecuencia, frente a los límites de aceptación transcritos de la norma de
referencia, y cada uno devuelve el mismo vocabulario de veredicto: un
`overall_class` (la clase más estricta cumplida, o `None`), márgenes por
banda en decibelios hasta el límite más cercano, y una bandera
`range_limited` cuando parte del rango de frecuencias de la norma no pudo
demostrarse a tu frecuencia de muestreo.

| Etapa | Verificador | Límites de aceptación | En detalle |
| :--- | :--- | :--- | :--- |
| Ponderación frecuencial (A, C, Z) | `verify_weighting_class` | IEC 61672-1:2013, Tabla 3 | [Ponderación frecuencial, sección 6](/phonometry/es/signals/levels/weighting/#6-verificación-frente-a-las-tablas-de-tolerancias-iec-61672-1) |
| Ponderaciones B y AU | `verify_weighting_class` | ANSI S1.4-1983, Tablas IV/V; IEC 61012:1990, Tabla 1 | [Ponderaciones especiales](/phonometry/es/signals/levels/special-weightings/) |
| Banco de filtros de fracción de octava | `verify_filter_class`; `verify_time_invariance` | IEC 61260-1:2014, Tabla 1, 5.12 y 5.16 tal como los calcula IEC 61260-2 (máscara de 1995 vía `edition="1995"`); 5.14 con un barrido exponencial | [Verificación de clase de filtros](/phonometry/es/signals/filters/filter-compliance/) |
| Espectro de instrumento de intensidad | `verify_intensity_class` | IEC 61043:1993, Tabla 2 | [Intensidad acústica](/phonometry/es/devices/emission/intensity/) |

Las propias máscaras también son públicas: `weighting_class_limits(1)`
devuelve las 34 frecuencias nominales de la Tabla 3 con los límites de
desviación de clase 1, y `class_limits(fraction, filter_class, omega)`
devuelve el corredor de atenuación relativa de la Tabla 1, de modo que un
informe puede dibujar los mismos límites con los que se juzgó el veredicto.

Verificar una cadena de medición completa son dos llamadas. La configuración
de abajo es la que ancla el propio banco de conformidad, una cadena a
48 kHz con el banco Butterworth de orden 6 por defecto entre 100 Hz y
10 kHz:

```python
from phonometry import filters

wf = filters.WeightingFilter(48000, "A")
weighting = filters.verify_weighting_class(wf)
print(weighting.overall_class)       # 1
print(weighting.range_limited)       # False

bank = filters.OctaveFilterBank(fs=48000, fraction=3, order=6,
                                limits=[100, 10000])
bands = filters.verify_filter_class(bank)
print(bands.overall_class)           # 1
print(bands.range_limited)           # True: sus bandas altas llegan a Nyquist
```

Lee las banderas, no solo la clase. `range_limited` en el banco es `True`
porque sus bandas desde 5 kHz, filtradas a la frecuencia completa, no pueden
evaluarse más allá de la frecuencia de Nyquist de 24 kHz, que se queda corta
del final de su máscara de la Tabla 1, así que su banda atenuada lejana
descansa en el filtro antialiasing de la cadena de captura y no en el propio
filtro de banda; la ponderación a 48 kHz comprueba las 34 frecuencias
nominales e informa `False`. Los márgenes dicen
cuánto le faltó al veredicto:

```python
worst = min(bands.bands, key=lambda b: b["margin_class1_db"])
print(round(worst["margin_class1_db"], 3))   # 0.4
print(weighting.bands[20])
# {'freq': 1000.0, 'class': 1, 'deviation_db': 0.0, 'margin_class1_db': 0.7, 'margin_class2_db': 1.0}
```

La clase de un banco es la clase más estricta que cumple en todos los
requisitos calificados, y `bands.requirements` los enumera: aquí la máscara de
la Tabla 1, el ancho de banda efectivo y la suma de las salidas adyacentes,
todos de clase 1. Un banco todavía puede separarse de su veredicto de la
Tabla 1: a 48 kHz, un banco de tercios de octava de orden 4 es clase 1 en la
Tabla 1 y se queda a 0,002 dB de la clase 1 en la suma, en su banda de
16 kHz, y
[Verificación de clase de filtros](/phonometry/es/signals/filters/filter-compliance/#1b-ancho-de-banda-efectivo-y-suma-de-las-salidas-iec-61260-2)
explica cómo se califica la suma. Un margen de +0,400 dB en un banco Butterworth que cumple es la propia
semianchura del corredor de banda de paso, lo mejor que puede informar un
diseño conforme, no un resultado que mejorar;
[Verificación de clase de filtros](/phonometry/es/signals/filters/filter-compliance/#1-verificar-la-clase-frente-a-iec-61260-12014)
explica qué restricción manda y por qué subir el orden deja de ayudar en
cuanto el veredicto se vuelve positivo.

*Lo que comprueba de verdad un verificador, dibujado para las ponderaciones:
la desviación de la respuesta diseñada respecto del objetivo de diseño
(marcadores) debe quedarse dentro del corredor de clase 1 (sombreado) en
cada frecuencia nominal. El equivalente para bancos de filtros, un corredor
de atenuación relativa alrededor de cada frecuencia central, está dibujado
en [Verificación de clase de filtros](/phonometry/es/signals/filters/filter-compliance/).*

<details>
<summary>Muestra el código de esta figura</summary>

```python

freqs, lower1, upper1 = filters.weighting_class_limits(1)
_, lower2, upper2 = filters.weighting_class_limits(2)
lo1, lo2 = np.clip(lower1, -7, 7), np.clip(lower2, -7, 7)

fig, ax = plt.subplots(figsize=(10, 6.5))
ax.fill_between(freqs, lo1, upper1, step="mid", alpha=0.10,
                label="Región de aceptación de clase 1")
ax.plot(freqs, upper1, drawstyle="steps-mid",
        label="Límite superior/inferior de clase 1")
ax.plot(freqs, lo1, drawstyle="steps-mid", color="C1")
ax.plot(freqs, upper2, ":", drawstyle="steps-mid",
        label="Límite superior/inferior de clase 2")
ax.plot(freqs, lo2, ":", drawstyle="steps-mid", color="C2")

for curve, marker in (("A", "o"), ("C", "s")):
    verdict = filters.verify_weighting_class(filters.WeightingFilter(48000, curve))
    f = [b["freq"] for b in verdict.bands]
    dev = [b["deviation_db"] for b in verdict.bands]
    ax.plot(f, dev, marker=marker,
            label=f"Desviación de la ponderación {curve} (48 kHz)")

ax.set(xscale="log", xlim=(10, 20000), ylim=(-7, 7),
       xlabel="Frecuencia [Hz]",
       ylabel="Desviación respecto del objetivo [dB]")
ax.legend(fontsize=8, ncol=2)
plt.show()
```

</details>

Cuando el veredicto tiene que salir de la consola, responde la misma
llamada: lo que devuelve `verify_filter_class` lleva `.plot()` (la banda de
peor margen dibujada sobre su corredor de clase) y `.report()`, la ficha
acreditada de una página con una fila opcional de CUMPLE/NO CUMPLE frente a
una clase exigida:

```python
from phonometry import ReportMetadata, filters

bank = filters.OctaveFilterBank(fs=48000, fraction=1, order=6, limits=[125, 4000])
result = filters.verify_filter_class(bank)   # result.overall_class == 1
result.report(
    "iec61260_es.pdf",
    metadata=ReportMetadata(
        specimen="Banco de filtros de 1/1 de octava",
        measurement_standard="IEC 61260-1:2014",
        required_class=1,
    ),
    language="es",
)                                        # -> Clase 1 - CUMPLE
```

El verificador de intensidad sigue el mismo patrón un dominio más allá:
`verify_intensity_class` califica un espectro medido del índice de
intensidad residual de presión frente a los límites de clase de IEC 61043 y
devuelve un resultado con `.plot()` y su propia ficha, con la física del
índice residual explicada en
[Intensidad acústica](/phonometry/es/devices/emission/intensity/).

### Los verificadores que califican una medición, no un diseño

Otras ocho funciones llevan el mismo prefijo `verify_` y responden a una
pregunta distinta. A las cuatro de arriba se les entrega un filtro que ha
construido esta biblioteca, e informan de si ese **diseño** cabe en una
máscara de aceptación; a estas se les entregan números que alguien midió en
un banco, e informan de si **ese instrumento, el día en que se midió**,
cumple la norma con la que se vende. No hay clases ni márgenes en decibelios:
el veredicto es un cumple o no cumple, en la unidad en la que su propia norma
escribe las tolerancias. Las ocho devuelven un objeto de resultado cuyo
veredicto lo dice y cuyos demás campos dicen dónde y por cuánto, incluida
`verify_running_rms_decay`, que califica una fila impresa y la conserva.

| Qué se califica | Verificador | Límites de aceptación | En detalle |
| :--- | :--- | :--- | :--- |
| Sistema de medida de ruido de aeronaves | `verify_aircraft_noise_system` | IEC 61265:1995, Tabla 1, y los límites escalares que la acompañan | [Ruido de aeronaves](/phonometry/es/aircraft/aircraft-noise/#verificación-del-sistema-de-medida-iec-61265) |
| Ponderación frecuencial de vibración en humanos | `verify_weighting` | ISO 8041-1:2017, Tablas 4 y 5 | [Verificación del vibrómetro de vibración en humanos](/phonometry/es/vibration/human/meter-verification/) |
| Respuesta de fase de vibración en humanos | `verify_phase_response` | ISO 8041-1:2017, Tabla 5 y Fórmula (6) | [Verificación del vibrómetro de vibración en humanos](/phonometry/es/vibration/human/meter-verification/) |
| Indicaciones de la ráfaga en diente de sierra | `verify_signal_burst_response` | ISO 8041-1:2017, Tablas 7 a 9 (la señal, en la Tabla 6) | [Verificación del vibrómetro de vibración en humanos](/phonometry/es/vibration/human/meter-verification/) |
| Tiempo de decaimiento del valor eficaz móvil | `verify_running_rms_decay` | ISO 8041-1:2017, Tablas 10 y 11 | [Verificación del vibrómetro de vibración en humanos](/phonometry/es/vibration/human/meter-verification/) |
| Calibrador acústico | `verify_sound_calibrator` | IEC 60942:2017, Tablas 2 a 7 y A.1 a A.5 | [Calibración y dBFS](/phonometry/es/signals/metrology/calibration/#verificar-el-propio-calibrador-iec-609422017) |
| Ensayo periódico de un sonómetro | `verify_sound_level_meter_periodic` | IEC 61672-3:2013, apartados 12 a 21, con los límites de IEC 61672-1:2013 (Tablas 3 a 5 y su texto) y los máximos de su Tabla B.1 | [Ensayos periódicos de un sonómetro](/phonometry/es/signals/metrology/sound-level-meter-periodic-tests/) |
| Ensayo periódico de filtros de banda | `verify_filter_periodic` | IEC 61260-3:2016, apartados 10, 11 y 13 y Tabla 1, con los máximos del Anexo B de IEC 61260-1:2014 | [Verificación de clase de filtros](/phonometry/es/signals/filters/filter-compliance/#3b-verificar-un-instrumento-no-un-diseño) |

Hay una cláusula de la ISO 8041-1 que hace a esas cuatro distintas en
naturaleza de todo lo demás de esta página. La desviación que informa un
laboratorio se amplía con la incertidumbre expandida de ese mismo laboratorio
antes de compararla con el límite (cláusulas 13.1 y 14.1), así que el mismo
instrumento cumple en un banco y no cumple en otro, y `verify_weighting`
recibe esa incertidumbre como argumento en vez de darla por despreciable.

### La regla de conformidad del IEC TC 29

Las normas de instrumentos de la IEC escritas desde 2013 responden a la misma
pregunta de otra manera, y todas con la misma frase. La IEC 61672-1:2013 la
imprime en el apartado 5.1.21 y la IEC 60942:2017 en el 5.1.15: la
conformidad con una especificación de prestaciones queda demostrada cuando la
desviación medida respecto al objetivo de diseño no supera los límites de
aceptación **y** la incertidumbre expandida real del laboratorio no supera la
incertidumbre máxima permitida que la norma imprime para ese ensayo. La
incertidumbre no se suma a la desviación. Tiene un techo propio, y la
tolerancia que el instrumento tiene que cumplir queda más allá del límite de
aceptación en ese techo (IEC 60942, Anexo D; IEC 61672-1, Anexo A), así que es
improbable que un laboratorio que respeta su máximo dé por bueno un instrumento
fuera de su tolerancia. Improbable, no imposible: ese techo se da para un
intervalo de cobertura del 95 %, y la banda de guarda reduce el riesgo de una
aceptación errónea sin eliminarlo. Los dos límites son inclusivos: una desviación igual a su
límite de aceptación es conforme, y también una incertidumbre igual a su
máximo.

`metrology.verify_conformance` es esa regla por sí sola, para cualquier norma
que la use: la IEC 61672-3:2013 (apartado 4.1) y las IEC 61260-2 y -3:2016
escriben la misma, para el ensayo de tipo y los ensayos periódicos de
sonómetros y filtros. Su veredicto dice cuál de los cuatro resultados del
apartado E.2.2 de la IEC 60942 (C.2.2 de la IEC 61672-1) es, con las palabras
de la columna «Reasons» que imprimen las tablas, y no tiene valor de verdad,
así que un `if verify_conformance(...):` lanza una excepción en lugar de dar
todo por bueno.

```python
from phonometry import metrology

# IEC 61672-1:2013, Tabla C.1: límites de aceptación de +1,0 dB y -1,2 dB, e
# incertidumbre máxima permitida de 0,5 dB.
on_the_limit = metrology.verify_conformance(          # ejemplo 7
    -1.2, uncertainty=0.3, acceptance_limits=(-1.2, 1.0), max_uncertainty=0.5)
print(on_the_limit.passes, on_the_limit.outcome)      # True 1
both_out = metrology.verify_conformance(              # ejemplo 10
    -2.0, uncertainty=0.7, acceptance_limits=(-1.2, 1.0), max_uncertainty=0.5)
print(both_out.passes, both_out.outcome)              # False 4
print(both_out.reason)
# Deviation exceeds acceptance limits AND uncertainty exceeds maximum-permitted
```

*Los dieciocho ejemplos impresos, cada marcador el veredicto que devolvió
`verify_conformance`, que es el veredicto que imprime la tabla. La banda
sombreada es la incertidumbre máxima permitida y la barra de error la real; un
rombo sobre una línea de límite es conforme, y un aspa dentro de los límites
(el ejemplo 5 de las dos tablas) es una medida cuya incertidumbre era demasiado
grande para demostrar nada.*

<details>
<summary>Mostrar el código de esta figura</summary>

```python

from phonometry import metrology

table_e1 = [(0.40, 0.12, 0.15), (0.35, 0.12, 0.15), (0.20, 0.13, 0.15),
            (0.00, 0.14, 0.15), (0.00, 0.17, 0.15), (0.25, 0.10, 0.15),
            (0.25, 0.15, 0.15), (0.40, 0.50, 0.20)]
table_c1 = [(1.7, 0.3), (1.1, 0.3), (1.0, 0.3), (0.0, 0.3), (0.0, 0.9),
            (-0.5, 0.3), (-1.2, 0.3), (-1.3, 0.3), (-2.0, 0.3), (-2.0, 0.7)]
# La Tabla E.1 imprime la desviación absoluta, así que la Figura E.1 dibuja sus
# límites en 0 dB y 0,25 dB.
e1 = [metrology.verify_conformance(d, uncertainty=u, acceptance_limits=(0.0, 0.25),
                                   max_uncertainty=m) for d, u, m in table_e1]
c1 = [metrology.verify_conformance(d, uncertainty=u, acceptance_limits=(-1.2, 1.0),
                                   max_uncertainty=0.5) for d, u in table_c1]

def draw(ax, results, title):
    ax.axhline(results[0].upper_limit, color="tab:orange", lw=2)
    ax.axhline(results[0].lower_limit, color="tab:orange", lw=2, ls="--")
    for x, v in enumerate(results, start=1):
        ax.bar(x, 2 * v.max_uncertainty, bottom=v.deviation - v.max_uncertainty,
               width=0.28, color="0.8")
        ax.errorbar(x, v.deviation, yerr=v.uncertainty, fmt="none",
                    ecolor="tab:blue", capsize=5)
        ax.plot(x, v.deviation, "D" if v.passes else "X", ms=9,
                color="tab:green" if v.passes else "tab:red")
    ax.set_title(title)
    ax.set_xlabel("Número de ejemplo")
    ax.set_ylabel("Desviación respecto al objetivo de diseño [dB]")

fig, (ax_e, ax_c) = plt.subplots(1, 2, figsize=(13, 6))
draw(ax_e, e1, "IEC 60942:2017, Tabla E.1")
draw(ax_c, c1, "IEC 61672-1:2013, Tabla C.1")
plt.show()
```

</details>

Los dieciocho ejemplos, los ocho de la Tabla E.1 de IEC 60942 y los diez de la
Tabla C.1 de IEC 61672-1, son filas del
[informe de conformidad](/phonometry/es/reference/conformance/), veredicto y
motivo cada una. La IEC 60942 escribe sus límites sobre la desviación
absoluta, así que una desviación con signo toma un solo número
(`acceptance_limits=0.25` es ±0,25 dB). La Tabla E.1 ya imprime la desviación
absoluta, y la Figura E.1 dibuja sus límites en 0 dB y 0,25 dB, así que la
figura de arriba pasa `acceptance_limits=(0.0, 0.25)`: los ocho veredictos son
los mismos de una forma y de otra. La IEC 61672-1 escribe la mayoría de sus
límites como un par asimétrico, y la Tabla C.1 de IEC 61260-1:2014 imprime los
mismos diez ejemplos, que también son filas del informe. Un requisito de banda
atenuada tiene un mínimo y ningún máximo, así que un extremo del intervalo puede
quedar abierto: `acceptance_limits=(70.0, math.inf)`. `verify_sound_calibrator`
aplica la regla a cada requisito de la
IEC 60942:2017 con los límites que eligen la clase y la frecuencia nominal,
como muestra [Calibración y dBFS](/phonometry/es/signals/metrology/calibration/#verificar-el-propio-calibrador-iec-609422017),
`verify_sound_level_meter_periodic` a cada resultado de un ensayo periódico
IEC 61672-3:2013, como muestra
[Ensayos periódicos de un sonómetro](/phonometry/es/signals/metrology/sound-level-meter-periodic-tests/),
y `verify_filter_periodic` a cada resultado de un ensayo periódico
IEC 61260-3:2016, como muestra
[Verificación de clase de filtros](/phonometry/es/signals/filters/filter-compliance/#3b-verificar-un-instrumento-no-un-diseño).

## 3. Leer el informe de conformidad

Los verificadores califican *tu* configuración. El
[informe de conformidad](/phonometry/es/reference/conformance/) es la
evidencia complementaria: {totalChecks} comprobaciones numéricas a través de
{domains} dominios y {standards} normas, cada fila anclando una magnitud
implementada al valor esperado de la propia norma de referencia, con el
valor calculado, la diferencia con signo y un veredicto de pasa/falla al
lado. Se regenera con cada pull request y la construcción falla si deriva
respecto del código, así que la tabla publicada siempre describe la
biblioteca tal como se distribuye.

Tres hábitos lo vuelven útil en lugar de decorativo:

- **Encuentra la fila antes de fiarte de la función.** Cada tabla es
  `Standard | Quantity | Expected | Computed | Delta | Status`, agrupada por
  dominio, y el valor esperado es el ejemplo resuelto o la entrada de la
  tabla de tolerancias de la norma, no una línea base de regresión. La fila
  de una métrica de la que dependes te dice a qué apartado de qué edición se
  sometió la implementación, que es exactamente la cita que necesita un
  informe.
- **Fíjate en la configuración de las filas de clase.** La sección de
  filtros y ponderaciones recorre las
  [cinco arquitecturas de filtro](/phonometry/es/signals/filters/filter-gallery/)
  y las curvas de ponderación con los mismos verificadores que documenta
  esta página, en una configuración anclada: orden 6, tercio de octava, 100 Hz a
  10 kHz, 48 kHz. El informe demuestra la implementación; para cualquier
  otra fracción, orden o frecuencia de muestreo, la sección 2 es cómo se
  traslada la afirmación a *tu* banco.
- **Cita la versión que se ejecutó.** El informe describe la versión exacta
  de la biblioteca que lo generó, así que una cita defendible fija la
  versión y cita el informe de esa versión, como detalla
  [Sobre este proyecto](/phonometry/es/start/about/).

Donde rederivar una norma tan de cerca ha destapado defectos en los propios
documentos publicados, la evidencia vive en el
[registro de erratas](/phonometry/es/reference/errata/), que el informe
enlaza fila a fila donde aplica.

## 4. Qué solo puede atestiguar un laboratorio

Las dos series de instrumentos continúan más allá de su Parte 1 con dos
regímenes de ensayo, y ninguno de los dos es algo que una biblioteca de
software pueda ejecutar sobre sí misma. La delimitación de abajo está
verificada contra los cuatro documentos; el resumen de una línea es que **la
biblioteca comprueba diseños frente a los límites de aceptación de la
Parte 1, mientras que las Partes 2 y 3 comprueban instrumentos físicos**. Las
dos afirmaciones no son intercambiables. Lo que la biblioteca puede hacer con
las Partes 2 y 3 es aritmética: los requisitos de un juego de filtros que la
Parte 2 calcula a partir de una respuesta se calculan sobre el diseño
(Verificación de clase de filtros, apartados 1b y 1c), y los resultados que
devuelve un ensayo de la Parte 3 de un sonómetro o de un juego de filtros los
califican `verify_sound_level_meter_periodic` y `verify_filter_periodic`, que
no ejecutan ninguno de los ensayos.

*Las dos series lado a lado, con sus tres partes apiladas. Los verificadores
de diseño solo alcanzan los requisitos de la Parte 1 y solo la primera mitad
del criterio de conformidad; las Partes 2 y 3, bajo la línea discontinua,
necesitan un instrumento físico, cuyos resultados de ensayo periódico califican
`verify_sound_level_meter_periodic` y `verify_filter_periodic` en sus dos
mitades, y un ensayo periódico no dice nada
general hasta que es pública la aprobación de tipo en la que se apoya.*

El **ensayo de tipo** (IEC 61672-2:2013 para sonómetros, IEC 61260-2:2016
para filtros) es el régimen de aprobación de tipo que un *modelo* supera una
sola vez. Su alcance declarado son los ensayos necesarios para verificar la
conformidad con **todas las especificaciones obligatorias** de la Parte 1
(IEC 61672-2:2013, apartado 1; IEC 61260-2:2016, apartado 1.1), sobre
especímenes físicos: IEC 61260-2 exige presentar al menos tres especímenes
del modelo a ensayo (apartado 4.1). Eso incluye todo lo que una función de
transferencia no tiene: la influencia de la presión estática, la temperatura
del aire y la humedad relativa, la inmunidad a descargas electrostáticas y a
campos de frecuencia de red y de radiofrecuencia, la respuesta direccional y
los ensayos acústicos de las ponderaciones con el micrófono en el campo
sonoro, la linealidad de nivel de la electrónica real, el ruido
autogenerado, la respuesta a ráfagas tonales, el comportamiento ante
sobrecarga (IEC 61672-2:2013, apartados 7 a 9; IEC 61260-2:2016, apartados
7 a 9).

Los **ensayos periódicos** (IEC 61672-3:2013, IEC 61260-3:2016) son lo que
recibe en laboratorio un *instrumento en servicio*, normalmente cada año o
dos. Su
alcance es deliberadamente lo contrario de exhaustivo: un conjunto limitado
de ensayos clave, válido para las condiciones ambientales del día,
«restringido al mínimo considerado necesario» (IEC 61672-3:2013, apartado 1;
IEC 61260-3:2016, apartados 1.2 y 1.3). Para un juego de filtros eso
significa la atenuación relativa en la frecuencia central de cada filtro o
la desviación del ancho de banda efectivo, el rango lineal de funcionamiento
con su control de rango de nivel e indicador de sobrecarga, el límite
inferior de ese rango, y un ensayo de atenuación relativa en las frecuencias
normalizadas de la propia Tabla 1 de la norma sobre los tres filtros
seleccionados para los ensayos de linealidad (IEC 61260-3:2016, apartados
10 a 13); para un sonómetro, la comprobación con calibrador, el ruido autogenerado, las
ponderaciones con señales acústicas y eléctricas, la linealidad, las ráfagas
tonales, el pico con ponderación C y la sobrecarga (IEC 61672-3:2013,
apartados 9 a 21). Los dos alcances de la Parte 3 terminan con la misma
salvedad: como el alcance es limitado, superar todos los ensayos periódicos
no sostiene **ninguna conclusión general de conformidad** con la Parte 1
salvo que conste la aprobación de tipo del modelo (IEC 61672-3:2013,
apartado 1; IEC 61260-3:2016, apartado 1.5).

La misma honestidad se aplica a esta biblioteca, en las dos direcciones:

- **Qué es un veredicto de clase.** Una afirmación sobre un *diseño*:
  la función de transferencia digital que configuraste cabe en la máscara de
  aceptación de la Parte 1, con los márgenes informados, sobre el rango de
  frecuencias comprobado. Toda medición hecha íntegramente en software lo
  hereda, y por eso el
  [recorrido del sonómetro](/phonometry/es/signals/sound-level-meter/)
  termina ejecutando los verificadores sobre la cadena que acaba de montar.
- **Qué es un veredicto de medición.** Todavía más estrecho. A los ocho
  verificadores de la segunda tabla se les entregan números que alguien leyó
  en un banco, así que su veredicto pertenece a ese instrumento el día en que
  se midió y no lo hereda nada, ni siquiera una segunda pasada del mismo
  ensayo.
- **Qué no es.** Un ensayo de tipo, un ensayo periódico ni un certificado de
  ningún equipo físico. Nada aquí tiene un micrófono, una temperatura ni un
  número de serie; los ensayos de magnitudes de influencia, de inmunidad y
  acústicos de arriba no están implementados, y ningún veredicto verde de la
  sección 2 dice nada del hardware que grabó tus muestras. Un front-end real
  trae su propio papel: el ensayo periódico del sonómetro según IEC 61672-3
  y los resultados de laboratorio del calibrador según IEC 60942, que
  `verify_sound_level_meter_periodic` y `verify_sound_calibrator` califican
  pero no pueden producir (como `verify_filter_periodic` califica los
  resultados IEC 61260-3 de un juego de filtros), tratados en
  [Ensayos periódicos de un sonómetro](/phonometry/es/signals/metrology/sound-level-meter-periodic-tests/) y, con el ritual de campo,
  en
  [Calibración y dBFS](/phonometry/es/signals/metrology/calibration/).
- **Nombra los dos veredictos en un informe.** «Niveles de banda calculados
  con filtros verificados clase 1 según la Tabla 1 de IEC 61260-1:2014
  (versión X de la biblioteca, véase su informe de conformidad); cadena de
  adquisición con ensayo periódico según IEC 61672-3:2013 en fecha Y» es una
  afirmación que un revisor puede comprobar de punta a punta. Cada mitad por
  separado toma prestada en silencio la autoridad de la otra.

## Qué cubre esta guía

Qué afirma una clase de prestaciones en IEC 61672-1:2013 e IEC 61260-1:2014 y
cómo la afirmación se encadena a través de una medición; los verificadores
públicos (`verify_weighting_class`, `verify_filter_class`,
`verify_intensity_class`, con `weighting_class_limits` y `class_limits`
publicando las máscaras, y los dos últimos devolviendo un resultado que lleva
`.plot()` y la ficha acreditada, y `verify_time_invariance` para el ensayo de
barrido de un banco de filtros); los ocho verificadores que califican un
instrumento medido en vez de un diseño, y
dónde está la página de cada uno; la regla de conformidad del IEC TC 29
(`verify_conformance`, que reproduce todos los ejemplos de la Tabla E.1 de
IEC 60942:2017 y de la Tabla C.1 de IEC 61672-1:2013); cómo leer y citar el informe de conformidad
publicado; y el alcance verificado de las partes de ensayo de tipo y de
ensayos periódicos.

Las matemáticas de verificación de cada etapa, que pertenecen a la guía de esa
etapa ([Ponderación frecuencial](/phonometry/es/signals/levels/weighting/),
[Ponderaciones especiales](/phonometry/es/signals/levels/special-weightings/),
[Verificación de clase de
filtros](/phonometry/es/signals/filters/filter-compliance/), [Intensidad
acústica](/phonometry/es/devices/emission/intensity/)); y todos los ensayos de
las propias Partes 2 y 3, que esta página delimita pero la biblioteca no
realiza: no se ejecuta ningún ensayo ambiental, de inmunidad, acústico ni de
linealidad, y a ningún instrumento físico se le asigna una clase.
`verify_sound_level_meter_periodic` y `verify_filter_periodic` califican los
resultados de los ensayos periódicos de un sonómetro y de un juego de filtros;
no los producen.

## Véase también

- [Ponderación frecuencial](/phonometry/es/signals/levels/weighting/): las
  curvas A/C/Z y la verificación de la sección 6 frente a la Tabla 3 de
  IEC 61672-1.
- [Verificación de clase de filtros](/phonometry/es/signals/filters/filter-compliance/):
  la máscara de IEC 61260-1 banda a banda, la clase 0 y la ficha de
  conformidad en detalle.
- [Construye un sonómetro](/phonometry/es/signals/sound-level-meter/): la cadena
  completa montada y después verificada en clase con los verificadores de
  esta página.
- [Calibración y dBFS](/phonometry/es/signals/metrology/calibration/): el lado
  del calibrador en la cadena de clase, y la práctica de laboratorio
  IEC 60942 / IEC 61672-3 a su alrededor.
- [Ensayos periódicos de un sonómetro](/phonometry/es/signals/metrology/sound-level-meter-periodic-tests/): el dictamen de la
  IEC 61672-3 sobre los resultados de un laboratorio, apartado por apartado.
- [Informe de conformidad](/phonometry/es/reference/conformance/): la tabla
  publicada que esta página enseña a leer.
- Referencia de la API:
  [`filters.compliance`](/phonometry/es/reference/api/filters/compliance/),
  [`filters.periodic_tests`](/phonometry/es/reference/api/filters/periodic-tests/),
  [`filters.weighting_compliance`](/phonometry/es/reference/api/filters/weighting-compliance/),
  [`emission.intensity_compliance`](/phonometry/es/reference/api/power/intensity-compliance/),
  [`metrology.conformance`](/phonometry/es/reference/api/metrology/conformance/),
  [`metrology.sound_calibrator`](/phonometry/es/reference/api/metrology/sound-calibrator/)
  y [`metrology.sound_level_meter`](/phonometry/es/reference/api/metrology/sound-level-meter/).

## Respuestas rápidas

### ¿Puede phonometry certificar mi sonómetro o analizador como clase 1?

No. Los verificadores califican el diseño digital que se les da frente a los
límites de aceptación de la Tabla 3 de IEC 61672-1:2013 o de la Tabla 1 de
IEC 61260-1:2014; la clase de un instrumento físico sale del ensayo de tipo
(IEC 61672-2:2013 / IEC 61260-2:2016) y se mantiene creíble mediante los
ensayos periódicos (IEC 61672-3:2013 / IEC 61260-3:2016), y todos necesitan
el equipo en un laboratorio. Una medición hecha con un front-end de hardware
lleva dos veredictos, el veredicto de diseño de la biblioteca y el registro
de ensayos del instrumento, y un informe defendible nombra los dos.

### ¿Qué diferencia hay entre el ensayo de tipo y los ensayos periódicos?

El ensayo de tipo (Parte 2 de cada serie) verifica un *modelo* frente a
todas las especificaciones obligatorias de la Parte 1 una sola vez, sobre
especímenes presentados, incluidos los ensayos de influencia ambiental y
electromagnética. Los ensayos periódicos (Parte 3) recomprueban un
*instrumento en servicio* con un conjunto limitado y deliberadamente mínimo
de ensayos clave, válido para las condiciones del día; los dos alcances de
la Parte 3 declaran que superarlos no sostiene ninguna conclusión general de
conformidad salvo que conste la aprobación de tipo del modelo.

### ¿Qué funciones comprueban la conformidad con normas en phonometry?

`verify_weighting_class` comprueba una ponderación frecuencial frente a la
Tabla 3 de IEC 61672-1:2013 (B y AU frente a ANSI S1.4-1983 e
IEC 61012:1990), `verify_filter_class` comprueba un banco de fracción de
octava frente a la Tabla 1, el 5.12 y el 5.16 de IEC 61260-1:2014 (la
máscara de clase 0 de 1995 vía `edition="1995"`), y `verify_intensity_class`
comprueba el espectro
del índice residual de un instrumento de intensidad frente a IEC 61043:1993.
Las tres informan una clase por banda con márgenes en dB, y los dos últimos
devuelven un resultado que lleva `.plot()` y una ficha acreditada
`.report()`. Otros ocho
verificadores califican una medición en vez de un diseño y devuelven un
cumple o no cumple: `verify_aircraft_noise_system` frente a IEC 61265:1995,
`verify_weighting`, `verify_phase_response`, `verify_signal_burst_response` y
`verify_running_rms_decay` frente a las tablas de tolerancias de la
ISO 8041-1:2017, y `verify_sound_calibrator` frente a IEC 60942:2017,
`verify_sound_level_meter_periodic` frente a IEC 61672-3:2013 y
`verify_filter_periodic` frente a IEC 61260-3:2016, los tres con la regla de
conformidad del IEC TC 29 que `verify_conformance` publica por sí sola.
