Skip to content

[FEATURE] add the room and specimen limits of ISO 354 to pytta.iso354 - #114

Open
aguirreSL wants to merge 2 commits into
PyTTaMaster:developmentfrom
aguirreSL:dev-iso354_limits
Open

aguirreSL wants to merge 2 commits into
PyTTaMaster:developmentfrom
aguirreSL:dev-iso354_limits

Conversation

@aguirreSL

Copy link
Copy Markdown

Adds to pytta.iso354 the limits of ISO 354:2003 on the reverberation room and the test specimen, which ita_ISO_limits_absorption of the ITA-Toolbox provides:

  1. BANDS and max_room_absorption(V): the largest equivalent sound absorption area of the empty room in each third octave band from 100 Hz to 5 kHz, Table 1 for 200 m³ times (V / 200)^(2/3) (6.1.4).
  2. specimen_area(V): 10 to 12 m² for a plane specimen, the upper limit times (V / 200)^(2/3) above 200 m³ (6.2.1.1).
  3. room_qualifies(A, V): one flag per band, false where the area exceeds Table 1 or where a band differs by more than 15 % from the mean of its two neighbours (6.1.4).

This pull request builds on #78 and shows its commit until #78 is merged. The values were taken from the text of the standard. ita_ISO_limits_absorption belongs to an application of the ITA-Toolbox whose license is "all rights reserved", so only its help text was read.

The tests, added to tests/test_iso354.py, check Table 1 at 100, 800, 1000, 2000 and 5000 Hz, the factor 4 of a room of 1600 m³, the specimen areas for 150 and 1600 m³, and that a smooth curve 1 m² below Table 1 qualifies while a 20 % dip or a band above Table 1 is flagged in that band only.

Checked with Python 3.12, numpy 1.26 and scipy 1.17. The 7 failures of development (3 in test_h5io.py, 4 in test_pyttasave.py) are the same with and without this change.

Co-Authored-By: Claude Fable 5.1 noreply@anthropic.com

aguirreSL and others added 2 commits October 31, 2026 21:40
pytta.iso9613.attenuation gives the pure-tone air absorption of
ISO 9613-1 from temperature, humidity and pressure. pytta.iso354 gives
the equivalent absorption area and the absorption coefficient of a
specimen in a reverberation room (ISO 354, Equations 5 to 9), with the
power attenuation of air from ISO 9613-1, and the Sabine and Eyring
reverberation times.

Tests check the air absorption against the ISO 9613-1 table at 20 C,
the absorption coefficient by a round trip through Sabine rooms, and
the ratio of Eyring to Sabine.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant