<!-- canonical: https://jmrplens.github.io/phonometry/es/materials/absorbers/metamaterial-absorbers/ -->
Source: https://jmrplens.github.io/phonometry/es/materials/absorbers/metamaterial-absorbers/

Una manta porosa solo absorbe las bajas frecuencias engordando: los
[modelos porosos](/phonometry/es/materials/absorbers/porous-absorbers/) sitúan la
absorción útil donde la capa es una fracción apreciable de la longitud de
onda, lo que a 300 Hz significa decenas de centímetros. Los absorbentes de
metamaterial acústico rompen esa regla con resonancia en lugar de volumen. Un
panel rígido de ranuras finas cerradas, cada una cargada con resonadores de
Helmholtz, ralentiza el sonido dentro de la ranura de forma tan drástica que un
panel de 3 cm resuena en torno a 300 Hz, donde una cavidad vacía de cuarto de
onda tendría que ser diez veces más honda, ya que 3 cm de aire simple resuenan
a 2,9 kHz (sección 3). Sintonizar entonces las pérdidas internas del panel
contra su fuga
produce **absorción perfecta**, $\alpha = 1$, a una frecuencia de diseño en la
que el panel solo tiene $\lambda/38$ de profundidad; diseños publicados de la
misma familia llegan a $\lambda/88$ (Jiménez et al. 2016). Esta guía cubre la
condición de acoplamiento crítico que hace posible la absorción perfecta, el
panel ranurado de sonido lento implementado en la biblioteca, y los absorbentes
resonantes clásicos releídos bajo la misma óptica.

## 1. Acoplamiento crítico: cuando la pérdida compensa exactamente la fuga

Un panel absorbente con respaldo rígido es un resonador de un solo puerto: el
sonido entra por la cara, resuena dentro, y o bien vuelve a fugarse o bien se
disipa. Su coeficiente de reflexión sobre el plano de frecuencia compleja
tiene un polo y un cero por cada resonancia. En la resonancia compiten dos
tasas: la **tasa de fuga**, lo rápido que la energía almacenada vuelve a
radiarse al medio incidente, y la **tasa de pérdida intrínseca**, lo rápido
que las capas límite viscotérmicas de la estructura la disipan.

- Con demasiado poca pérdida (un panel casi sin pérdidas) la energía se fuga
  casi toda de vuelta: la reflexión cae pero se recupera, $|R| > 0$.
- Con demasiada pérdida (un panel sobreamortiguado) la onda apenas entra: el
  panel vuelve a parecer rígido, $|R| > 0$ desde el otro lado.
- Cuando las dos tasas son **iguales**, el cero del coeficiente de reflexión
  cae exactamente sobre el eje de frecuencia real: a esa frecuencia no se
  refleja nada, $R = 0$ y $\alpha = 1 - |R|^2 = 1$. Esta es la **condición de
  acoplamiento crítico** (Jiménez et al. 2017).

En términos de impedancia el mismo enunciado se lee $Z = Z_0$: la impedancia
superficial del panel es puramente resistiva y está adaptada al medio
incidente, $\mathrm{Re}(Z)\cos\theta = Z_0$ e $\mathrm{Im}(Z) = 0$. La
condición no dice nada del espesor, que es exactamente el resquicio que
explotan los metaabsorbentes: llevar la resonancia a la sublongitud de onda
profunda con sonido lento, y después ajustar la pérdida hasta la adaptación.
El equilibrio es delicado por diseño, y `critical_coupling_design` lo
resuelve numéricamente en lugar de por tanteo: en la geometría devuelta la
impedancia normalizada queda en $1 + 0j$ y la reflexión en cero.

Dos longitudes fijan la geometría del panel y aparecen en todas las llamadas de
abajo. El **paso de red** `lattice_step` = $a$ es la separación entre
resonadores sucesivos *a lo largo* de una ranura, así que una ranura cargada
con $N$ resonadores tiene $L = N a$ de profundidad; eso, y no la cavidad del
propio resonador, es lo que hace que el panel del ejemplo tenga 30 mm de
espesor. El **periodo** `period` = $d$ es la separación entre ranuras *a lo
ancho* de la cara del panel, de modo que una ranura de altura $h$ sirve a cada
periodo y la cara frontal se refiere al área de celda $S_0 = d\,a$. El
resonador en sí se describe aparte por los lados y las longitudes de su cuello
y de su cavidad.

```python

from phonometry import (
    HelmholtzResonator, critical_coupling_design, slit_helmholtz_absorber,
)

base = HelmholtzResonator(
    neck_length=1.0e-3, neck_side=3.0e-3,
    cavity_length=30.0e-3, cavity_side=27.0e-3,
)
design = critical_coupling_design(300.0, base, lattice_step=3.0e-2, period=5.0e-2)

f = np.array([300.0])
res = slit_helmholtz_absorber(
    f, design.resonator, slit_height=design.slit_height,
    lattice_step=3.0e-2, period=5.0e-2,
)
z = res.normalized_impedance[0]
print(round(z.real, 2), round(z.imag, 2))       # 1.0 -0.0  (adaptada)
print(round(float(np.abs(res.reflection[0])), 3))   # 0.0   (cero de reflexión)
```

Esos dos números impresos son toda la prueba de la adaptación, y es una
lástima, porque el equilibrio se ve mejor de lo que se lee:

*Lo que resuelve `critical_coupling_design`. Izquierda: se barre la altura de
ranura a la frecuencia de diseño y las dos condiciones de adaptación se cruzan
en el mismo punto, $\mathrm{Re}(z) = 1$ e $\mathrm{Im}(z) = 0$ a 0,978 mm,
donde la absorción llega a 1. Derecha: las mismas tres ranuras como lugares
geométricos en el plano complejo. La sobreamortiguada y la subamortiguada
fallan por razones opuestas, y el lugar geométrico dice de qué lado estás; la
curva de absorción por sí sola, no.*

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

```python
# La impedancia a 300 Hz en función de la altura de ranura, una línea cada una.
for factor in (0.6, 1.0, 1.7):
    z_h = slit_helmholtz_absorber(
        np.array([300.0]), design.resonator, slit_height=factor * design.slit_height,
        lattice_step=3.0e-2, period=5.0e-2,
    ).normalized_impedance[0]
    print(factor, round(z_h.real, 2), round(z_h.imag, 2))
# 0.6 2.61 3.34   sobreamortiguada: demasiado resistiva, y ya no resuena a 300 Hz
# 1.0 1.0 -0.0    adaptada
# 1.7 0.52 -1.93  subamortiguada: pérdida insuficiente
```

</details>

## 2. El panel ranurado de sonido lento

Un panel rígido perforado por una red periódica de ranuras finas cerradas,
cada ranura cargada en su pared superior por una red de resonadores de
Helmholtz, es un absorbente de reacción local y muy sublongitud de onda
(Jiménez et al. 2017). Los resonadores frenan el sonido dentro de la ranura y
bajan su resonancia muy por debajo de la frecuencia de cuarto de onda, de modo
que un panel de pocos centímetros resuena en las centenas bajas de hercios.
Las pérdidas viscotérmicas en la ranura submilimétrica y en los cuellos de
los resonadores son las que hacen posible la absorción *perfecta*: cuando la
pérdida intrínseca compensa exactamente la fuga de la estructura, el cero del
coeficiente de reflexión cae sobre el eje de frecuencia real y $\alpha = 1$
(acoplamiento crítico).

La matriz de transferencia del panel es la cadena
$T = M_{\Delta l}\,\prod_n (M_\mathrm{s}\,M_\mathrm{HR}^{(n)}\,M_\mathrm{s})$ de medios pasos de ranura
(con impedancia característica de la ranura
$Z_\mathrm{s} = \sqrt{\kappa_\mathrm{s} \rho_\mathrm{s}}/S_\mathrm{s}$), resonadores como dispersores puntuales en
derivación $[[1,0],[1/Z_\mathrm{HR},1]]$ y una corrección de radiación de la ranura.
El coeficiente de reflexión con fondo rígido es
$R = (T_{11}\cos\theta - Z_0 T_{21})/(T_{11}\cos\theta + Z_0 T_{21})$ con
$Z_0 = \rho_0 c_0 / S_0$ y $\alpha = 1 - |R|^2$. La ranura usa los parámetros
viscotérmicos de canal estrecho y los cuellos y cavidades cuadrados la serie
de conducto rectangular de Stinson (1991).

Todos los símbolos de esa cadena: $M_\mathrm{s}$ es el medio paso de red de la propia
ranura, $M_\mathrm{HR}^{(n)}$ la admitancia en derivación del $n$-ésimo resonador con
$Z_\mathrm{HR}$ su impedancia de entrada (cuello más cavidad, con las correcciones de
radiación de extremo de Jiménez et al. 2016), y $M_{\Delta l}$ la corrección de
radiación de la boca de la ranura. $\kappa_\mathrm{s}$, $\rho_\mathrm{s}$ y $S_\mathrm{s}$ son el módulo
de compresibilidad efectivo viscotérmico, la densidad efectiva y la sección de
la ranura. $S_0 = d\,a$ es el área de un periodo de la cara del panel, así que
$Z_0 = \rho_0 c_0/S_0$ es la impedancia de adaptación de la sección 1 *referida
a esa misma área*: el panel está adaptado cuando el sonido que entra por un
periodo lo consume exactamente ese periodo. Ojo con el doble uso del símbolo:
en la sección 1 $Z_0$ es la impedancia del medio $\rho_0 c_0$, y aquí es esa
impedancia dividida por una sección.

Fíjate en qué cambia realmente el cálculo de diseño. Dada una frecuencia objetivo,
resintoniza la **longitud de cavidad** del resonador y resuelve la **altura de
ranura**; el paso de red y el periodo se quedan como se pasaron. Para el diseño
de 300 Hz de abajo, la cavidad pasa de los 30 mm del resonador de partida a
44,7 mm y la ranura queda en 0,978 mm, mientras que el panel sigue teniendo
30 mm de profundidad porque $L = N a = 1 \times 30$ mm, que son $\lambda/38$ a
300 Hz. Quien quiera un panel más hondo añade resonadores, no cavidad.

`critical_coupling_design` invierte el modelo: dada una frecuencia y un ángulo
objetivo, ajusta la longitud de la cavidad (que fija la resonancia) y la altura
de la ranura (que fija la pérdida) para que se cumplan las dos condiciones de
adaptación $\mathrm{Re}(Z)\cos\theta = Z_0$ e $\mathrm{Im}(Z) = 0$, colocando
el cero de reflexión sobre el eje real. La geometría devuelta da entonces
$\alpha \approx 1$ a la frecuencia de diseño.

```python

from phonometry import (
    HelmholtzResonator, critical_coupling_design, slit_helmholtz_absorber,
)

base = HelmholtzResonator(
    neck_length=1.0e-3, neck_side=3.0e-3,
    cavity_length=30.0e-3, cavity_side=27.0e-3,
)
design = critical_coupling_design(
    300.0, base, lattice_step=3.0e-2, period=5.0e-2,
)
print(round(design.absorption, 4))          # ~1.0 (absorción perfecta)
print(round(design.slit_height * 1e3, 3))    # altura de ranura resuelta, mm

f = np.linspace(150.0, 500.0, 700)
res = slit_helmholtz_absorber(
    f, design.resonator, slit_height=design.slit_height,
    lattice_step=3.0e-2, period=5.0e-2,
)
res.plot()   # alpha(f) con |R| superpuesto; pico = 1 a 300 Hz
```

La geometría resuelta merece un vistazo antes que la curva de absorción. El
resonador se dibuja con `.plot()` y el resultado del panel con
`.plot_geometry()`, ambos acotados y a escala.

*Los cuatro números que definen el resonador: el lado y la longitud del
cuello fijan la masa móvil y la mayor parte de la pérdida, y el lado y la
longitud de la cavidad fijan la rigidez. `critical_coupling_design` conserva
esta sección y reajusta la longitud de la cavidad para colocar la
resonancia.*

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

```python

from phonometry import HelmholtzResonator

resonator = HelmholtzResonator(
    neck_length=1.0e-3, neck_side=3.0e-3,
    cavity_length=30.0e-3, cavity_side=27.0e-3,
)
resonator.plot(language="es")   # sección acotada, a escala
plt.show()
```

</details>

*Un periodo del diseño resuelto, a escala: el panel entero tiene 30 mm de
profundidad, $\lambda/38$ a 300 Hz, y la ranura submilimétrica que hace toda
la absorción apenas se ve. Esa es justamente la gracia del mecanismo de
sonido lento.*

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

```python

from phonometry import HelmholtzResonator, critical_coupling_design, materials

base = HelmholtzResonator(
    neck_length=1.0e-3, neck_side=3.0e-3,
    cavity_length=30.0e-3, cavity_side=27.0e-3,
)
design = critical_coupling_design(
    300.0, base, lattice_step=3.0e-2, period=5.0e-2,
)

# La función libre dibuja cualquier lista de resonadores; un resultado de
# slit_helmholtz_absorber retiene su geometría, así que res.plot_geometry()
# dibuja el mismo periodo.
materials.plot_slit_absorber_geometry(
    [design.resonator], slit_height=design.slit_height,
    lattice_step=3.0e-2, period=5.0e-2,
    language="es")
plt.show()
```

</details>

*Un resonador, una ranura, un equilibrio entre pérdida y fuga. El diseño con
acoplamiento crítico alcanza $\alpha = 1$ a 300 Hz en un panel de solo
$\lambda/38$ de profundidad; estrechar la ranura sobreamortigua la resonancia
y ensancharla la subamortigua, y ambos bajan el pico por debajo de uno.*

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

```python

from phonometry import (
    HelmholtzResonator, critical_coupling_design, slit_helmholtz_absorber,
)

a, d, f0 = 3.0e-2, 5.0e-2, 300.0
base = HelmholtzResonator(1.0e-3, 3.0e-3, 30.0e-3, 27.0e-3)
design = critical_coupling_design(f0, base, lattice_step=a, period=d)
h0 = design.slit_height

f = np.linspace(150.0, 500.0, 700)
fig, ax = plt.subplots()
for factor, label in [(1.0, "acoplamiento crítico"),
                      (0.6, "ranura estrecha"), (1.7, "ranura ancha")]:
    res = slit_helmholtz_absorber(
        f, design.resonator, slit_height=factor * h0,
        lattice_step=a, period=d,
    )
    ax.plot(f, res.absorption, label=label)
ax.set(xlabel="Frecuencia [Hz]", ylabel="Coeficiente de absorción")
ax.legend()
plt.show()
```

</details>

El clip de abajo excita exactamente esta celda en un tubo de onda plana
virtual: la ranura submilimétrica y su resonador están mallados en la
rejilla FDTD y rellenos con los fluidos efectivos viscotérmicos del modelo.
A la altura de ranura de diseño la onda estacionaria se desploma y el tono
muere dentro del panel; a 1,7 veces esa altura el balance de pérdidas se
rompe y la reflexión la reconstruye.

### Fuera de la incidencia normal

Todos los fragmentos y figuras de arriba son a incidencia normal, y la
condición de adaptación lleva un $\cos\theta$:
$\mathrm{Re}(Z)\cos\theta = Z_0$. La estructura es de reacción local, así que
la cadena interna no depende del ángulo y con $\theta$ solo se mueve la
impedancia del aire en la cara frontal: un panel adaptado a incidencia normal
se desadapta por tanto de forma progresiva según crece el ángulo, sin que la
resonancia se mueva en frecuencia. Cuánto cuesta eso es una pregunta que el
modelo responde directamente, y la respuesta es más suave de lo que sugiere el
álgebra:

```python
# El mismo diseño de 300 Hz, evaluado fuera de la normal. Tanto el cálculo de
# diseño como el evaluador toman `angle` en radianes.
for degrees in (0.0, 15.0, 30.0, 45.0, 60.0):
    off = slit_helmholtz_absorber(
        np.array([300.0]), design.resonator, slit_height=design.slit_height,
        lattice_step=3.0e-2, period=5.0e-2, angle=np.radians(degrees),
    )
    print(degrees, round(float(off.absorption[0]), 3))
# 0.0 1.0 / 15.0 1.0 / 30.0 0.995 / 45.0 0.971 / 60.0 0.889
```

El pico se queda en 300 Hz y solo cae a 0,89 a 60°, que es lo que el artículo
original quiere decir con absorción *casi omnidireccional*. De ahí salen dos
opciones de diseño. Sintonizar al ángulo que el panel vaya a ver
mayoritariamente (`critical_coupling_design` toma el mismo argumento `angle`)
cuando la instalación tiene una dirección dominante; o aceptar el diseño a
incidencia normal, que es la elección más tolerante frente al ángulo. En
cualquier caso, espera que una medición en cámara reverberante de un panel así
salga por debajo del $\alpha = 1$ a incidencia normal, ya que el campo difuso
pondera justo los ángulos oblicuos donde peor es la adaptación.

## 3. ¿Cuánto de lento es el sonido?

El nombre del mecanismo se puede medir. El resultado de la matriz de
transferencia retiene el número de onda efectivo recuperado de la ranura
cargada, así que la velocidad de fase en su interior está a una división de
distancia, y la comparación con la ranura vacía lo dice todo sobre por qué el
panel puede ser delgado:

```python

from phonometry import (
    HelmholtzResonator, critical_coupling_design, slit_helmholtz_absorber,
)

base = HelmholtzResonator(
    neck_length=1.0e-3, neck_side=3.0e-3,
    cavity_length=30.0e-3, cavity_side=27.0e-3,
)
design = critical_coupling_design(300.0, base, lattice_step=3.0e-2, period=5.0e-2)
res = slit_helmholtz_absorber(
    np.array([300.0]), design.resonator, slit_height=design.slit_height,
    lattice_step=3.0e-2, period=5.0e-2,
)

# Velocidad de fase del modo de ranura a la frecuencia de diseño, desde k_eff.
c_eff = 2 * np.pi * 300.0 / res.effective_wavenumber[0].real
print(round(float(c_eff), 1))               # 37.0   [m/s]
print(round(float(c_eff / 343.0), 2))       # 0.11   cerca de un noveno de c0

# Resonancia de cuarto de onda de los 30 mm: aire libre frente a ranura cargada.
print(round(343.0 / (4 * 0.03)))            # 2858   [Hz] ranura vacía
print(round(float(c_eff) / (4 * 0.03)))     # 308    [Hz] ranura cargada
```

Por debajo de su resonancia, los resonadores en derivación añaden compliancia
a la ranura sin añadir masa móvil, y la velocidad de fase cae a cerca de un
noveno del valor en aire libre. La ranura de 30 mm que vacía resonaría a
2,9 kHz resuena cargada en torno a 300 Hz, que es precisamente donde el
diseño con acoplamiento crítico de la sección 1 coloca su cero de reflexión.
El sonido lento lleva la resonancia al régimen de sublongitud de onda
profunda; el acoplamiento crítico hace después que esa resonancia sea
perfectamente absorbente.

Cuatro escalares son un relato pobre de una relación de dispersión, así que
aquí está:

*El mecanismo que da nombre a la guía, en frecuencia. La ranura vacía se queda
en 1 por definición; la cargada cae a un mínimo de 0,08 $c_0$ cerca de 379 Hz y
después sube con fuerza cuando los resonadores pasan su propia resonancia en
485 Hz, por encima de la cual la rama propagante se cierra. En el punto de
diseño de 300 Hz la velocidad de fase es 0,11 $c_0$ = 37 m/s, lo que hace de la
profundidad fija de 30 mm un cuarto de longitud de onda a 308 Hz, donde resuena
el panel. Esos mismos 30 mm de aire simple serían un cuarto de onda a 2858 Hz,
y esa relación es todo el argumento de que el panel sea delgado. La misma curva
explica el panel metadifusor de 2 cm de la
[guía de metadifusores](/phonometry/es/materials/diffusers/metadiffusers/).*

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

```python
f_sweep = np.geomspace(50.0, 3000.0, 400)
swept = slit_helmholtz_absorber(
    f_sweep, design.resonator, slit_height=design.slit_height,
    lattice_step=3.0e-2, period=5.0e-2,
)
c_ratio = 2 * np.pi * f_sweep / swept.effective_wavenumber.real / 343.0
print(round(float(c_ratio.min()), 3), round(float(f_sweep[c_ratio.argmin()])))  # 0.08 381
```

</details>

### De dónde sale el número de onda efectivo

El número de onda que devuelve el resultado no es un número ajustado: es el
producto de dos modelos viscotérmicos que la biblioteca también expone por
separado. La ranura vacía ya tiene una densidad efectiva y un módulo de
compresibilidad complejos, fijados por las capas límite viscosa y térmica
contra sus paredes, que es la razón de que una ranura submilimétrica tenga
pérdidas siquiera, y cada resonador añade una impedancia en derivación en
paralelo con ella.

```python
# La ranura vacía, a la frecuencia y a la altura de ranura de diseño.
rho_e, k_e = materials.slit_effective_properties(
    np.array([300.0]), slit_height=design.slit_height
)
print(np.round(rho_e, 3))      # [1.355-0.203j]  frente a 1.205 kg/m^3 en aire libre
print(f"{k_e[0]:.3e}")         # 1.332e+05+7.725e+03j  frente a 1.419e+05 Pa adiabático

# La impedancia en derivación de un resonador, a ambos lados de su propia
# resonancia en 484 Hz.
z_hr = materials.helmholtz_resonator_impedance(
    np.array([300.0, 484.0, 800.0]), design.resonator,
    slit_height=design.slit_height, lattice_step=3.0e-2,
)
print(np.sign(z_hr.imag))      # [-1. -1.  1.]  compliancia debajo, masa encima
```

Por debajo de su propia resonancia la derivación es una compliancia: añade
rigidez a la ranura sin añadir masa móvil, y eso es exactamente lo que baja la
velocidad de fase. `materials.rectangular_duct_properties(f, side=1.0e-3)` da
la misma pareja efectiva para un conducto cuadrado cuando la geometría de
guiado es un conducto y no una ranura, y las tres toman un estado
`AirProperties` (velocidad del sonido, densidad, viscosidad, número de Prandtl,
relación de calores específicos, presión atmosférica), así que un diseño para
un conducto de escape caliente o para una cabina en altura cambia un argumento
en lugar del modelo.

## 4. Los absorbentes resonantes clásicos bajo la misma óptica

El acoplamiento crítico no es exclusivo de los metamateriales; es el
principio organizador escondido dentro de los absorbentes resonantes clásicos
de la [guía de porosos y multicapa](/phonometry/es/materials/absorbers/porous-absorbers/):

- **El panel microperforado es un absorbente con acoplamiento crítico avant
  la lettre.** El pico de absorción de Maa, $4r/(1+r)^2$, vale exactamente
  uno cuando la resistencia normalizada es $r = 1$, que es la condición de
  adaptación de impedancia de la sección 1 enunciada para una lámina de
  reacción local. Un MPP sobre cavidad sintonizado a $r = 1$ hace
  precisamente lo mismo que el panel ranurado, con la pérdida viscosa
  aportada por orificios submilimétricos en vez de una ranura submilimétrica;
  lo que no puede hacer es ralentizar el sonido. Su pico es la resonancia
  masa-resorte de la masa de los orificios contra la compliancia de la
  cavidad; los diseños convencionales dejan la cavidad en torno a una décima
  a una vigésima de longitud de onda, así que sin la compresión del sonido
  lento la construcción se queda varias veces por encima del espesor de la
  ranura cargada.
- **Los absorbentes de membrana y de membrana decorada** cambian la
  viscosidad de los orificios por la pérdida de flexión de una lámina
  impermeable flexible; el mismo equilibrio pérdida-fuga gobierna su pico, y añadir
  masas a la membrana (la membrana decorada de la literatura de
  metamateriales) baja la resonancia igual que los resonadores de carga
  bajan la de la ranura.
- **La pregunta de diseño es siempre la misma.** Se elige la resonancia con
  la geometría y después se adapta la pérdida a la fuga. Los modelos de capa
  porosa preguntan «cuánto espesor»; la familia resonante pregunta «cuánta
  pérdida», y `critical_coupling_design` lo responde exactamente para el
  panel ranurado.

El precio de la resonancia es el ancho de banda, y merece un número y no un
adjetivo. El diseño de 300 Hz mantiene $\alpha \geq 0{,}8$ de 282 Hz a 320 Hz y
$\alpha \geq 0{,}5$ de 266 Hz a 341 Hz, un tercio de octava, frente a una manta
porosa de 50 mm que da alrededor de 0,68 a 500 Hz y sigue funcionando décadas
de frecuencia por encima. Un metaabsorbente es por tanto una herramienta para un
problema tonal o modal *conocido*, no un tratamiento general: compra
profundidad con ancho de banda.

La respuesta habitual es dejar de pedirle todo el trabajo a una sola celda.
Encadenar $N$ resonadores a lo largo de una ranura es justo para lo que está el
argumento de lista de la biblioteca:

*Lo que compra una cadena, y lo que cuesta. Medido como el intervalo total de
frecuencia por encima de $\alpha = 0{,}8$, y no como la distancia entre los
puntos extremos, que en una cadena esconde un valle, una celda da 38 Hz, los
cuatro resonadores graduados dan 51 Hz en dos lóbulos, y cuatro resonadores
*idénticos* de la misma profundidad total dan solo 22 Hz. Así que las etapas de
más no compran ancho de banda por sí solas: desintonizarlas es lo que hace que
la profundidad rinda, que es toda la idea detrás de los diseños de atrapamiento
arcoíris de Jiménez et al. (2017). El coste es geométrico e inevitable, ya que
$L = N a$: el panel de cuatro etapas tiene 120 mm de profundidad frente a los
30 mm de la celda única, y su altura de ranura (1,2 mm aquí) es un compromiso
que ya no está críticamente acoplado a ninguna etapa.*

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

```python
# `slit_helmholtz_absorber` acepta una lista: esa es la cadena de la ranura.
f_chain = np.linspace(120.0, 700.0, 700)
graded = [critical_coupling_design(target, base, lattice_step=3.0e-2,
                                   period=5.0e-2).resonator
          for target in (250.0, 320.0, 410.0, 520.0)]
chain = slit_helmholtz_absorber(f_chain, graded, slit_height=1.20e-3,
                                lattice_step=3.0e-2, period=5.0e-2)
step = float(f_chain[1] - f_chain[0])
print(round(float(chain.absorption.max()), 3),
      round(float(np.sum(chain.absorption >= 0.8)) * step))     # 0.999 51
```

</details>

## 5. Del modelo a un panel medido

Nada de lo anterior se ha construido. Entre la geometría resuelta y un panel
que se pueda poner delante de un instrumento se interponen cuatro cosas.

**La tolerancia de la ranura es un parámetro de diseño.** La ranura resuelta
son 0,978 mm, y el equilibrio de pérdidas lo fija esa dimensión submilimétrica.
Manteniendo la frecuencia de diseño en 300 Hz, una ranura mecanizada 0,02 mm
estrecha o ancha sigue dando $\alpha = 0{,}997$; a ±0,05 mm queda en 0,982 y
0,984; a ±0,10 mm ha caído a 0,931 y 0,939. Así que unas pocas centésimas de
milímetro son la tolerancia de trabajo, y una décima es donde el panel deja de
ser *perfecto*. Fíjate en cómo falla cada error: una ranura estrecha
sobreamortigua ($z = 1{,}09 + 0{,}27\mathrm{j}$ a −0,05 mm) y una ancha
subamortigua ($0{,}93 - 0{,}24\mathrm{j}$ a +0,05 mm). Yerra por ancho. El
modelo viscotérmico supone paredes rígidas y lisas, así que la rugosidad de la
fabricación aditiva es pérdida *extra* que empuja hacia el sobreamortiguamiento
a un panel construido tal cual se diseñó; un prototipo cortado algo ancho y
repasado después converge desde el lado correcto.

**Un panel periódico no encaja en un tubo cualquiera.** El apartado 6 de
ISO 10534-2 exige cortar una probeta de estructura lateral regular *siguiendo
las líneas de simetría* de esa estructura y, cuando las unidades estructurales
no encajan en la sección del tubo, medir varias probetas moviendo el corte
respecto a la estructura. El periodo de 50 mm de aquí no encaja en absoluto en
un tubo de 29 mm, y en un tubo circular de 100 mm solo encaja como dos periodos
enteros a lo largo de un diámetro, que no es un corte simétrico. La vía limpia
es un **tubo cuadrado o rectangular cuyo lado sea un número entero de
periodos**, con las paredes rígidas del tubo haciendo de planos de simetría de
la red infinita; y entonces hay que recalcular el techo de onda plana para esa
geometría con `plane_wave_frequency_range(..., shape="rectangular")` sobre el
lado mayor, y no sobre un diámetro nominal.

**Pon el plano de referencia donde lo pone el modelo.** El $x = 0$ del tubo es
la cara del panel, no la boca de la ranura ni el frente del marco; un milímetro
de error ahí rota la impedancia medida sin tocar la absorción, exactamente como
describe la
[guía del tubo de impedancia](/phonometry/es/materials/absorbers/impedance-tube/#3-método-de-la-función-de-transferencia-iso-10534-2).

**O medirlo como superficie.** Si el panel está pensado para una sala y no para
un conducto, la verificación honesta es una probeta de 10 a 12 m² en cámara
reverberante según
[ISO 354](/phonometry/es/materials/absorbers/absorption-measurement/), y el
resultado será el coeficiente de incidencia aleatoria, y no el $\alpha = 1$ que
promete el diseño a incidencia normal, por la razón expuesta arriba en el
apartado de incidencia fuera de la normal.

## Qué cubre esta guía

El absorbente de metamaterial de ranura con resonadores de Helmholtz de
Jiménez et al. (2016/2017): la cadena de matrices de transferencia con los
parámetros efectivos viscotérmicos de Stinson (1991), la impedancia del
resonador con sus correcciones de radiación y el término de radiación de la
ranura (`slit_helmholtz_absorber`, con `HelmholtzResonator` como contenedor de
geometría y el `effective_wavenumber` y `effective_impedance` recuperados
expuestos en el resultado), y el cálculo de diseño por acoplamiento crítico
(`critical_coupling_design`) que ajusta longitud de cavidad y altura de ranura
hasta que el cero de reflexión queda sobre el eje de frecuencia real. También
están expuestos los dos bloques constructivos viscotérmicos con los que se
ensambla la cadena (`slit_effective_properties`, `rectangular_duct_properties`
y `helmholtz_resonator_impedance`, todos con un estado `AirProperties`), y
`slit_helmholtz_absorber` acepta una *lista* de resonadores, que es la cadena
graduada de la sección 4.

Ninguna norma de medida rige estos modelos de predicción; la sección 5 expone
la vía por la que se verificaría un panel construido, en el [tubo de
impedancia](/phonometry/es/materials/absorbers/impedance-tube/) (ISO 10534-2)
o en la [cámara
reverberante](/phonometry/es/materials/absorbers/absorption-measurement/) (ISO
354), pero nada de aquí ejecuta nada de eso: las cifras de tolerancia y de
ángulo citadas son evaluaciones del modelo, y la rugosidad de una ranura
impresa, el marco, el montaje y el tamaño finito del panel quedan todos fuera
del modelo. Los absorbentes de membrana y membrana decorada de la sección 4 se
tratan solo como contexto; las capas clásicas perforadas, microperforadas y de
membrana están implementadas en [Absorbentes porosos y
multicapa](/phonometry/es/materials/absorbers/porous-absorbers/), y la ranura
cargada con resonadores usada como elemento de fase en vez de como absorbente
es el tema de
[Metadifusores](/phonometry/es/materials/diffusers/metadiffusers/).

## Véase también

- [Absorbentes porosos y multicapa](/phonometry/es/materials/absorbers/porous-absorbers/):
  las capas de fluido equivalente y resonantes de la familia clásica,
  incluido el panel microperforado de Maa que relee la sección 4.
- [Metadifusores](/phonometry/es/materials/diffusers/metadiffusers/): la misma celda de
  ranura y resonador sintonizada para fase de reflexión controlada en lugar
  de absorción perfecta; sus diseños ternarios toman prestada la ranura con
  acoplamiento crítico como estado `0`.
- [Tubo de impedancia](/phonometry/es/materials/absorbers/impedance-tube/): la medición a
  incidencia normal en la que se verificaría un panel construido, y el tubo
  FDTD virtual tras la animación de arriba.
- [Resistencia al flujo de aire](/phonometry/es/materials/absorbers/airflow-resistance/):
  la física viscosa de los canales estrechos, medida sobre el material a
  granel.
- Referencia de la API: [`materials.absorbers.slow_sound`](/phonometry/es/reference/api/materials/slow-sound/).
- Teoría: [Caracterización de materiales acústicos](/phonometry/es/reference/theory/materials-surfaces/#caracterización-de-materiales-acústicos-iso-11654-iso-9053-12-iso-10534-12-astm-e2611): las definiciones de impedancia superficial y de absorción con las que se evalúan los modelos de resonador.
