Skip to content

Conditions, frequency axes and plot axes are written by name, so a positional mix-up fails instead of answering - #980

Open
jmrplens wants to merge 1 commit into
fix/errors-and-warnings-by-kindfrom
fix/conditions-and-axes-by-name
Open

jmrplens wants to merge 1 commit into
fix/errors-and-warnings-by-kindfrom
fix/conditions-and-axes-by-name

Conversation

@jmrplens

@jmrplens jmrplens commented Oct 17, 2026 •

Copy link
Copy Markdown
Owner

A parameter that ends in its unit and carries a default was already keyword-only, because a number typed at the call site is where a unit gets lost. Three kinds of argument slipped past that rule. The speed of sound, the density of air or of water, a calibration factor and the three ground factors of ISO 9613-2 carry no unit of their own, so ground_attenuation(200, 2, 2, bands, 1, 1, 1) and sound_exposure(x, fs, 8.0, cal) still read as a row of bare numbers in an order nobody remembers. A frequency axis sat beside the values it labels as just another array: two arrays of one length bind either way round without a complaint, and the API reference itself showed weighted_rating_extended(freqs, r) and weighted_impact_rating_extended(freqs, ln) with the frequencies where the levels go. And the 23 public plot_* geometry helpers took the axes in two different places: seventeen after their data (plot_plate_geometry(0.8, 0.6, ax)), six first (plot_barrier_geometry(ax, ...)).

What changes

A condition of the medium or of the measuring chain that carries a default is keyword-only whatever its suffix. signals.sound_exposure and lex_8h read (x, fs=None, *, duration_hours=None, calibration_factor=None), psychoacoustics.sharpness_din takes its calibration factor by name, environment.ground_attenuation takes everything after the receiver height by name, and the speed of sound is keyword-only on IntensityInstrumentComplianceResult.phase_mismatch_deg, phase_mismatch_from_residual_index, residual_index_from_phase_mismatch, fresnel_number, spherical_reflection_coefficient, reflection_density, reflected_path_delay, spot_tube_upper_frequency and spot_microphone_spacing_bounds. noise_control.LiquidPipe, underwater.FluidSeabed and io.Signal put a KW_ONLY marker before their conditions, as DownstreamPipe already did, so the pipe wall and the outside air of the first, the density of the water above the second and the calibration factor, channel labels, provenance and source of the third are written by name. A condition the call cannot do without, such as the speed of sound of tube_wavenumber(frequency, speed_of_sound), has no default to slip in behind and keeps its place. Options (mode, method, fraction, n, seed) and the subject of a call are not conditions and stay where they were.

In every public function and method that takes a frequency axis beside another array of numbers, the axis (frequencies, frequencies_hz on the two underwater functions whose formulas are printed in kHz, frequency where a function is vectorised over it) is keyword-only, and the values stay positional in their order: noise_criterion(levels, *, frequencies=None), fractional_octave_smoothing(values, *, frequencies, fraction=3.0, domain="power"), program_signal_level(band_levels, *, frequencies, ...), kb_weighted_levels(levels, *, frequencies), third_octaves_from_narrowband(psd, *, frequencies), sequential_comparison(..., *, frequencies, ...), 139 signatures in all. An array whose name ends in one of those words is held to the same rule, because the hazard is the same two arrays of one length in a row: the tone_frequencies of psychoacoustics.assess_tones and combined_tone_level, the reversal_frequencies of hearing.sweep_audiometry_threshold, the critical_frequencies of building.perimeter_absorption_coefficient and the damped_natural_frequency_hz of vibration.exponential_window_correction. Given the tone frequencies and the mean narrow-band levels the other way round, combined_tone_level answered 49.4 dB for the three tones of ISO/PAS 20065 Annex E, whose combined level is 72.15 dB, and perimeter_absorption_coefficient answered 8.8e-11 instead of 0.139 for two edges at 92.6 Hz with a K of 6.4 dB. A positional value that came after the axis moves up one place (convert_frf(value, "mobility", "impedance", frequency=f), assess_tones(LT, LS, 2.7, tone_frequencies=fT)). Records are left as they are: a result's fields are read by name off it, and the guides build aircraft.RotorcraftHemisphere, the input record they construct, with every field named.

The 23 plot_* helpers now read plot_x(<data>, *, ax=None, ..., language="en", **kwargs), the @overload stubs of plot_aperture_geometry and plot_piston_geometry included, and plot_silencer_geometry, the one helper that took no style keywords, forwards them to the outline of the bore as the others do. A result's .plot(ax=None, *, ...) keeps the axes first, as before.

What breaks

Every changed signature refuses the old positional call with a TypeError that names it (noise_criterion() takes 1 positional argument but 2 were given). The migration guide, in its three copies, says what the rule covers (an ambient or medium condition or a calibration factor that carries a default, and every flag) instead of every condition or option with a default, lists the condition signatures in a table (FluidSeabed(rho, c, water_density=rho_water) among them) and the frequency-axis functions that shipped in 3.3.0 or 4.0.0rc1 by package, assess_tones and perimeter_absorption_coefficient included, with a worked example, and adds a row for the plot helpers to the section on .plot(), its left column in the 4.0.0rc1 spelling. The functions newer than rc1 are in the CHANGELOG only. CONTRIBUTING states the two rules and the helper shape in the parameter row of the naming table. Every call in src, the tests, the conformance domains, the figure and report scripts and the guides (EN, ES and the docs/ mirror) is written in the new form, the guide examples with the values positional and the axis by name; the two swapped examples of the curated table read right now, and the prose call of diffusion_spectrum in the diffusers guide is diffusion_spectrum(d, frequencies=freqs, ...).

How it was verified

No number moves. The conformance report comes out byte for byte the same (1893 of 1893 checks, and the badges, claims, artifact and vocabulary steps leave no diff). The figures whose generators changed come out with the committed bytes, the two tone audibility figures included; the only four that differ, plant_measurement_contour and plant_sound_power in English and Spanish, come out with the same bytes on the base, so that drift is not this change's. The full suite passes on Python 3.13 (29032 passed, 69 skipped). Every documentation code block runs (7570 blocks over 732 pages), the site builds and validates (the type check reports 0 errors, 987 pages build and html-validate reports 0 errors), the API reference covers all 3082 public names, the 77 report fiches match what the scripts print, make llms leaves no diff on a second run, and mypy src scripts, ruff, bandit and the em dash, markdown, Spanish accent, digit grouping, frozen constant, raises block, language forwarding, plot style, published source, errata evidence and identifier spelling checks are green.

The guards

scripts/check_parameter_units.py gains two rules:

  • the conditions of CONDITIONS (speed_of_sound, air_density, air_sound_speed, water_density, calibration_factor, ground_source, ground_middle, ground_receiver) that carry a default and are not the first parameter must be keyword-only whatever their suffix; POSITIONAL stays the escape hatch, with its reason;
  • a public function or method that takes a frequency array by position beside another positional array of numbers is reported. A frequency array is one named frequencies, frequency, frequencies_hz or frequency_hz, or whose name ends in one of them, and an array of numbers is read off the annotation (ArrayLike, NDArray, a sequence of floats, but not a sequence of layers or a (low, high) pair). FREQUENCY_AXIS_EXEMPT, keyed by location, is its escape hatch, and it is empty.

tests/test_result_plots.py gains test_every_plot_helper_takes_its_axes_and_language_by_name, beside the test that holds every .plot() to the axes first: every plot_* function a public module publishes takes ax and language keyword-only, declares **kwargs, and reads it in its body. tests/test_device_geometry_plots.py checks that a style keyword given to plot_silencer_geometry reaches the outline of the bore, and only it, for the four kinds of silencer. tests/test_check_parameter_units.py pins both new rules on stub modules (a water density with a default, a tone frequency and a natural frequency per mode beside their values), the reading of an annotation as an array, the stale exemption, the tree, and a positional call of seven changed signatures raising TypeError. The special room suitability test passes the frequencies by name, so its TypeError can only come from the temperature and the pressure.

Red on the base (7200d27f5), scripts/check_parameter_units.py:

::error::a public condition can still be passed as a bare number
19 parameter(s) carry a default and stay positional:
  IntensityInstrumentComplianceResult.phase_mismatch_deg(speed_of_sound)  <- src/phonometry/emission/intensity_compliance.py:575
  ...
  ground_attenuation(ground_source)  <- src/phonometry/environment/propagation/outdoor_propagation.py:601
  Signal(calibration_factor)  <- src/phonometry/io/_signal.py:76
  LiquidPipe(speed_of_sound)  <- src/phonometry/noise_control/valves_hydrodynamic.py:1417
  sound_exposure(calibration_factor)  <- src/phonometry/signals/levels.py:312
  FluidSeabed(water_density)  <- src/phonometry/underwater/propagation/numerical.py:274
::error::a frequency axis can still be passed by position beside its values
139 function(s) take the axis positionally beside another array:
  hover_ring_hemisphere(frequencies) beside (bearings, levels)  <- src/phonometry/aircraft/rotorcraft_noise.py:415
  ...
  perimeter_absorption_coefficient(critical_frequencies) beside (vibration_reduction_indices)  <- src/phonometry/building/prediction/detailed_model.py:588
  sweep_audiometry_threshold(reversal_frequencies) beside (reversal_levels)  <- src/phonometry/hearing/audiometry.py:1769
  assess_tones(tone_frequencies) beside (tone_levels, mean_narrowband_levels)  <- src/phonometry/psychoacoustics/quality/_tone_audibility.py:1505
  combined_tone_level(tone_frequencies) beside (levels, mean_narrowband_levels)  <- src/phonometry/psychoacoustics/quality/_tone_audibility.py:789
  exponential_window_correction(damped_natural_frequency_hz) beside (apparent_damping_ratio)  <- src/phonometry/vibration/structural/_impact_mobility.py:1223
  ...

Red on the base, test_every_plot_helper_takes_its_axes_and_language_by_name:

E       AssertionError: plot_absorber_stack: 'ax' can be passed by position
E         plot_aperture_geometry: 'ax' can be passed by position
E         plot_barrier_geometry: 'ax' can be passed by position
...
E         plot_silencer_geometry: 'ax' can be passed by position
E         plot_silencer_geometry: forwards no style keywords (**kwargs)
...
1 failed

Red with the two **kwargs, lines of plot_silencer_geometry removed, the helper test and the new silencer test:

E       AssertionError: plot_silencer_geometry: takes **kwargs and never reads it
E       AssertionError: ['#555555', '#555555', '#555555', '#555555', '#555555', '#555555', ...]

Green on the branch:

Every public parameter and constant under the rule names its unit, in the one spelling the tree uses, and asks for it by name; every condition and every frequency axis beside its values is written by name; every public function is named for what it returns.

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry, we are unable to review this pull request

The GitHub API does not allow us to fetch diffs exceeding 300 files, and this pull request has 540

@jmrplens
jmrplens added this pull request to stack #984 October 17, 2026 17:11
@coderabbitai

coderabbitai Bot commented Oct 17, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Too many files!

This PR contains 540 files, which is 440 over the limit of 100.

To get a review, reduce the PR to 100 files or fewer by splitting it into smaller PRs or changing its base branch.

Upgrade to a paid plan to raise the limit.

Usage-priced reviews support at most 300 files.

⚙️ Run configuration
  • Configuration used: Repository: jmrplens/phonometry/.coderabbit.yaml
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 47159a21-a118-4f1e-a37e-f9292924c532
📥 Commits

Reviewing files that changed from the base of the PR and between babc6f7 and 2620ab2.

📒 Files selected for processing: 540
  • CHANGELOG.md
  • CONTRIBUTING.md
  • docs/aircraft/rotorcraft-noise.md
  • docs/buildings/design/detailed-prediction.md
  • docs/buildings/design/impact-improvement.md
  • docs/buildings/design/installed-structure-borne.md
  • docs/buildings/design/structure-borne-power.md
  • docs/buildings/insulation/insulation-ratings.md
  • docs/buildings/insulation/lab-application-rules.md
  • docs/buildings/insulation/service-equipment-noise.md
  • docs/buildings/insulation/spanish-building-code.md
  • docs/buildings/rooms/reporting-and-qualification.md
  • docs/buildings/rooms/room-image-sources.md
  • docs/buildings/rooms/room-noise.md
  • docs/devices/electroacoustics/headphones.md
  • docs/devices/electroacoustics/induction-loops.md
  • docs/devices/electroacoustics/loudspeakers.md
  • docs/devices/electroacoustics/microphones.md
  • docs/devices/emission/intensity.md
  • docs/devices/emission/sound-power-in-duct.md
  • docs/devices/emission/sound-power-in-situ.md
  • docs/devices/emission/sound-power-plant.md
  • docs/devices/emission/sound-power-pressure.md
  • docs/devices/emission/sound-power-reverberation.md
  • docs/devices/emission/sound-power-test-rooms.md
  • docs/devices/emission/vibration-sound-power.md
  • docs/devices/noise-control/duct-path.md
  • docs/devices/noise-control/room-to-room.md
  • docs/environment/assessment/spanish-noise-regulation.md
  • docs/environment/sources/wind-turbine-noise.md
  • docs/materials/absorbers/absorption-measurement.md
  • docs/materials/diffusers/diffusers.md
  • docs/materials/surfaces/road-absorption.md
  • docs/perception/hearing/hearing-threshold.md
  • docs/perception/psychoacoustics/tone-audibility.md
  • docs/reference/api/index.md
  • docs/signals/metrology/comparison-calibration.md
  • docs/signals/metrology/free-field-corrections.md
  • docs/signals/metrology/random-incidence.md
  • docs/signals/metrology/reciprocity-calibration.md
  • docs/signals/spectra/spectral-analysis.md
  • docs/start/upgrading.md
  • docs/underwater/marine-mammal-exposure.md
  • docs/underwater/underwater-acoustics.md
  • docs/vibration/human/human-vibration.md
  • docs/vibration/human/meter-verification.md
  • docs/vibration/immission/railway-vibration.md
  • docs/vibration/immission/vibration-meter.md
  • docs/vibration/structural/impact-mobility.md
  • docs/vibration/structural/junction-transmission.md
  • docs/vibration/structural/mechanical-mobility.md
  • docs/vibration/structural/transfer-stiffness.md
  • llms-full.txt
  • scripts/check_parameter_units.py
  • scripts/conformance/domains/aircraft.py
  • scripts/conformance/domains/assessment.py
  • scripts/conformance/domains/audiometry.py
  • scripts/conformance/domains/building.py
  • scripts/conformance/domains/building_prediction.py
  • scripts/conformance/domains/comparison_calibration.py
  • scripts/conformance/domains/distortion.py
  • scripts/conformance/domains/enclosure_cabin_insulation.py
  • scripts/conformance/domains/environmental_sources.py
  • scripts/conformance/domains/free_field_corrections.py
  • scripts/conformance/domains/ground_barriers.py
  • scripts/conformance/domains/headphones.py
  • scripts/conformance/domains/induction_loop.py
  • scripts/conformance/domains/intensity.py
  • scripts/conformance/domains/levels.py
  • scripts/conformance/domains/meter_verification.py
  • scripts/conformance/domains/noise_control.py
  • scripts/conformance/domains/outdoor.py
  • scripts/conformance/domains/random_incidence.py
  • scripts/conformance/domains/reciprocity_calibration.py
  • scripts/conformance/domains/service_equipment.py
  • scripts/conformance/domains/signal_analysis.py
  • scripts/conformance/domains/sound_power_rooms.py
  • scripts/conformance/domains/sound_quality.py
  • scripts/conformance/domains/underwater.py
  • scripts/conformance/domains/vibration_railway_prediction.py
  • scripts/conformance/domains/wind_turbine_receptor.py
  • scripts/figures/aircraft.py
  • scripts/figures/building.py
  • scripts/figures/building_design.py
  • scripts/figures/building_lab_rules.py
  • scripts/figures/devices.py
  • scripts/figures/environment.py
  • scripts/figures/materials.py
  • scripts/figures/metrology.py
  • scripts/figures/perception.py
  • scripts/figures/reciprocity.py
  • scripts/figures/room.py
  • scripts/figures/spectral_estimation.py
  • scripts/figures/underwater.py
  • scripts/figures/vibration.py
  • scripts/reports/building.py
  • scripts/reports/building_design.py
  • scripts/reports/devices.py
  • scripts/reports/emission.py
  • scripts/reports/environment.py
  • scripts/reports/materials.py
  • scripts/reports/noise_control.py
  • site/public/llms/llms-aircraft.txt
  • site/public/llms/llms-buildings-design.txt
  • site/public/llms/llms-buildings-insulation-laboratory.txt
  • site/public/llms/llms-buildings-insulation-ratings.txt
  • site/public/llms/llms-buildings-insulation.txt
  • site/public/llms/llms-buildings-rooms-auditorium.txt
  • site/public/llms/llms-buildings-rooms.txt
  • site/public/llms/llms-devices-electroacoustics.txt
  • site/public/llms/llms-devices-emission-enveloping.txt
  • site/public/llms/llms-devices-emission-intensity.txt
  • site/public/llms/llms-devices-emission-reverberant.txt
  • site/public/llms/llms-devices-emission.txt
  • site/public/llms/llms-devices-noise-control.txt
  • site/public/llms/llms-environment-assessment.txt
  • site/public/llms/llms-environment-sources.txt
  • site/public/llms/llms-materials-absorbers.txt
  • site/public/llms/llms-materials-diffusers.txt
  • site/public/llms/llms-materials-surfaces.txt
  • site/public/llms/llms-perception-hearing.txt
  • site/public/llms/llms-perception-psychoacoustics.txt
  • site/public/llms/llms-signals-metrology-microphones.txt
  • site/public/llms/llms-signals-metrology.txt
  • site/public/llms/llms-signals-spectra.txt
  • site/public/llms/llms-underwater.txt
  • site/public/llms/llms-upgrading.txt
  • site/public/llms/llms-vibration-human.txt
  • site/public/llms/llms-vibration-immission.txt
  • site/public/llms/llms-vibration-structural.txt
  • site/src/content/docs/aircraft/rotorcraft-noise.mdx
  • site/src/content/docs/buildings/design/detailed-prediction.mdx
  • site/src/content/docs/buildings/design/impact-improvement.mdx
  • site/src/content/docs/buildings/design/installed-structure-borne.mdx
  • site/src/content/docs/buildings/design/structure-borne-power.mdx
  • site/src/content/docs/buildings/insulation/insulation-ratings.mdx
  • site/src/content/docs/buildings/insulation/lab-application-rules.mdx
  • site/src/content/docs/buildings/insulation/low-frequency-procedure.mdx
  • site/src/content/docs/buildings/insulation/service-equipment-noise.mdx
  • site/src/content/docs/buildings/insulation/spanish-building-code.mdx
  • site/src/content/docs/buildings/rooms/reporting-and-qualification.mdx
  • site/src/content/docs/buildings/rooms/room-image-sources.mdx
  • site/src/content/docs/buildings/rooms/room-impulse-response.mdx
  • site/src/content/docs/buildings/rooms/room-noise.mdx
  • site/src/content/docs/devices/electroacoustics/headphones.mdx
  • site/src/content/docs/devices/electroacoustics/induction-loops.mdx
  • site/src/content/docs/devices/electroacoustics/loudspeakers.mdx
  • site/src/content/docs/devices/electroacoustics/microphones.mdx
  • site/src/content/docs/devices/emission/intensity.mdx
  • site/src/content/docs/devices/emission/sound-power-in-duct.mdx
  • site/src/content/docs/devices/emission/sound-power-in-situ.mdx
  • site/src/content/docs/devices/emission/sound-power-plant.mdx
  • site/src/content/docs/devices/emission/sound-power-pressure.mdx
  • site/src/content/docs/devices/emission/sound-power-reverberation.mdx
  • site/src/content/docs/devices/emission/sound-power-test-rooms.mdx
  • site/src/content/docs/devices/emission/vibration-sound-power.mdx
  • site/src/content/docs/devices/noise-control/duct-path.mdx
  • site/src/content/docs/devices/noise-control/room-to-room.mdx
  • site/src/content/docs/environment/assessment/spanish-noise-regulation.mdx
  • site/src/content/docs/environment/sources/wind-turbine-noise.mdx
  • site/src/content/docs/environment/sources/wind-turbine-receptor.mdx
  • site/src/content/docs/es/aircraft/rotorcraft-noise.mdx
  • site/src/content/docs/es/buildings/design/detailed-prediction.mdx
  • site/src/content/docs/es/buildings/design/impact-improvement.mdx
  • site/src/content/docs/es/buildings/design/installed-structure-borne.mdx
  • site/src/content/docs/es/buildings/design/structure-borne-power.mdx
  • site/src/content/docs/es/buildings/insulation/insulation-ratings.mdx
  • site/src/content/docs/es/buildings/insulation/lab-application-rules.mdx
  • site/src/content/docs/es/buildings/insulation/low-frequency-procedure.mdx
  • site/src/content/docs/es/buildings/insulation/service-equipment-noise.mdx
  • site/src/content/docs/es/buildings/insulation/spanish-building-code.mdx
  • site/src/content/docs/es/buildings/rooms/reporting-and-qualification.mdx
  • site/src/content/docs/es/buildings/rooms/room-image-sources.mdx
  • site/src/content/docs/es/buildings/rooms/room-impulse-response.mdx
  • site/src/content/docs/es/buildings/rooms/room-noise.mdx
  • site/src/content/docs/es/devices/electroacoustics/headphones.mdx
  • site/src/content/docs/es/devices/electroacoustics/induction-loops.mdx
  • site/src/content/docs/es/devices/electroacoustics/loudspeakers.mdx
  • site/src/content/docs/es/devices/electroacoustics/microphones.mdx
  • site/src/content/docs/es/devices/emission/intensity.mdx
  • site/src/content/docs/es/devices/emission/sound-power-in-duct.mdx
  • site/src/content/docs/es/devices/emission/sound-power-in-situ.mdx
  • site/src/content/docs/es/devices/emission/sound-power-plant.mdx
  • site/src/content/docs/es/devices/emission/sound-power-pressure.mdx
  • site/src/content/docs/es/devices/emission/sound-power-reverberation.mdx
  • site/src/content/docs/es/devices/emission/sound-power-test-rooms.mdx
  • site/src/content/docs/es/devices/emission/vibration-sound-power.mdx
  • site/src/content/docs/es/devices/noise-control/duct-path.mdx
  • site/src/content/docs/es/devices/noise-control/room-to-room.mdx
  • site/src/content/docs/es/environment/assessment/spanish-noise-regulation.mdx
  • site/src/content/docs/es/environment/sources/wind-turbine-noise.mdx
  • site/src/content/docs/es/environment/sources/wind-turbine-receptor.mdx
  • site/src/content/docs/es/materials/absorbers/absorption-measurement.mdx
  • site/src/content/docs/es/materials/diffusers/diffusers.mdx
  • site/src/content/docs/es/materials/surfaces/road-absorption.mdx
  • site/src/content/docs/es/perception/hearing/audiometry.mdx
  • site/src/content/docs/es/perception/hearing/hearing-threshold.mdx
  • site/src/content/docs/es/perception/psychoacoustics/tone-audibility.mdx
  • site/src/content/docs/es/signals/metrology/comparison-calibration.mdx
  • site/src/content/docs/es/signals/metrology/free-field-corrections.mdx
  • site/src/content/docs/es/signals/metrology/random-incidence.mdx
  • site/src/content/docs/es/signals/metrology/reciprocity-calibration.mdx
  • site/src/content/docs/es/signals/spectra/spectral-analysis.mdx
  • site/src/content/docs/es/start/upgrading.mdx
  • site/src/content/docs/es/underwater/marine-mammal-exposure.mdx
  • site/src/content/docs/es/underwater/underwater-acoustics.mdx
  • site/src/content/docs/es/vibration/human/human-vibration.mdx
  • site/src/content/docs/es/vibration/human/meter-verification.mdx
  • site/src/content/docs/es/vibration/immission/railway-vibration.mdx
  • site/src/content/docs/es/vibration/immission/vibration-meter.mdx
  • site/src/content/docs/es/vibration/structural/impact-mobility.mdx
  • site/src/content/docs/es/vibration/structural/junction-transmission.mdx
  • site/src/content/docs/es/vibration/structural/mechanical-mobility.mdx
  • site/src/content/docs/es/vibration/structural/transfer-stiffness.mdx
  • site/src/content/docs/materials/absorbers/absorption-measurement.mdx
  • site/src/content/docs/materials/diffusers/diffusers.mdx
  • site/src/content/docs/materials/surfaces/road-absorption.mdx
  • site/src/content/docs/perception/hearing/audiometry.mdx
  • site/src/content/docs/perception/hearing/hearing-threshold.mdx
  • site/src/content/docs/perception/psychoacoustics/tone-audibility.mdx
  • site/src/content/docs/reference/api/aeroacoustics/rotorcraft-noise.md
  • site/src/content/docs/reference/api/aeroacoustics/rotorcraft-propagation.md
  • site/src/content/docs/reference/api/building/aperture-transmission.md
  • site/src/content/docs/reference/api/building/ceiling-plenum.md
  • site/src/content/docs/reference/api/building/detailed-model.md
  • site/src/content/docs/reference/api/building/facade.md
  • site/src/content/docs/reference/api/building/flanking-transmission.md
  • site/src/content/docs/reference/api/building/floor-covering-improvement.md
  • site/src/content/docs/reference/api/building/heavy-impact.md
  • site/src/content/docs/reference/api/building/installed-structure-borne.md
  • site/src/content/docs/reference/api/building/joint-insulation.md
  • site/src/content/docs/reference/api/building/laboratory-improvement.md
  • site/src/content/docs/reference/api/building/low-frequency.md
  • site/src/content/docs/reference/api/building/panel-transmission.md
  • site/src/content/docs/reference/api/building/rainfall-sound.md
  • site/src/content/docs/reference/api/building/ratings.md
  • site/src/content/docs/reference/api/building/service-equipment.md
  • site/src/content/docs/reference/api/building/structure-borne-power.md
  • site/src/content/docs/reference/api/electroacoustics/headphones.md
  • site/src/content/docs/reference/api/electroacoustics/induction-loop-components.md
  • site/src/content/docs/reference/api/electroacoustics/loudspeaker.md
  • site/src/content/docs/reference/api/electroacoustics/microphone.md
  • site/src/content/docs/reference/api/electroacoustics/piston.md
  • site/src/content/docs/reference/api/electroacoustics/program-signal.md
  • site/src/content/docs/reference/api/electroacoustics/sound-reinforcement.md
  • site/src/content/docs/reference/api/environment/ground-barriers.md
  • site/src/content/docs/reference/api/environment/measurement.md
  • site/src/content/docs/reference/api/environment/outdoor-propagation.md
  • site/src/content/docs/reference/api/environment/spain.md
  • site/src/content/docs/reference/api/environment/wind-turbine-modulation.md
  • site/src/content/docs/reference/api/environment/wind-turbine.md
  • site/src/content/docs/reference/api/hearing/audiometry.md
  • site/src/content/docs/reference/api/hearing/threshold.md
  • site/src/content/docs/reference/api/io/io.md
  • site/src/content/docs/reference/api/materials/design.md
  • site/src/content/docs/reference/api/materials/dynamic-stiffness.md
  • site/src/content/docs/reference/api/materials/impedance-tube.md
  • site/src/content/docs/reference/api/materials/metadiffuser.md
  • site/src/content/docs/reference/api/materials/porous.md
  • site/src/content/docs/reference/api/materials/reverberation-room-scattering.md
  • site/src/content/docs/reference/api/materials/road-absorption.md
  • site/src/content/docs/reference/api/materials/scattering-diffusion.md
  • site/src/content/docs/reference/api/materials/slow-sound.md
  • site/src/content/docs/reference/api/materials/sound-absorption.md
  • site/src/content/docs/reference/api/materials/uncertainty.md
  • site/src/content/docs/reference/api/metrology/comparison-calibration.md
  • site/src/content/docs/reference/api/metrology/free-field-corrections.md
  • site/src/content/docs/reference/api/metrology/random-incidence.md
  • site/src/content/docs/reference/api/metrology/reciprocity-calibration.md
  • site/src/content/docs/reference/api/metrology/reciprocity-coupler.md
  • site/src/content/docs/reference/api/metrology/reciprocity-free-field.md
  • site/src/content/docs/reference/api/noise_control/duct-path.md
  • site/src/content/docs/reference/api/noise_control/hvac.md
  • site/src/content/docs/reference/api/noise_control/room-to-room.md
  • site/src/content/docs/reference/api/noise_control/silencers.md
  • site/src/content/docs/reference/api/noise_control/valves-hydrodynamic.md
  • site/src/content/docs/reference/api/power/intensity-compliance.md
  • site/src/content/docs/reference/api/power/intensity.md
  • site/src/content/docs/reference/api/power/sound-power-anechoic.md
  • site/src/content/docs/reference/api/power/sound-power-hard-walled.md
  • site/src/content/docs/reference/api/power/sound-power-in-duct.md
  • site/src/content/docs/reference/api/power/sound-power-in-situ.md
  • site/src/content/docs/reference/api/power/sound-power-plant.md
  • site/src/content/docs/reference/api/power/sound-power-reverberation.md
  • site/src/content/docs/reference/api/power/sound-power-special-room.md
  • site/src/content/docs/reference/api/power/sound-power.md
  • site/src/content/docs/reference/api/power/vibration-sound-power.md
  • site/src/content/docs/reference/api/psychoacoustics/contours.md
  • site/src/content/docs/reference/api/psychoacoustics/sharpness.md
  • site/src/content/docs/reference/api/psychoacoustics/tone-audibility.md
  • site/src/content/docs/reference/api/rooms/auditorium.md
  • site/src/content/docs/reference/api/rooms/image-source.md
  • site/src/content/docs/reference/api/rooms/modes.md
  • site/src/content/docs/reference/api/rooms/noise-criteria.md
  • site/src/content/docs/reference/api/rooms/open-plan.md
  • site/src/content/docs/reference/api/signals/levels.md
  • site/src/content/docs/reference/api/signals/spectra.md
  • site/src/content/docs/reference/api/underwater/numerical.md
  • site/src/content/docs/reference/api/underwater/ship-radiated-noise.md
  • site/src/content/docs/reference/api/underwater/weighting.md
  • site/src/content/docs/reference/api/vibration/experimental-sea.md
  • site/src/content/docs/reference/api/vibration/exposure.md
  • site/src/content/docs/reference/api/vibration/impact-mobility.md
  • site/src/content/docs/reference/api/vibration/instrumentation.md
  • site/src/content/docs/reference/api/vibration/junction-transmission.md
  • site/src/content/docs/reference/api/vibration/mechanical-mobility.md
  • site/src/content/docs/reference/api/vibration/radiation-efficiency.md
  • site/src/content/docs/reference/api/vibration/railway-prediction.md
  • site/src/content/docs/reference/api/vibration/railway.md
  • site/src/content/docs/reference/api/vibration/transfer-stiffness.md
  • site/src/content/docs/reference/api/vibration/vibration-meter.md
  • site/src/content/docs/signals/metrology/comparison-calibration.mdx
  • site/src/content/docs/signals/metrology/free-field-corrections.mdx
  • site/src/content/docs/signals/metrology/random-incidence.mdx
  • site/src/content/docs/signals/metrology/reciprocity-calibration.mdx
  • site/src/content/docs/signals/spectra/spectral-analysis.mdx
  • site/src/content/docs/start/upgrading.mdx
  • site/src/content/docs/underwater/marine-mammal-exposure.mdx
  • site/src/content/docs/underwater/underwater-acoustics.mdx
  • site/src/content/docs/vibration/human/human-vibration.mdx
  • site/src/content/docs/vibration/human/meter-verification.mdx
  • site/src/content/docs/vibration/immission/railway-vibration.mdx
  • site/src/content/docs/vibration/immission/vibration-meter.mdx
  • site/src/content/docs/vibration/structural/impact-mobility.mdx
  • site/src/content/docs/vibration/structural/junction-transmission.mdx
  • site/src/content/docs/vibration/structural/mechanical-mobility.mdx
  • site/src/content/docs/vibration/structural/transfer-stiffness.mdx
  • src/phonometry/_plot/geometry/building.py
  • src/phonometry/_plot/geometry/electroacoustics.py
  • src/phonometry/_plot/geometry/emission.py
  • src/phonometry/_plot/geometry/environment.py
  • src/phonometry/_plot/geometry/materials.py
  • src/phonometry/_plot/geometry/noise_control.py
  • src/phonometry/_plot/geometry/room.py
  • src/phonometry/_plot/geometry/vibration.py
  • src/phonometry/_plot/joint_insulation.py
  • src/phonometry/aircraft/rotorcraft_noise.py
  • src/phonometry/aircraft/rotorcraft_propagation.py
  • src/phonometry/building/datasheets.py
  • src/phonometry/building/measurement/_rainfall_sound.py
  • src/phonometry/building/measurement/flanking_transmission.py
  • src/phonometry/building/measurement/floor_covering_improvement.py
  • src/phonometry/building/measurement/heavy_impact.py
  • src/phonometry/building/measurement/insulation.py
  • src/phonometry/building/measurement/joint_insulation.py
  • src/phonometry/building/measurement/laboratory_improvement.py
  • src/phonometry/building/measurement/low_frequency.py
  • src/phonometry/building/measurement/ratings.py
  • src/phonometry/building/measurement/service_equipment.py
  • src/phonometry/building/measurement/structure_borne_power.py
  • src/phonometry/building/prediction/ceiling_plenum.py
  • src/phonometry/building/prediction/detailed_model.py
  • src/phonometry/building/prediction/installed_structure_borne.py
  • src/phonometry/electroacoustics/headphones.py
  • src/phonometry/electroacoustics/induction_loop_components.py
  • src/phonometry/electroacoustics/loudspeaker.py
  • src/phonometry/electroacoustics/microphone.py
  • src/phonometry/electroacoustics/program_signal.py
  • src/phonometry/emission/_sound_power_anechoic.py
  • src/phonometry/emission/_sound_power_hard_walled.py
  • src/phonometry/emission/_sound_power_in_duct.py
  • src/phonometry/emission/_sound_power_in_situ.py
  • src/phonometry/emission/_sound_power_reverberation.py
  • src/phonometry/emission/_sound_power_special_room.py
  • src/phonometry/emission/intensity.py
  • src/phonometry/emission/intensity_compliance.py
  • src/phonometry/emission/sound_power_plant.py
  • src/phonometry/emission/vibration_sound_power.py
  • src/phonometry/environment/assessment/measurement.py
  • src/phonometry/environment/assessment/spain.py
  • src/phonometry/environment/assessment/wind_turbine_modulation.py
  • src/phonometry/environment/propagation/ground_barriers.py
  • src/phonometry/environment/propagation/outdoor_propagation.py
  • src/phonometry/environment/sources/wind_turbine.py
  • src/phonometry/hearing/audiometry.py
  • src/phonometry/hearing/threshold.py
  • src/phonometry/io/_signal.py
  • src/phonometry/materials/absorbers/sound_absorption.py
  • src/phonometry/materials/absorbers/uncertainty.py
  • src/phonometry/materials/diffusers/design.py
  • src/phonometry/materials/diffusers/metadiffuser.py
  • src/phonometry/materials/diffusers/reverberation_room_scattering.py
  • src/phonometry/materials/diffusers/scattering_diffusion.py
  • src/phonometry/materials/surfaces/road_absorption.py
  • src/phonometry/metrology/comparison_calibration.py
  • src/phonometry/metrology/free_field_corrections.py
  • src/phonometry/metrology/random_incidence.py
  • src/phonometry/metrology/reciprocity_calibration.py
  • src/phonometry/metrology/reciprocity_coupler.py
  • src/phonometry/metrology/reciprocity_free_field.py
  • src/phonometry/noise_control/_cabin_insulation.py
  • src/phonometry/noise_control/_criterion.py
  • src/phonometry/noise_control/_duct_path.py
  • src/phonometry/noise_control/hvac.py
  • src/phonometry/noise_control/room_to_room.py
  • src/phonometry/noise_control/valves_hydrodynamic.py
  • src/phonometry/psychoacoustics/loudness/contours.py
  • src/phonometry/psychoacoustics/quality/_tone_audibility.py
  • src/phonometry/psychoacoustics/quality/sharpness.py
  • src/phonometry/room/auditorium.py
  • src/phonometry/room/image_source.py
  • src/phonometry/room/modes.py
  • src/phonometry/room/noise_criteria.py
  • src/phonometry/signals/levels.py
  • src/phonometry/signals/spectra.py
  • src/phonometry/underwater/bioacoustics/weighting.py
  • src/phonometry/underwater/propagation/numerical.py
  • src/phonometry/underwater/sources/ship_radiated_noise.py
  • src/phonometry/vibration/human/exposure.py
  • src/phonometry/vibration/human/instrumentation.py
  • src/phonometry/vibration/immission/railway.py
  • src/phonometry/vibration/immission/railway_prediction.py
  • src/phonometry/vibration/immission/vibration_meter.py
  • src/phonometry/vibration/structural/_impact_mobility.py
  • src/phonometry/vibration/structural/_junction_transmission.py
  • src/phonometry/vibration/structural/experimental_sea.py
  • src/phonometry/vibration/structural/mechanical_mobility.py
  • src/phonometry/vibration/structural/transfer_stiffness.py
  • tests/aircraft/test_rotorcraft_noise.py
  • tests/aircraft/test_rotorcraft_norah2.py
  • tests/aircraft/test_rotorcraft_terrain.py
  • tests/building/measurement/test_building_uncertainty.py
  • tests/building/measurement/test_flanking_transmission.py
  • tests/building/measurement/test_floor_covering_form.py
  • tests/building/measurement/test_floor_covering_improvement.py
  • tests/building/measurement/test_heavy_impact.py
  • tests/building/measurement/test_insulation.py
  • tests/building/measurement/test_iso16251_report.py
  • tests/building/measurement/test_joint_insulation.py
  • tests/building/measurement/test_laboratory_improvement.py
  • tests/building/measurement/test_low_frequency.py
  • tests/building/measurement/test_rainfall_sound.py
  • tests/building/measurement/test_service_equipment.py
  • tests/building/measurement/test_structure_borne_power.py
  • tests/building/measurement/test_structure_borne_power_report.py
  • tests/building/prediction/test_ceiling_plenum.py
  • tests/building/prediction/test_detailed_model.py
  • tests/building/prediction/test_installed_structure_borne_tables.py
  • tests/building/regulation/test_spanish_building_code.py
  • tests/electroacoustics/test_electroacoustics_frequency_axis_language.py
  • tests/electroacoustics/test_electroacoustics_plot_i18n.py
  • tests/electroacoustics/test_headphones.py
  • tests/electroacoustics/test_induction_loop.py
  • tests/electroacoustics/test_induction_loop_components.py
  • tests/electroacoustics/test_loudspeaker.py
  • tests/electroacoustics/test_microphone.py
  • tests/electroacoustics/test_program_signal.py
  • tests/emission/test_emission_frequency_axis_language.py
  • tests/emission/test_emission_plot_i18n.py
  • tests/emission/test_intensity.py
  • tests/emission/test_intensity_compliance.py
  • tests/emission/test_iso3743_report.py
  • tests/emission/test_reference_sound_source.py
  • tests/emission/test_sound_energy.py
  • tests/emission/test_sound_power_hard_walled.py
  • tests/emission/test_sound_power_in_duct.py
  • tests/emission/test_sound_power_in_situ.py
  • tests/emission/test_sound_power_plant.py
  • tests/emission/test_sound_power_precision.py
  • tests/emission/test_sound_power_reverberation.py
  • tests/emission/test_sound_power_special_room.py
  • tests/emission/test_vibration_sound_power.py
  • tests/environment/assessment/test_measurement.py
  • tests/environment/assessment/test_spain.py
  • tests/environment/assessment/test_wind_turbine_modulation.py
  • tests/environment/propagation/test_ground_barriers.py
  • tests/environment/propagation/test_iso17534_3.py
  • tests/environment/propagation/test_outdoor_propagation.py
  • tests/environment/sources/test_wind_turbine.py
  • tests/environment/sources/test_wind_turbine_tonality_report.py
  • tests/environment/test_environment_plot_i18n.py
  • tests/hearing/test_audiometry.py
  • tests/hearing/test_audiometry_plots.py
  • tests/hearing/test_earphone_reference.py
  • tests/iso12354_building.py
  • tests/materials/absorbers/test_absorption_uncertainty.py
  • tests/materials/absorbers/test_iso354_report.py
  • tests/materials/absorbers/test_sound_absorption.py
  • tests/materials/diffusers/test_iso17497_report.py
  • tests/materials/diffusers/test_scattering_diffusion.py
  • tests/materials/surfaces/test_road_absorption.py
  • tests/materials/test_materials_plot_i18n.py
  • tests/metrology/test_comparison_calibration.py
  • tests/metrology/test_comparison_diameter_gap_validation.py
  • tests/metrology/test_comparison_phase_impedance_time.py
  • tests/metrology/test_free_field_corrections.py
  • tests/metrology/test_iec61043_report.py
  • tests/metrology/test_iec62585_report.py
  • tests/metrology/test_random_incidence.py
  • tests/metrology/test_reciprocity_calibration.py
  • tests/metrology/test_reciprocity_coupler.py
  • tests/metrology/test_reciprocity_free_field.py
  • tests/metrology/test_reciprocity_plots.py
  • tests/noise_control/test_cabin_insulation.py
  • tests/noise_control/test_duct_path.py
  • tests/noise_control/test_duct_path_report.py
  • tests/noise_control/test_duct_path_report_language.py
  • tests/noise_control/test_hvac_long.py
  • tests/noise_control/test_noise_control_frequency_axis_language.py
  • tests/noise_control/test_room_to_room.py
  • tests/noise_control/test_room_to_room_norton.py
  • tests/psychoacoustics/quality/test_tone_audibility.py
  • tests/psychoacoustics/test_iso1996_tone_report.py
  • tests/result_factories.py
  • tests/room/test_auditorium_reporting.py
  • tests/room/test_modes.py
  • tests/room/test_noise_criteria.py
  • tests/room/test_room_noise_report.py
  • tests/signals/test_spectra.py
  • tests/test_boundary_verdicts.py
  • tests/test_check_parameter_units.py
  • tests/test_choice_vocabulary.py
  • tests/test_derived_regimes.py
  • tests/test_device_geometry_plots.py
  • tests/test_plot_localized_panels.py
  • tests/test_plot_twin_legend.py
  • tests/test_public_vocabulary.py
  • tests/test_record_display.py
  • tests/test_result_plots.py
  • tests/test_scalar_guards.py
  • tests/test_verdict_shape.py
  • tests/underwater/bioacoustics/test_weighting.py
  • tests/underwater/sources/test_pile_driving_noise.py
  • tests/underwater/sources/test_ship_radiated_noise.py
  • tests/underwater/test_underwater_frequency_axis_language.py
  • tests/underwater/test_underwater_plot_i18n.py
  • tests/vibration/human/test_human_vibration.py
  • tests/vibration/human/test_instrumentation.py
  • tests/vibration/immission/test_railway.py
  • tests/vibration/immission/test_railway_prediction.py
  • tests/vibration/immission/test_vibration_meter.py
  • tests/vibration/immission/test_vibration_meter_plot.py
  • tests/vibration/structural/test_experimental_sea.py
  • tests/vibration/structural/test_impact_mobility.py
  • tests/vibration/structural/test_junction_transmission.py
  • tests/vibration/structural/test_mechanical_mobility.py
  • tests/vibration/structural/test_transfer_stiffness.py
  • tests/vibration/structural/test_transfer_stiffness_report.py
  • tests/vibration/test_vibration_frequency_axis_language.py
  • tests/vibration/test_vibration_plot_i18n.py

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@jmrplens jmrplens changed the title fix/conditions and axes by name Conditions, frequency axes and plot axes are written by name, so a positional mix-up fails instead of answering Oct 17, 2026
…sitional mix-up fails instead of answering

A parameter that ends in its unit and carries a default was already keyword-only, because a number typed at the call site is where a unit gets lost. Three kinds of argument slipped past that rule. The speed of sound, the density of air or of water, a calibration factor and the three ground factors of ISO 9613-2 carry no unit of their own, so `ground_attenuation(200, 2, 2, bands, 1, 1, 1)` and `sound_exposure(x, fs, 8.0, cal)` still read as a row of bare numbers in an order nobody remembers. A frequency axis sat beside the values it labels as just another array: two arrays of one length bind either way round without a complaint, and the API reference itself showed `weighted_rating_extended(freqs, r)` and `weighted_impact_rating_extended(freqs, ln)` with the frequencies where the levels go. And the 23 public `plot_*` geometry helpers took the axes in two different places: seventeen after their data (`plot_plate_geometry(0.8, 0.6, ax)`), six first (`plot_barrier_geometry(ax, ...)`).
@jmrplens
jmrplens force-pushed the fix/conditions-and-axes-by-name branch from a36d06d to 2620ab2 Compare October 17, 2026 17:12
@github-actions github-actions Bot added documentation Improvements or additions to documentation conformance Standard clause coverage, reference values or errata api Public API surface, naming and deprecations figures Generated plots, diagrams and animations reports Accredited-format .report() fiches and their rendering site Documentation website i18n English and Spanish translations area: aircraft Aircraft and rotorcraft noise area: building Sound insulation and building acoustics area: electroacoustics Transducers, arrays and electroacoustic devices area: emission Sound power and source emission area: environment Outdoor propagation, environmental sources and noise assessment area: hearing Audiometric thresholds, hearing loss and noise exposure area: materials Absorption, impedance and material properties area: metrology Calibration, uncertainty and measurement quality area: noise control Silencers, barriers and noise control treatments area: psychoacoustics Loudness, sharpness, roughness and annoyance area: room Room acoustics and reverberation area: underwater Underwater acoustics and propagation area: vibration Human vibration and structure-borne sound area: core Shared internals and cross-cutting code every domain depends on area: signals Levels, spectra, generators and general signal analysis labels Oct 17, 2026
@codecov

codecov Bot commented Oct 17, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 92.02%. Comparing base (babc6f7) to head (2620ab2).

Additional details and impacted files
@@                         Coverage Diff                         @@
##           fix/errors-and-warnings-by-kind     #980      +/-   ##
===================================================================
- Coverage                            92.02%   92.02%   -0.01%     
===================================================================
  Files                                  446      446              
  Lines                                91130    91133       +3     
===================================================================
+ Hits                                 83864    83866       +2     
- Misses                                7266     7267       +1     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions

github-actions Bot commented Oct 17, 2026 •

Copy link
Copy Markdown
Contributor

Numerical conformance

All 1893 conformance checks pass, across 111 domains and 523 standards

1893/1893 checks pass across 111 domains and 523 standards (227 normative designations, 125 further published sources).

Used in the tables below is how much of that clause's published tolerance the deviation consumes: 100 % sits exactly on the limit, 5 % uses a twentieth of the allowance, and a dash means the clause states no two-sided tolerance for the quantity, so there is no budget to spend. It is reported and never used to decide a verdict, which is settled at full precision before any rounding.

Renamed (4)

Standard Base quantity Head quantity
ISO 8297:1994 Table 2 Background correction at differences of 6 to 10 dB and at 12 dB, read through plant_background_correction_db Background correction at differences of 6 to 10 dB and at 12 dB, read through plant_background_correction
Wenz wind noise (rule of fives) Wind spectrum level at 1 kHz, 5 kn (canonical anchor), dB re 1 µPa²/Hz Wind spectrum level at 1 kHz, 5 kt (canonical anchor), dB re 1 µPa²/Hz
JOMOPANS-ECHO ship source level Bulker V=13.5 kn L=211 m band level at 1 kHz (File S1 oracle), dB re 1 µPa m Bulker V=13.5 kt L=211 m band level at 1 kHz (File S1 oracle), dB re 1 µPa m
ISO 10847:1997 6.3.1 The short-distance ratio is strict at 0,1, and the after case needs both of its two inequalities The short-distance ratio is strict at 0,1, the after case needs both of its two inequalities, and a geometry past 0,1 on every ratio is short

Closest to their published limit (top 5)

The rows with the least room left, so the ones a change is most likely to push over.

Standard Quantity Deviation Used
ISO/TR 17534-3:2015 Table 3 Ground-projected path length dp, m 0.005 m 100 %
DIN 4150-2:1999-06 Annex C, Example 5 KB_FTr with hammer b) in the rest hours, Formula (5) -0.005 100 %
DIN 4150-2:1999-06 Annex C, Example 8 KB_FTm over the record with the passage maxima alone -0.0005 100 %
E DIN 4150-2:2023-08 Annex B, Table B.1 KB_FTm,Zug of the metro north by Formula (5) -0.0005 100 %
Jarvis (1996) NPL CIRA(EXT) 010 Appendix B, folio 26 Volume of the coupler of the example, v = pi r^2 L -0.00000000005 m³ 100 %

Pass Tests & coverage: 261909 tests, 0 failures (all green)
Python Version Tests Failures Coverage Status
macos-latest-3.12 29101 0 92.0% Pass Passed
macos-latest-3.13 29101 0 92.0% Pass Passed
macos-latest-3.14 29101 0 92.0% Pass Passed
ubuntu-latest-3.12 29101 0 92.0% Pass Passed
ubuntu-latest-3.13 29101 0 92.0% Pass Passed
ubuntu-latest-3.14 29101 0 92.0% Pass Passed
windows-latest-3.12 29101 0 92.0% Pass Passed
windows-latest-3.13 29101 0 92.0% Pass Passed
windows-latest-3.14 29101 0 92.0% Pass Passed

Full report at this commit: docs/CONFORMANCE.md · docs/conformance.json · full CI artifacts

@sonarqubecloud

Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
Code smells with severity Major found (required < Major)

See analysis details on SonarQube Cloud

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

api Public API surface, naming and deprecations area: aircraft Aircraft and rotorcraft noise area: building Sound insulation and building acoustics area: core Shared internals and cross-cutting code every domain depends on area: electroacoustics Transducers, arrays and electroacoustic devices area: emission Sound power and source emission area: environment Outdoor propagation, environmental sources and noise assessment area: hearing Audiometric thresholds, hearing loss and noise exposure area: materials Absorption, impedance and material properties area: metrology Calibration, uncertainty and measurement quality area: noise control Silencers, barriers and noise control treatments area: psychoacoustics Loudness, sharpness, roughness and annoyance area: room Room acoustics and reverberation area: signals Levels, spectra, generators and general signal analysis area: underwater Underwater acoustics and propagation area: vibration Human vibration and structure-borne sound conformance Standard clause coverage, reference values or errata documentation Improvements or additions to documentation figures Generated plots, diagrams and animations i18n English and Spanish translations reports Accredited-format .report() fiches and their rendering site Documentation website

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant