[READ-ONLY] Mirror of https://github.com/jmrplens/PyOctaveBand. [Python3] Octave-Band and Fractional Octave-Band filter. For signal in time domain. jmrplens.github.io/PyOctaveBand/
acoustics audio filter frequency frequency-analysis frequency-domain octave python3 signal time-domain
0

Configure Feed

Select the types of activity you want to include in your feed.

docs: refresh install extras and landing pages to current library scope (#274)

* docs: refresh install extras and landing pages to current library scope

The install docs listed only the plot, perf and full extras; add the report
extra (reportlab + svglib, required for the .report() PDF fiches) and fix the
stale 'both' comment on full in the site getting-started pages (EN/ES),
docs/getting-started.md and the README install line.

Refresh the landing pages, which predated most of the library:

- Site index (EN/ES): hero and cards now describe all fifteen domain
namespaces, the 371 conformance checks across 46 domains and 235 standards,
bilingual .plot() figures and the normative .report() PDF fiches.
- Getting started (EN/ES): note that the metrology core is one of fifteen
domains and link Why phonometry and the conformance report.
- Why phonometry (EN/ES): state the current conformance scale beyond the
metrology-core sample table.
- README: current toolkit description, missing domain highlights (hearing,
materials, vibration, aircraft, underwater, electroacoustics, noise control,
FDTD, fiches), five sound-power routes, G weighting, and twelve to fifteen
namespaces.
- Shorten the junction-transmission page titles (EN/ES) to satisfy the
70-character html-validate limit.

* docs: name all standards bodies on the landing description and tighten the ES card wording

Add ANSI, DIN and ECAC/CEAC to the standards-body enumeration in the site
index description (both languages), keep 'con estado' for the stateful block
processing in the Spanish card, and use the Spanish 'Doc 29/32 de la CEAC'
form already used by the Spanish guides.

authored by

José M. Requena Plens and committed by
GitHub
(Jul 21, 2026, 1:50 AM +0200) ba85d79a 3d75947f

+127 -56
+14 -5
README.md
··· 15 15 16 16 > *phonometry* — the measurement of sound. Formerly published as **PyOctaveBand**. 17 17 18 - Acoustic measurement toolkit for Python: fractional octave-band filter banks, frequency and time weighting, and sound level metrology — conformance-tested against **IEC 61260-1:2014 / ANSI S1.11-2004** (filters) and **IEC 61672-1:2013** (weighting and levels) class 1 tolerance limits. 18 + Acoustic measurement toolkit for Python, from fractional octave-band filters, weighting and sound level metrology to psychoacoustics, rooms and buildings, vibration, environmental and aircraft noise, underwater acoustics, electroacoustics and wave simulation. Every metric is conformance-tested against its governing standard (371 checks across 46 domains and 235 standards), with class 1 filters per **IEC 61260-1:2014 / ANSI S1.11-2004** and class 1 weightings and levels per **IEC 61672-1:2013**. 19 19 20 20 <img src="https://raw.githubusercontent.com/jmrplens/phonometry/main/.github/images/filter_type_comparison.svg" alt="Magnitude response comparison of the five filter architectures for the 1 kHz octave band, with a zoom at the -3 dB crossover" width="80%"> 21 21 ··· 23 23 24 24 - 🎛️ 1/1, 1/3 and arbitrary fractional octave filter banks (stable SOS + multirate decimation) 25 25 - 🏗️ Five architectures: Butterworth, Chebyshev I/II, Elliptic, Bessel — all with −3 dB points on the ANSI band edges 26 - - 🔊 A/C/Z frequency weighting within IEC 61672-1 class 1 tolerances 26 + - 🔊 A/C/Z frequency weighting within IEC 61672-1 class 1 tolerances, plus G weighting for infrasound (ISO 7196) 27 27 - ⏱️ Fast/Slow/Impulse time ballistics, `Leq`, `LAeq` and `L10/L50/L90` statistical levels 28 28 - 🗺️ Octave spectrogram (band levels over time) and zero-phase offline filtering 29 29 - 🧠 Loudness in sones three ways: Zwicker (ISO 532-1 Annex B validated), Moore-Glasberg stationary & time-varying (ISO 532-2/3) and Sottek Hearing Model (ECMA-418-2); DIN 45692 sharpness, ISO 226:2023 contours ··· 33 33 - ↗️ Two-microphone sound intensity (IEC 61043) with ISO 9614-1 field indicators 34 34 - 🏛️ Room & building acoustics: swept-sine/MLS impulse responses (ISO 18233), EDT/T20/T30/C50/C80/Ts (ISO 3382-1/2), open-plan speech metrics (ISO 3382-3), field airborne + impact + façade insulation with R′w/DnT,w/L′nT,w/D2m,nT,w and C/Ctr/CI (ISO 16283-1/2/3, ISO 717-1/2), laboratory R/Ln (ISO 10140), flanking-transmission prediction of R′w/L′n,w (EN 12354-1/2), measurement uncertainty (ISO 12999-1), sound absorption (ISO 354) 35 35 - 🌬️ Outdoor propagation & occupational exposure: atmospheric absorption α(f) (ISO 9613-1), the ISO 9613-2 general method (divergence + atmospheric + ground + barrier terms) with a per-term octave-band breakdown, and daily noise exposure LEX,8h with task/job/full-day strategies and Annex C uncertainty (ISO 9612) 36 - - 🔊 Sound power LW three ways: enveloping-surface pressure (ISO 3744/3746), reverberation-room precision with Waterhouse/C1/C2 (ISO 3741), intensity scanning with field indicators and grade (ISO 9614-2) 36 + - 🔊 Sound power LW five ways: enveloping-surface pressure (ISO 3744/3746), reverberation-room precision with Waterhouse/C1/C2 (ISO 3741), intensity scanning with field indicators and grade (ISO 9614-2), precision anechoic rooms (ISO 3745) and precision intensity scanning (ISO 9614-3), plus ISO 4871 noise-emission declarations 37 + - 🦻 Hearing: age-related threshold distributions (ISO 7029) and noise-induced permanent threshold shift with HTLAN (ISO 1999) 38 + - 🧱 Materials: absorption ratings αw (ISO 11654), impedance-tube absorption (ISO 10534-2), porous-absorber models, airflow resistance, scattering and diffusion (ISO 17497), dynamic stiffness 39 + - 🔩 Vibration & structure-borne sound: mobility and FRFs (ISO 7626), isolator transfer stiffness (ISO 10846), sound power from surface vibration (ISO/TS 7849), reception-plate power (EN 15657), installed-source prediction (EN 12354-5) and human vibration (ISO 2631-1/-5, ISO 5349) 40 + - ✈️ Aircraft noise: EPNL certification chain (ICAO Annex 16) with IEC 61265 verification and SAE ARP 5534 absorption, ECAC Doc 29 airport contours with the EASA ANP fleet database, and the ECAC Doc 32 rotorcraft hemisphere method 41 + - 🌊 Underwater acoustics: ISO 18405 levels re 1 µPa, ship radiated noise (ISO 17208-1/2), pile driving (ISO 18406), sonar equation, Wenz/JOMOPANS-ECHO ambient noise, and transmission loss from spreading laws to normal-mode, ray and parabolic-equation solvers 42 + - 🔈 Electroacoustics: distortion per IEC 60268-3 (THD, THD+N, SMPTE/CCIF intermodulation, DIM), frequency response and coherence, rigid-piston radiation, and loudspeaker/microphone rated characteristics (IEC 60268-5/-4) 43 + - 🔇 Noise control: silencer insertion loss, enclosures and HVAC spectra 44 + - 🌐 Deterministic 2D FDTD wave simulation with sources, probes, rasterised obstacles and rigid/impedance/absorbing boundaries 45 + - 📄 Typed, frozen result dataclasses with `.plot(language="en"|"es")` figures and normative `.report()` PDF fiches (ISO 717, ISO 11654, ISO 532-1, EBU R 128, ICAO EPNL, IEC 61260-1, ISO 4871, IEC 60268-5/-4); documentation fully in English and Spanish 37 46 - 📏 Physical SPL calibration with IEC 60942:2017 stability validation, and dBFS modes 38 47 - 📉 Calibrated spectral analysis (Bendat & Piersol): PSD/CSD with chi-square confidence intervals and random errors, coherent output spectrum & spectral SNR, 1/n-octave smoothing, exact-slope colored-noise generators 39 48 - ⏱️ Correlation & time-delay estimation (Bendat & Piersol, Knapp & Carter): biased/unbiased/coefficient correlation with random errors, GCC with Roth/SCOT/PHAT/ML weightings, sub-sample IR delay & alignment, Hilbert envelope with instantaneous frequency ··· 46 55 pip install phonometry 47 56 ``` 48 57 49 - Optional extras: `phonometry[plot]` (matplotlib for response plots and result `.plot()` methods), `phonometry[perf]` (numba for faster impulse ballistics), `phonometry[full]` (both). 58 + Optional extras: `phonometry[plot]` (matplotlib for response plots and result `.plot()` methods), `phonometry[perf]` (numba for faster impulse ballistics), `phonometry[report]` (reportlab and svglib, so result `.report()` methods can render normative PDF fiches), `phonometry[full]` (all of the above). 50 59 51 60 ## 📚 Documentation 52 61 ··· 110 119 print(f"SPL [dB]: {spl}") 111 120 ``` 112 121 113 - The library is organized into twelve domain namespaces; every public name is 122 + The library is organized into fifteen domain namespaces; every public name is 114 123 also re-exported at the top level, so `from phonometry import octave_filter` 115 124 keeps working: 116 125
+14 -3
docs/getting-started.md
··· 13 13 Optional extras: 14 14 15 15 ```bash 16 - pip install phonometry[plot] # matplotlib, for filter response plots and result .plot() methods 17 - pip install phonometry[perf] # numba, faster 'impulse' time weighting 18 - pip install phonometry[full] # both 16 + pip install phonometry[plot] # matplotlib, for filter response plots and result .plot() methods 17 + pip install phonometry[perf] # numba, faster 'impulse' time weighting 18 + pip install phonometry[report] # reportlab + svglib, so result .report() methods render normative PDF fiches 19 + pip install phonometry[full] # all of the above 19 20 ``` 20 21 21 22 **Option 2: Cloning and Installing** ··· 127 128 128 129 ## Where to go next 129 130 131 + The octave analysis above uses the `metrology` core, one of fifteen domain 132 + namespaces; the documentation index walks through the rest, from 133 + psychoacoustics and room, building and vibration acoustics to environmental, 134 + aircraft and underwater noise, electroacoustics and FDTD wave simulation. 135 + Every result object exposes a one-line `.plot(language="en"|"es")` figure and, 136 + where a standard defines a reporting format, a `.report()` method that renders 137 + the normative PDF fiche. 138 + 130 139 - [Filter Banks](filter-banks.md): choose an architecture and inspect responses 131 140 - [Calibration and dBFS](calibration.md): get real-world SPL values 141 + - [Why phonometry](why-phonometry.md): the conformance-first design philosophy 142 + - [Conformance report](CONFORMANCE.md): the expected and computed value of all 371 checks 132 143 - [API Reference](api-reference.md): every parameter of every function 133 144 - [Bibliography](references.md): the books and papers behind every guide, each with a verified link
+14 -3
site/src/content/docs/es/getting-started.mdx
··· 16 16 Extras opcionales: 17 17 18 18 ```bash 19 - pip install phonometry[plot] # matplotlib, para gráficas de respuesta y métodos .plot() de resultados 20 - pip install phonometry[perf] # numba, ponderación temporal 'impulse' más rápida 21 - pip install phonometry[full] # ambos 19 + pip install phonometry[plot] # matplotlib, para gráficas de respuesta y métodos .plot() de resultados 20 + pip install phonometry[perf] # numba, ponderación temporal 'impulse' más rápida 21 + pip install phonometry[report] # reportlab + svglib, para que los métodos .report() generen fichas PDF normativas 22 + pip install phonometry[full] # todos los anteriores 22 23 ``` 23 24 24 25 **Opción 2: Clonar e instalar** ··· 130 131 131 132 ## Siguientes pasos 132 133 134 + El análisis en octavas de arriba usa el núcleo `metrology`, uno de los quince 135 + espacios de nombres de dominio; las secciones de la barra lateral recorren el 136 + resto, desde la psicoacústica y la acústica de salas, edificación y vibraciones 137 + hasta el ruido ambiental, aeronáutico y submarino, la electroacústica y la 138 + simulación de ondas FDTD. Cada objeto de resultado expone una figura 139 + `.plot(language="en"|"es")` de una línea y, cuando una norma define un formato 140 + de informe, un método `.report()` que genera la ficha PDF normativa. 141 + 133 142 - [Bancos de filtros](/phonometry/es/guides/filter-banks/): elige una arquitectura e inspecciona sus respuestas 134 143 - [Calibración y dBFS](/phonometry/es/guides/calibration/): obtén valores SPL reales 144 + - [Por qué phonometry](/phonometry/es/reference/why-phonometry/): la filosofía de diseño basada en conformidad 145 + - [Informe de conformidad](/phonometry/es/reference/conformance/): el valor esperado y el calculado de las 371 comprobaciones 135 146 - [Referencia de la API](/phonometry/es/reference/api/): todos los parámetros de cada función 136 147 - [Bibliografía](/phonometry/es/reference/bibliography/): los libros y artículos que sustentan cada guía, cada uno con un enlace verificado
+1 -1
site/src/content/docs/es/guides/junction-transmission.mdx
··· 1 1 --- 2 - title: "Transmisión de onda de flexión en uniones de placas (Cremer / Craik / Hopkins)" 2 + title: "Transmisión de onda de flexión en uniones de placas" 3 3 description: "Los coeficientes de transmisión de onda de flexión independientes de la frecuencia del enfoque ondulatorio para uniones rígidas de placas en X, T, L y en línea (Cremer et al. 1973; Craik 1981/1996; Hopkins 2007, Sección 5.2.1.3): los parámetros de onda chi y psi, los coeficientes de esquina y de tramo recto tau12(theta) y tau13(theta), su media angular en campo difuso, y el factor de pérdidas por acoplamiento SEA y el índice de reducción vibracional Kij derivados." 4 4 references: 5 5 - type: book
+24 -15
site/src/content/docs/es/index.mdx
··· 1 1 --- 2 2 title: phonometry 3 - description: Toolkit de medición acústica para Python que abarca bancos de filtros, ponderación, niveles, psicoacústica, inteligibilidad del habla e intensidad sonora, verificado por conformidad contra normas IEC, ISO, ECMA y DIN. 3 + description: Toolkit de medición acústica para Python que abarca la metrología de niveles sonoros, la psicoacústica, salas y edificación, la vibración, el medio ambiente y el transporte, la acústica submarina, la electroacústica y la simulación de ondas, verificado por conformidad frente a 235 normas IEC, ISO, EN, ANSI, ECMA, DIN, ITU, EBU, SAE, OACI y CEAC. 4 4 template: splash 5 5 hero: 6 - tagline: Medición acústica en Python con análisis en bandas de octava, ponderación A/C/G/Z, Leq/SEL/Lden, sonoridad de Zwicker, STI e intensidad sonora; cada métrica verificada contra su norma. 6 + tagline: Medición acústica en Python, desde la metrología en bandas de octava y la sonoridad de Zwicker hasta el aislamiento en edificación, el EPNL de aeronaves y la propagación submarina. 371 comprobaciones de conformidad frente a 235 normas, y cada resultado genera su figura y, cuando una norma lo define, una ficha PDF normativa. 7 7 actions: 8 8 - text: Empezar 9 9 link: /phonometry/es/getting-started/ ··· 18 18 19 19 <CardGrid> 20 20 <Card title="Verificado por conformidad" icon="approve-check"> 21 - Cada métrica se verifica en CI contra las tablas de tolerancia y vectores de prueba de su propia norma: IEC 61260-1, IEC 61672-1, IEC 61252, IEC 60942, IEC 60268-16, IEC 61043, ISO 532-1, ISO 532-2, ISO 532-3, ISO 226, ISO 1996, ISO 7196, ISO 9614-1/2, ISO 9613-1/2, ISO 9612, ISO 18233, ISO 3382-1/2/3, ISO 3741, ISO 3744, ISO 3746, ISO 354, ISO 10140, ISO 16283-1/2/3, EN 12354-1/2, ISO 12999-1, ISO 717-1/2, ECMA-418-1, ECMA-418-2 y DIN 45692, en total 37 normas. 21 + Cada métrica se verifica en CI frente a las tablas de tolerancia, vectores de prueba y ejemplos resueltos de su propia norma: 371 comprobaciones numéricas en 46 dominios y 235 normas, desde las ponderaciones de IEC 61672-1 y los filtros de IEC 61260-1 hasta la sonoridad ISO 532, los índices globales ISO 717, el EPNL del Anexo 16 de la OACI y EBU R 128, regeneradas en cada pull request y publicadas como informe de conformidad. 22 22 </Card> 23 - <Card title="Sonometría" icon="magnifier"> 24 - Bancos de octava fraccionaria (cinco arquitecturas SOS), ponderación A/C/G/Z, ponderación temporal Fast/Slow/Impulse, Leq/LAeq, percentiles, LCpeak, SEL, dosis de ruido, Lden y espectrogramas de octava. 23 + <Card title="Análisis de señal" icon="magnifier"> 24 + Bancos de octava fraccionaria (cinco arquitecturas SOS), ponderación A/C/G/Z, ponderación temporal Fast/Slow/Impulse, Leq/LAeq, percentiles, LCpeak, SEL, dosis de ruido, Lden y espectrogramas de octava, además de análisis espectral calibrado PSD/CSD, correlación y estimación de retardos, calibración física de SPL con comprobación de estabilidad IEC 60942, incertidumbre GUM y Monte Carlo, procesado por bloques en tiempo real con estado y multicanal vectorizado. 25 25 </Card> 26 - <Card title="Psicoacústica y habla" icon="comment"> 27 - Sonoridad en sonos por tres vías, Zwicker (ISO 532-1, validación completa del Anexo B), Moore-Glasberg estacionaria y variable en el tiempo (ISO 532-2/3) y modelo de Sottek (ECMA-418-2), además de sharpness DIN 45692, tonalidad y aspereza ECMA-418-2, líneas isofónicas, prominencia tonal (TNR/PR) y STI/STIPA según IEC 60268-16 Ed. 5. 26 + <Card title="Audición y percepción" icon="comment"> 27 + Sonoridad en sonos por tres vías (ISO 532-1/2/3 y el modelo de Sottek de ECMA-418-2), sharpness DIN 45692, tonalidad, aspereza y fuerza de fluctuación ECMA-418-2, molestia psicoacústica, líneas isofónicas (ISO 226), prominencia tonal (TNR/PR) y audibilidad, STI/STIPA según IEC 60268-16 Ed. 5 y SII según ANSI S3.5, además de umbrales de audición por edad (ISO 7029), pérdida auditiva inducida por ruido (ISO 1999) y exposición laboral LEX,8h (ISO 9612). 28 + </Card> 29 + <Card title="Salas y edificación" icon="open-book"> 30 + Respuestas al impulso por barrido sinusoidal y MLS (ISO 18233), parámetros de sala EDT/T20/T30/C50/C80/Ts y métricas de oficinas diáfanas (ISO 3382-1/2/3), curvas de criterio de ruido de fondo (ANSI/ASA S12.2), predicción de la reverberación (EN 12354-6), aislamiento en campo y en laboratorio con índices globales (ISO 16283-1/2/3, ISO 10140, ISO 717-1/2), predicción de flancos, fachadas y radiación al exterior (EN 12354-1/2/3/4), incertidumbre de medición (ISO 12999-1) y datos de materiales desde la absorción (ISO 354, ISO 11654) hasta el tubo de impedancia (ISO 10534-2), los modelos de absorbentes porosos y la dispersión y difusión (ISO 17497). 31 + </Card> 32 + <Card title="Vibración y ruido estructural" icon="rocket"> 33 + El vocabulario de FRF de ISO 7626 (receptancia, movilidad, acelerancia), la rigidez de transferencia de aisladores (ISO 10846), la potencia acústica radiada por superficies vibrantes (ISO/TS 7849), la potencia estructural en placa de recepción (EN 15657), la predicción de fuentes instaladas en edificios (EN 12354-5) y la transmisión en uniones, además de la vibración en humanos de cuerpo entero, por choques múltiples y mano-brazo (ISO 2631-1/-5, ISO 5349). 34 + </Card> 35 + <Card title="Medio ambiente y transporte" icon="open-book"> 36 + Absorción atmosférica α(f) (ISO 9613-1), el método general de ISO 9613-2 con desglose por término en bandas de octava, efecto del suelo, barreras y refracción atmosférica, ajustes por ruido impulsivo (NT ACOU 112), niveles de evaluación y Lden (ISO 1996), la cadena de certificación EPNL de aeronaves (Anexo 16 de la OACI, IEC 61265, SAE ARP 5534), los contornos aeroportuarios del Doc 29 de la CEAC sobre la base de datos de flota ANP de la EASA, el método de hemisferios de helicópteros del Doc 32 de la CEAC y la emisión y audibilidad tonal de aerogeneradores según IEC 61400-11. 28 37 </Card> 29 - <Card title="Medición en campo" icon="rocket"> 30 - Intensidad sonora p-p con los indicadores de campo de ISO 9614-1, SPL calibrado con comprobación de estabilidad IEC 60942, procesado por bloques en tiempo real y multicanal vectorizado. 38 + <Card title="Acústica submarina" icon="magnifier"> 39 + Niveles re 1 µPa (ISO 18405), ruido radiado por buques y nivel de fuente monopolar equivalente (ISO 17208-1/2), exposición por hincado de pilotes (ISO 18406), velocidad del sonido en agua de mar, reflexión en el lecho marino, ruido ambiente de Wenz y JOMOPANS-ECHO, las ecuaciones del sonar pasivo y activo, y pérdidas de transmisión desde las formas cerradas de divergencia más absorción hasta los métodos numéricos de modos normales, trazado de rayos y ecuación parabólica. 31 40 </Card> 32 - <Card title="Acústica de salas y edificación" icon="open-book"> 33 - Respuestas al impulso por barrido sinusoidal y MLS (ISO 18233), reverberación y parámetros de sala EDT/T20/T30/C50/C80/Ts (ISO 3382-1/2), métricas de habla en oficinas diáfanas (ISO 3382-3), aislamiento en campo a ruido aéreo, a impactos y de fachadas con R′w/DnT,w/L′nT,w/D2m,nT,w y C/Ctr/CI (ISO 16283-1/2/3, ISO 717-1/2), caracterización en laboratorio (ISO 10140), predicción de la transmisión por flancos (EN 12354-1/2), incertidumbre de medición (ISO 12999-1) y absorción sonora en cámara reverberante (ISO 354). 41 + <Card title="Fuentes y dispositivos" icon="rocket"> 42 + Potencia acústica por cinco vías normalizadas (ISO 3744/3746, ISO 3741, ISO 9614-2, ISO 3745, ISO 9614-3), intensidad sonora p-p (IEC 61043) con los indicadores de campo de ISO 9614-1, declaraciones de emisión de ruido ISO 4871, distorsión y respuesta en frecuencia de equipos de audio (IEC 60268-3), THD(f) por barrido sinusoidal (Farina, Novak), características nominales de altavoces y micrófonos (IEC 60268-5/-4), silenciadores, encapsulamientos y ruido de climatización, y sonoridad de programa con pico verdadero (ITU-R BS.1770-5, EBU R 128). 34 43 </Card> 35 - <Card title="Potencia acústica" icon="rocket"> 36 - Nivel de emisión LW independiente del dispositivo por cinco vías: presión sonora sobre superficie envolvente (ISO 3744/3746), el método de precisión en sala reverberante con las correcciones de Waterhouse y C1/C2 (ISO 3741), el barrido de intensidad con indicadores de campo y grado alcanzado (ISO 9614-2), el método de precisión en sala anecoica (ISO 3745) y el barrido de intensidad de precisión (ISO 9614-3). 44 + <Card title="Simulación de ondas" icon="comment"> 45 + Un solver acústico FDTD 2D determinista sobre una malla escalonada de presión y velocidad, con fuentes continuas y de pulso, sondas de presión, obstáculos rasterizados y contornos rígidos, de impedancia o absorbentes por lado, validado frente a oráculos analíticos y utilizable como motor de contraste de los modelos de forma cerrada. 37 46 </Card> 38 - <Card title="Propagación en exteriores y exposición" icon="open-book"> 39 - Absorción atmosférica α(f) (ISO 9613-1) y el método general de ISO 9613-2 (divergencia geométrica, absorción atmosférica, efecto del suelo y apantallamiento por barreras con desglose por término en bandas de octava), además de la exposición diaria al ruido laboral LEX,8h por las estrategias de tareas, de puestos de trabajo y de jornada completa con la incertidumbre del Anexo C (ISO 9612). 47 + <Card title="Resultados listos para entregar" icon="approve-check"> 48 + Cada análisis devuelve un dataclass tipado e inmutable cuyo <code>.plot()</code> de una línea genera la figura canónica en inglés o español (<code>language="en"|"es"</code>), y cuando una norma define un formato de informe, un método <code>.report()</code> genera la ficha PDF normativa: ISO 717, ISO 11654, ISO 532-1, EBU R 128, EPNL de la OACI, IEC 61260-1, ISO 4871 e IEC 60268-5/-4. La documentación es íntegramente bilingüe. 40 49 </Card> 41 50 </CardGrid>
+11 -5
site/src/content/docs/es/reference/why-phonometry.mdx
··· 1 1 --- 2 2 title: "Por qué phonometry" 3 - description: "Verificación de conformidad con IEC 61672-1 y comparación con otras librerías." 3 + description: "La filosofía de diseño basada en conformidad: un caso de estudio de ponderación temporal IEC 61672-1, 371 comprobaciones frente a 235 normas y comparación con otras librerías." 4 4 --- 5 5 6 6 import ThemeImage from '../../../../components/ThemeImage.astro'; ··· 94 94 El caso de las ráfagas de tono de arriba no es una comprobación aislada. Para 95 95 cada norma que la librería implementa, los valores de referencia y los límites 96 96 de aceptación se transcriben del texto oficial a la batería de tests, de modo 97 - que cualquier regresión hace fallar la CI: 97 + que cualquier regresión hace fallar la CI. Una muestra del núcleo de 98 + metrología: 98 99 99 100 | Norma | Qué se verifica | Archivo de test | 100 101 | :--- | :--- | :--- | ··· 108 109 | ISO 1996-1:2016 | `lden()`, `ldn()` y `composite_rating_level()` frente a valores de las fórmulas calculados a mano | `tests/test_environmental.py` | 109 110 | IEC 60942:2017 Tabla 2 | Límites de estabilidad a corto plazo del calibrador (dependientes de la frecuencia, clase 1) en `sensitivity()` | `tests/test_calibration_validation.py` | 110 111 111 - El informe numérico completo (el valor esperado y el valor que calcula la 112 - librería para cada comprobación, regenerado en cada pull request) está 113 - publicado como [informe de conformidad](/phonometry/es/reference/conformance/). 112 + La misma disciplina se aplica mucho más allá del núcleo de metrología: hoy la 113 + batería ejecuta 371 comprobaciones numéricas de conformidad en 46 dominios y 114 + 235 normas, que abarcan la psicoacústica, la acústica de salas y edificación, 115 + la vibración, el ruido ambiental, aeronáutico y submarino, la electroacústica 116 + y la sonoridad de radiodifusión. El informe numérico completo (el valor 117 + esperado y el valor que calcula la librería para cada comprobación, regenerado 118 + en cada pull request) está publicado como 119 + [informe de conformidad](/phonometry/es/reference/conformance/). 114 120 115 121 Más allá de la dosis de ruido al estilo IEC 61252 (`sound_exposure()`, 116 122 `lex_8h()`), la misma mentalidad de "primero la norma" se refleja en la parte
+14 -3
site/src/content/docs/getting-started.mdx
··· 16 16 Optional extras: 17 17 18 18 ```bash 19 - pip install phonometry[plot] # matplotlib, for filter response plots and result .plot() methods 20 - pip install phonometry[perf] # numba, faster 'impulse' time weighting 21 - pip install phonometry[full] # both 19 + pip install phonometry[plot] # matplotlib, for filter response plots and result .plot() methods 20 + pip install phonometry[perf] # numba, faster 'impulse' time weighting 21 + pip install phonometry[report] # reportlab + svglib, so result .report() methods render normative PDF fiches 22 + pip install phonometry[full] # all of the above 22 23 ``` 23 24 24 25 **Option 2: Cloning and Installing** ··· 130 131 131 132 ## Where to go next 132 133 134 + The octave analysis above uses the `metrology` core, one of fifteen domain 135 + namespaces; the sidebar sections walk through the rest, from psychoacoustics 136 + and room, building and vibration acoustics to environmental, aircraft and 137 + underwater noise, electroacoustics and FDTD wave simulation. Every result 138 + object exposes a one-line `.plot(language="en"|"es")` figure and, where a 139 + standard defines a reporting format, a `.report()` method that renders the 140 + normative PDF fiche. 141 + 133 142 - [Filter Banks](/phonometry/guides/filter-banks/): choose an architecture and inspect responses 134 143 - [Calibration and dBFS](/phonometry/guides/calibration/): get real-world SPL values 144 + - [Why phonometry](/phonometry/reference/why-phonometry/): the conformance-first design philosophy 145 + - [Conformance report](/phonometry/reference/conformance/): the expected and computed value of all 371 checks 135 146 - [API Reference](/phonometry/reference/api/): every parameter of every function 136 147 - [Bibliography](/phonometry/reference/bibliography/): the books and papers behind every guide, each with a verified link
+1 -1
site/src/content/docs/guides/junction-transmission.mdx
··· 1 1 --- 2 - title: "Bending-wave transmission at plate junctions (Cremer / Craik / Hopkins)" 2 + title: "Bending-wave transmission at plate junctions" 3 3 description: "The wave-approach, frequency-independent bending-wave transmission coefficients for rigid X, T, L and in-line plate junctions (Cremer et al. 1973; Craik 1981/1996; Hopkins 2007, Section 5.2.1.3): the wave parameters chi and psi, the corner and straight-section coefficients tau12(theta) and tau13(theta), their diffuse-field angular average, and the derived SEA coupling loss factor and vibration reduction index Kij." 4 4 references: 5 5 - type: book
+24 -15
site/src/content/docs/index.mdx
··· 1 1 --- 2 2 title: phonometry 3 - description: Acoustic measurement toolkit for Python covering filter banks, weighting, levels, psychoacoustics, speech intelligibility and sound intensity, conformance-tested against IEC, ISO, ECMA and DIN standards. 3 + description: Acoustic measurement toolkit for Python covering sound level metrology, psychoacoustics, rooms and buildings, vibration, environment and transport, underwater acoustics, electroacoustics and wave simulation, conformance-tested against 235 IEC, ISO, EN, ANSI, ECMA, DIN, ITU, EBU, SAE, ICAO and ECAC standards. 4 4 template: splash 5 5 hero: 6 - tagline: Acoustic measurement in Python covering octave-band analysis, A/C/G/Z weighting, Leq/SEL/Lden, Zwicker loudness, STI and sound intensity, every metric conformance-tested against its standard. 6 + tagline: Acoustic measurement in Python, from octave-band metrology and Zwicker loudness to building insulation, aircraft EPNL and underwater propagation. 371 conformance checks against 235 standards, and every result renders its figure and, where a standard defines one, a normative PDF fiche. 7 7 actions: 8 8 - text: Get started 9 9 link: /phonometry/getting-started/ ··· 18 18 19 19 <CardGrid> 20 20 <Card title="Conformance-tested" icon="approve-check"> 21 - Every metric is verified in CI against its standard's own tolerance tables and test vectors: IEC 61260-1, IEC 61672-1, IEC 61252, IEC 60942, IEC 60268-16, IEC 61043, ISO 532-1, ISO 532-2, ISO 532-3, ISO 226, ISO 1996, ISO 7196, ISO 9614-1/2, ISO 9613-1/2, ISO 9612, ISO 18233, ISO 3382-1/2/3, ISO 3741, ISO 3744, ISO 3746, ISO 354, ISO 10140, ISO 16283-1/2/3, EN 12354-1/2, ISO 12999-1, ISO 717-1/2, ECMA-418-1, ECMA-418-2 and DIN 45692, for 37 standards in total. 21 + Every metric is verified in CI against its standard's own tolerance tables, test vectors and worked examples: 371 numerical checks across 46 domains and 235 standards, from IEC 61672-1 weightings and IEC 61260-1 filters to ISO 532 loudness, ISO 717 ratings, ICAO Annex 16 EPNL and EBU R 128, regenerated on every pull request and published as the conformance report. 22 22 </Card> 23 - <Card title="Sound level metering" icon="magnifier"> 24 - Fractional octave banks (five SOS architectures), A/C/G/Z weighting, Fast/Slow/Impulse ballistics, Leq/LAeq, percentiles, LCpeak, SEL, noise dose, Lden and octave spectrograms. 23 + <Card title="Core signal analysis" icon="magnifier"> 24 + Fractional octave banks (five SOS architectures), A/C/G/Z weighting, Fast/Slow/Impulse ballistics, Leq/LAeq, percentiles, LCpeak, SEL, noise dose, Lden and octave spectrograms, plus calibrated PSD/CSD spectral analysis, correlation and time-delay estimation, physical SPL calibration with IEC 60942 stability checks, GUM and Monte Carlo uncertainty, stateful real-time block processing and vectorized multichannel. 25 25 </Card> 26 - <Card title="Psychoacoustics & speech" icon="comment"> 27 - Loudness in sones three ways, Zwicker (ISO 532-1, full Annex B validation), Moore-Glasberg stationary and time-varying (ISO 532-2/3) and Sottek Hearing Model (ECMA-418-2), plus DIN 45692 sharpness, ECMA-418-2 tonality and roughness, equal-loudness contours, tone prominence (TNR/PR) and STI/STIPA per IEC 60268-16 Ed. 5. 26 + <Card title="Hearing and perception" icon="comment"> 27 + Loudness in sones three ways (ISO 532-1/2/3 and the Sottek Hearing Model of ECMA-418-2), DIN 45692 sharpness, ECMA-418-2 tonality, roughness and fluctuation strength, psychoacoustic annoyance, equal-loudness contours (ISO 226), tone prominence (TNR/PR) and audibility, STI/STIPA per IEC 60268-16 Ed. 5 and SII per ANSI S3.5, plus hearing thresholds by age (ISO 7029), noise-induced hearing loss (ISO 1999) and occupational exposure LEX,8h (ISO 9612). 28 + </Card> 29 + <Card title="Rooms and buildings" icon="open-book"> 30 + Swept-sine and MLS impulse responses (ISO 18233), room parameters EDT/T20/T30/C50/C80/Ts and open-plan metrics (ISO 3382-1/2/3), room-noise criterion curves (ANSI/ASA S12.2), reverberation prediction (EN 12354-6), field and laboratory insulation with weighted ratings (ISO 16283-1/2/3, ISO 10140, ISO 717-1/2), flanking, façade and outdoor-radiation prediction (EN 12354-1/2/3/4), measurement uncertainty (ISO 12999-1) and material data from absorption (ISO 354, ISO 11654) to impedance-tube measurement (ISO 10534-2), porous-absorber models and scattering/diffusion (ISO 17497). 31 + </Card> 32 + <Card title="Vibration and structure-borne sound" icon="rocket"> 33 + The FRF vocabulary of ISO 7626 (receptance, mobility, accelerance), isolator transfer stiffness (ISO 10846), sound power radiated by vibrating surfaces (ISO/TS 7849), reception-plate structure-borne power (EN 15657), installed-source prediction in buildings (EN 12354-5) and junction transmission, plus whole-body, multiple-shock and hand-arm human vibration (ISO 2631-1/-5, ISO 5349). 34 + </Card> 35 + <Card title="Environment and transport" icon="open-book"> 36 + Atmospheric absorption α(f) (ISO 9613-1), the ISO 9613-2 general method with a per-term octave-band breakdown, ground effect, barriers and atmospheric refraction, impulsive-sound adjustments (NT ACOU 112), rating levels and Lden (ISO 1996), the aircraft EPNL certification chain (ICAO Annex 16, IEC 61265, SAE ARP 5534), ECAC Doc 29 airport contours on the EASA ANP fleet database, the ECAC Doc 32 rotorcraft hemisphere method and IEC 61400-11 wind-turbine emission and tonal audibility. 28 37 </Card> 29 - <Card title="Field measurement" icon="rocket"> 30 - p-p sound intensity with ISO 9614-1 field indicators, calibrated SPL with IEC 60942 stability checks, stateful real-time block processing and vectorized multichannel. 38 + <Card title="Underwater acoustics" icon="magnifier"> 39 + Levels re 1 µPa (ISO 18405), ship radiated noise and equivalent monopole source level (ISO 17208-1/2), pile-driving exposure (ISO 18406), sound speed in sea water, seabed reflection, Wenz and JOMOPANS-ECHO ambient noise, the passive and active sonar equations, and transmission loss from spreading-plus-absorption closed forms to normal-mode, ray-tracing and parabolic-equation solvers. 31 40 </Card> 32 - <Card title="Room & building acoustics" icon="open-book"> 33 - Swept-sine and MLS impulse responses (ISO 18233), reverberation and room parameters EDT/T20/T30/C50/C80/Ts (ISO 3382-1/2), open-plan speech metrics (ISO 3382-3), field airborne, impact and façade insulation with R′w/DnT,w/L′nT,w/D2m,nT,w and C/Ctr/CI (ISO 16283-1/2/3, ISO 717-1/2), laboratory characterisation (ISO 10140), flanking-transmission prediction (EN 12354-1/2), measurement uncertainty (ISO 12999-1) and sound absorption in a reverberation room (ISO 354). 41 + <Card title="Sources and devices" icon="rocket"> 42 + Sound power by five standardised routes (ISO 3744/3746, ISO 3741, ISO 9614-2, ISO 3745, ISO 9614-3), p-p sound intensity (IEC 61043) with ISO 9614-1 field indicators, ISO 4871 noise-emission declarations, audio-equipment distortion and frequency response (IEC 60268-3), swept-sine THD(f) (Farina, Novak), loudspeaker and microphone rated characteristics (IEC 60268-5/-4), silencers, enclosures and HVAC noise, and programme loudness with true peak (ITU-R BS.1770-5, EBU R 128). 34 43 </Card> 35 - <Card title="Sound power" icon="rocket"> 36 - Device-independent emission level LW by five routes: enveloping-surface sound pressure (ISO 3744/3746), the reverberation-room precision method with Waterhouse and C1/C2 corrections (ISO 3741), intensity scanning with field indicators and achieved grade (ISO 9614-2), the precision anechoic-room method (ISO 3745) and precision intensity scanning (ISO 9614-3). 44 + <Card title="Wave simulation" icon="comment"> 45 + A deterministic 2D acoustic FDTD solver on a staggered pressure-velocity grid, with CW and pulse sources, pressure probes, rasterised obstacles and per-side rigid, impedance or absorbing boundaries, validated against analytic oracles and usable as a cross-check engine for the closed-form models. 37 46 </Card> 38 - <Card title="Outdoor propagation & exposure" icon="open-book"> 39 - Atmospheric absorption α(f) (ISO 9613-1) and the ISO 9613-2 general method (geometrical divergence, atmospheric absorption, ground effect and barrier screening with a per-term octave-band breakdown) plus daily occupational noise exposure LEX,8h by task, job and full-day strategies with Annex C uncertainty (ISO 9612). 47 + <Card title="Results you can hand over" icon="approve-check"> 48 + Every analysis returns a typed, frozen dataclass whose one-line <code>.plot()</code> renders the canonical figure in English or Spanish (<code>language="en"|"es"</code>), and where a standard defines a reporting format a <code>.report()</code> method renders the normative PDF fiche: ISO 717, ISO 11654, ISO 532-1, EBU R 128, ICAO EPNL, IEC 61260-1, ISO 4871 and IEC 60268-5/-4. The documentation is fully bilingual. 40 49 </Card> 41 50 </CardGrid>
+10 -5
site/src/content/docs/reference/why-phonometry.mdx
··· 1 1 --- 2 2 title: "Why phonometry" 3 - description: "IEC 61672-1 compliance verification and comparison with other libraries." 3 + description: "The conformance-first design philosophy: an IEC 61672-1 time-weighting case study, 371 checks against 235 standards, and comparison with other libraries." 4 4 --- 5 5 6 6 import ThemeImage from '../../../components/ThemeImage.astro'; ··· 90 90 91 91 The tone-burst case above is not an isolated check. For each standard the 92 92 library implements, the reference values and acceptance limits are transcribed 93 - from the official text into the test suite, so any regression fails CI: 93 + from the official text into the test suite, so any regression fails CI. A 94 + sample from the metrology core: 94 95 95 96 | Standard | What is verified | Test file | 96 97 | :--- | :--- | :--- | ··· 104 105 | ISO 1996-1:2016 | `lden()`, `ldn()` and `composite_rating_level()` against hand-computed formula values | `tests/test_environmental.py` | 105 106 | IEC 60942:2017 Table 2 | Calibrator short-term stability limits (frequency-dependent, class 1) in `sensitivity()` | `tests/test_calibration_validation.py` | 106 107 107 - The full numerical report (the expected value and the value the library 108 - computes for every check, regenerated on every pull request) is published 109 - as [the conformance report](/phonometry/reference/conformance/). 108 + The same discipline applies far beyond the metrology core: today the suite 109 + runs 371 numerical conformance checks across 46 domains and 235 standards, 110 + covering psychoacoustics, room and building acoustics, vibration, 111 + environmental, aircraft and underwater noise, electroacoustics and broadcast 112 + loudness. The full numerical report (the expected value and the value the 113 + library computes for every check, regenerated on every pull request) is 114 + published as [the conformance report](/phonometry/reference/conformance/). 110 115 111 116 Beyond IEC 61252-style noise dose (`sound_exposure()`, `lex_8h()`), the same 112 117 standards-first mindset shows up in the numerics: filter banks place their