Skip to content
This documentation describes version 4.0.0, which is not released yet. The current version on PyPI is 3.3.0 and does not carry everything described here.

emission.turbine_noise

Airborne noise of a steam turbine set and its driven machinery: IEC 61063:1991 (EN 61063:1996).

IEC 61063 is a noise test code. It takes the survey method of ISO 3746 and fixes, for one family of machines, what that method leaves open: the shape of the measurement surface around a turbine, generator and exciter standing on their operating floor, the microphone positions on it, how the background and the room are corrected, and what the report says. The text read here is the English one of BS EN 61063:1996, which reproduces IEC 1063:1991 without modification; every clause, table and figure below was read on the printed page, cited as PDF page and printed folio.

The measurement surface (clause 7.1, printed folio 7, PDF page 13). The turbine set is enclosed by several reference boxes in juxtaposition, one per part (turbine casings, gear, generator, exciter), terminating on the reflecting plane. The measurement surface is made of right parallelepipeds parallel to them at the measurement distance m, and its area is Equation (1),

with , and the length, width and height of the -th of the parallelepipeds, dimensioned on the measurement surface as Figure 2 draws them. The sum is the tops and the long sides; stands for every transverse face, the two ends and the steps between neighbouring boxes. It is exact when each cross-section contains the next one out towards both ends, as in both drawings of Figure 2, and TurbineMeasurementSurface.enveloping_area_m2 gives the exact area of the stepped surface for the case it is not.

The microphone positions (clause 7.2, Figure 2). Five key positions are prescribed: 1 and 5 at the centres of the two ends, 2 and 4 on the two long sides and 3 overhead, the last three in the plane between the turbine and the driven machinery. Additional positions follow at equal distances from the key positions, close enough that “there is at least one measurement section at each casing” (7.2.2): round the sides from 1 through 2, 5 and 4, and over the set from 1 up the front end, across the top through 3 and down the rear end to 5, as the plan and the elevation of Figure 2 draw them. Each of the two paths is divided on its own, so the stations round the sides and those overhead need not stand in the same transverse sections, as the drawings of Figure 2 happen to put them; the text asks only for equal distances. The overhead positions may be left out when a preliminary investigation shows they move the sound power level by no more than 1,0 dB (NOTE of 7.2.2).

The background correction (clause 8.1, Table 2, printed folio 8, PDF page 14) is a stepped table applied at each microphone position, not the closed form of ISO 3746:2010 Equation (12), which is applied to the surface-averaged level:

==================== ============== Difference, dB Correction, dB ==================== ============== 3 3 4 2 5 2 6 1 7 1 8 1 9 0,5 10 0,5

10 0,0 ==================== ==============

The background shall be at least 3 dB below the level with the source operating (4.2); below that no valid measurement can be made, and the result is only an indication of the upper limit (NOTE of 4.2).

The environmental correction (clause 8.2, Annex A). Figure A.3 (printed folio 12, PDF page 18) prints the curve and its formula,

with the equivalent absorption area of the room from its reverberation time (A.3.1); A.3.2 obtains from a calibrated reference sound source instead. shall not exceed 7 dB (8.3 and A.3.3), which A.3.3 restates as .

The surface sound pressure level and the sound power level (clauses 8.3 and 8.4, printed folio 9, PDF page 15):

The report (clauses 9 and 10, printed folios 9 and 10). The sound power level is recorded rounded to the nearest whole decibel (9.4 g), and the report states that it was obtained in full conformity with the standard and is expressed in decibels above 1 pW, with at least the six items of clause 10. The standard deviations of Table 1 (printed folio 4, PDF page 10), 5 dB for a source with prominent discrete tones and 4 dB for a broadband one, are the uncertainty the survey method tends to stay within.

The standard prints no worked example. Every function here is anchored in the closed forms above and in the numbers the standard fixes: the nine cells of Table 2, the two of Table 1, the 1 m of 7.1, the 7 dB of A.3.3, the 6 m/s of 4.3, the 3 dB of 4.2, the 1,0 dB of 7.2.2 and the 5 dB and 0,7 dB of the NOTE of 8.3.

Auto-generated from the source docstrings by scripts/generate_api_docs.py (make api-docs). Do not edit by hand.

check_turbine_test_environment(
correction: TurbineEnvironmentalCorrection | None = None,
*,
environmental_correction_db: float | None = None,
wind_speed_m_s: float | None = None,
) -> TurbineTestEnvironmentCheck

Is the test environment good enough for the standard (A.3.3, 4.3)?

A room qualifies when its environmental correction does not exceed 7 dB, “K ≤ 7” (A.3.3), which the clause restates as ; the two agree to the whole decibel (the formula of Figure A.3 gives dB at ). Outdoors, and in very large or open workspaces, is taken as zero (A.4), and measurements outdoors need a wind speed below 6 m/s, with a windscreen above 1 m/s (4.3).

Parameters

NameDescription
correctionThe environmental correction, from turbine_environmental_correction or turbine_reference_source_correction; or give environmental_correction_db instead.
environmental_correction_db in dB, when it was found some other way, 0.0 outdoors (A.4).
wind_speed_m_sThe wind speed for a measurement outdoors, in metres per second; None indoors.

Returns: The conditions and the verdict.

Raises

ExceptionWhen
ValueErrorunless exactly one of correction and environmental_correction_db is given, for a non-finite correction or for a negative wind speed.
turbine_background_correction(
level_difference_db: ArrayLike,
) -> float | np.ndarray

Correction for background noise of Table 2 (clause 8.1).

The correction to subtract from the level measured with the source operating, read from the stepped Table 2 of IEC 61063 at the difference between that level and the background level alone: 3 dB at a difference of 3 dB, 2 dB at 4 and 5 dB, 1 dB at 6 to 8 dB, 0,5 dB at 9 and 10 dB and 0,0 dB above 10 dB.

The last row is read first, on the difference as measured: any difference above 10 dB is ”> 10” and takes no correction, 10,2 dB as much as 11 dB. Between 3 and 10 dB the table is indexed in whole decibels, so the difference is rounded to the nearest one (halves upwards) before it is read; 9,5 dB up to 10 dB takes the 0,5 dB of the row 10. That is how the library reads the stepped table of ISO/TS 7849-1, whose open row is also judged before the rounding. Table 2 prints nothing below 3 dB, the criterion of 4.2, where “a valid measurement of the machine under test cannot be made”: there the 3 dB of the first row is returned. The level it leaves is still an upper limit, because the exact correction for a smaller difference is larger, which is how the NOTE of 4.2 lets such a result be used, and it is the value ISO 3746:2010 8.3.3 prints for the same case. turbine_sound_power marks such a determination as an upper limit.

This is not the of ISO 3746:2010 Equation (12). The steps depart from it by a few tenths of a decibel either way, and they are applied position by position rather than to the surface-averaged level.

Parameters

NameDescription
level_difference_dbThe level with the source operating less the background level, at each position, in dB (scalar or 1-D array).

Returns: The correction to subtract, in dB: a float for a scalar, an array for an array.

Raises

ExceptionWhen
ValueErrorif a difference is not finite.
turbine_environmental_correction(
surface_area_m2: float,
*,
absorption_area_m2: float | None = None,
volume_m3: float | None = None,
reverberation_time_s: float | None = None,
) -> TurbineEnvironmentalCorrection

Environmental correction from the room absorption (A.3.1).

Figure A.3 prints the curve and its formula,

with the equivalent sound absorption area of the room, either given or from its reverberation time, (A.3.1), and the area of the measurement surface from Equation (1). It is the of ISO 3744 and ISO 3746. The result is not refused above the 7 dB the standard allows; check_turbine_test_environment is the judgement, and turbine_sound_power warns.

Parameters

NameDescription
surface_area_m2, in square metres.
absorption_area_m2, in square metres; or give volume_m3 and reverberation_time_s instead.
volume_m3 of the test room, in cubic metres.
reverberation_time_s of the test room with A-weighting on the receiving system, in seconds.

Returns: The correction and the room data it came from.

Raises

ExceptionWhen
ValueErrorunless exactly one of the two routes to is given whole, or for a non-positive input.
turbine_measurement_surface(
reference_boxes: Sequence[TurbineReferenceBox],
) -> TurbineMeasurementSurface

Measurement surface of a turbine set and its area (Equation (1)).

The parallelepipeds of the measurement surface are the reference boxes spaced out by the measurement distance m (7.1): each is wider and taller than its box, and the first and the last are longer, at the two ends of the set. Then

A single box gives the enveloping parallelepiped of ISO 3746, .

Parameters

NameDescription
reference_boxesThe reference boxes in order along the shaft, from the turbine end (Figure 2): one TurbineReferenceBox per part.

Returns: The surface, its parallelepipeds and its area.

Raises

ExceptionWhen
ValueErrorif no box is given or an entry is not a TurbineReferenceBox.
turbine_microphone_positions(
surface: TurbineMeasurementSurface,
*,
microphone_height_m: float,
spacing_m: float,
turbine_boxes: int = 1,
include_overhead: bool = True,
) -> TurbineMicrophoneArray

Key and additional microphone positions on the measurement surface (7.2).

The five key positions follow Figure 2. Position 1 is the centre of the front end and 5 the centre of the rear end; 2 and 4 are on the two long sides and 3 is overhead, all three in the plane between the turbine and the driven machinery, at the outer corner of the wider (or taller) of the two parallelepipeds that meet there, as both drawings of Figure 2 place them. A set in a single box has that plane at mid-length.

The additional positions are “arranged at equal distances” beginning at the key positions (7.2.2). They lie on two paths. One runs round the sides at the microphone height, 1 to 2, 2 to 5, 5 to 4 and 4 to 1, as the plans of Figure 2 draw it. The other, the overhead line, runs in the vertical plane of the shaft from 1 up the front end, across the top and its steps to 3, and on to the rear end and down it to 5, as the elevations draw it with a position on the front end above key position 1. Each run between two key positions is divided into the fewest equal intervals no longer than spacing_m, and a position stands at each division. The two paths are divided each on its own, so their stations need not line up in the transverse sections the drawings of Figure 2 show; 7.2.2 asks only for equal distances. The distance has to be short enough to put “at least one measurement section at each casing”; the library judges it per parallelepiped, and when a spacing leaves one with no position on its long sides a SoundPowerWarning is emitted and TurbineMicrophoneArray.every_box_sampled is False.

Figure 2 draws the positions round the sides on one horizontal row without dimensioning its height, so the height is the caller’s, and it has to lie on the sides of every parallelepiped.

Parameters

NameDescription
surfaceThe measurement surface, from turbine_measurement_surface.
microphone_height_mHeight of the row round the sides, in metres, above the reflecting plane and no higher than the lowest parallelepiped.
spacing_mThe largest distance between neighbouring positions along the path, in metres.
turbine_boxesHow many reference boxes, from the front, enclose the turbine (1 for Figure 2 a, 2 for Figure 2 b, where the HP and IP casings share one box and the LP turbine has its own). Ignored for a set in a single box.
include_overheadFalse leaves the overhead line out, key position 3 with it, as the NOTE of 7.2.2 allows once a preliminary investigation has shown the overhead positions move the sound power level by no more than 1,0 dB (see TurbineSoundPowerResult.overhead_effect_db).

Returns: The positions, their labels and the overhead mask.

Raises

ExceptionWhen
ValueErrorfor a height outside the sides, a non-positive spacing, or a turbine_boxes that leaves no driven machinery.
turbine_noise_declaration(
determinations: Mapping[str, TurbineSoundPowerResult],
*,
turbine: str,
noise_control: str,
measured_at: str,
tonal: bool,
) -> TurbineNoiseDeclaration

The minimum report of clause 10 for one or more operating conditions.

Clause 10 asks the report to state that the A-weighted sound power level “has been obtained in full conformity with the procedures of this standard” and is expressed in decibels above 1 pW, and to give at least: a) the turbine, with its noise control screens and enclosures; b) the operating conditions; c) the A-weighted levels at each position, corrected for the background; d) the A-weighted surface sound pressure level(s); e) the A-weighted sound power level(s); f) the date and time of the measurements. 6.2 suggests repeating the measurement under every typical sustained load, 25 %, 50 %, 75 % and 100 % of the rated load, to find the noisiest, so a report may carry several conditions. The report keeps each sound power level as determined, finds the noisiest condition on it, and rounds it to the nearest whole decibel where it is reported (9.4 g).

A determination that is not in full conformity (an upper limit, or a above 7 dB) cannot carry the statement, and is refused.

Parameters

NameDescription
determinationsOne TurbineSoundPowerResult per operating condition, keyed by its description ("100 % rated load").
turbineDescription of the turbine set, clause 10 a).
noise_controlThe noise control screens and enclosures fitted, or "none", clause 10 a).
measured_atDate and time of the measurements, clause 10 f).
tonalWhether the sound contains prominent discrete tones (Table 1).

Returns: The report.

Raises

ExceptionWhen
ValueErrorfor no determination, a determination that does not conform, or an empty description.
turbine_reference_source_correction(
sound_power_levels_db: ArrayLike,
*,
calibrated_level_db: float,
machine_length_m: float,
) -> TurbineEnvironmentalCorrection

Environmental correction from a reference source (A.3.2).

is the calibrated sound power level of the reference sound source, determined in a free field over a reflecting plane (), and the sound power level the same source shows in the test room by the survey method of ISO 3746 with taken as zero, on a measurement surface 1 m from it. By the NOTE of A.3.2, is the mean of two determinations, the source standing in the middle of each longitudinal side of the turbine set; a machine longer than 10 m takes two more, with the source at each end. The NOTE says “mean value” and does not say which mean; the library takes the arithmetic mean of the determinations.

Parameters

NameDescription
sound_power_levels_dbThe determinations of , in dB: two for a machine up to 10 m long, four above.
calibrated_level_db, in dB re 1 pW.
machine_length_mLength of the machine under test, in metres, which sets how many determinations are needed.

Returns: The correction and the determinations it came from.

Raises

ExceptionWhen
ValueErrorfor the wrong number of determinations or a non-finite level.
turbine_sound_power(
pressure_levels_db: ArrayLike,
*,
surface_area_m2: float,
background_levels_db: ArrayLike | None,
environmental_correction_db: float,
overhead_mask: ArrayLike | None = None,
) -> TurbineSoundPowerResult

Surface sound pressure level and sound power level of a turbine set (8.1 to 8.4).

Each position’s level is first corrected for the background by Table 2 (8.1, turbine_background_correction); the corrected levels are energy-averaged and the environmental correction subtracted, Equation (2),

and the surface term closes it, Equation (3), .

A background less than 3 dB below at any position makes the result an upper limit (4.2) and a above 7 dB puts the room outside the standard (8.3); both emit a SoundPowerWarning and leave TurbineSoundPowerResult.conforms False.

Parameters

NameDescription
pressure_levels_db with the turbine set operating, one per position, in dB re 20 µPa: at least the four key positions that remain once the overhead one is deleted.
surface_area_m2, from turbine_measurement_surface, in square metres.
background_levels_dbThe A-weighted background level at each position, in dB. It is often impossible to measure with the turbine stopped, and NOTE 1 of 8.1 allows it to be evaluated by computation instead. None states that no background was determined, and no correction is applied.
environmental_correction_db, in dB: from turbine_environmental_correction or turbine_reference_source_correction, or 0.0 outdoors (A.4).
overhead_maskWhich positions are overhead (TurbineMicrophoneArray.overhead_mask), for the effect of deleting them (NOTE of 7.2.2); None if not needed.

Returns: The per-position levels, the surface level and the sound power level.

Raises

ExceptionWhen
ValueErrorfor fewer than four positions, arrays of different lengths or non-finite values.
TurbineEnvironmentalCorrection(
environmental_correction_db: float,
method: Literal['absorption', 'reference source'],
surface_area_m2: float | None = None,
absorption_area_m2: float | None = None,
reference_levels_db: np.ndarray | None = None,
calibrated_level_db: float | None = None,
)

The environmental correction K of a test room (clause 8.2, Annex A).

Built by turbine_environmental_correction (A.3.1, Figure A.3) or by turbine_reference_source_correction (A.3.2).

Attributes

NameDescription
environmental_correction_db, in dB.
method"absorption" (A.3.1) or "reference source" (A.3.2).
surface_area_m2 (A.3.1), in square metres, or None.
absorption_area_m2 (A.3.1), in square metres, or None.
reference_levels_dbThe determinations of the reference source’s sound power level (A.3.2), in dB, or None.
calibrated_level_db (A.3.2), in dB, or None.
TurbineEnvironmentalCorrection.plot(
ax: Axes | None = None,
*,
language: str = 'en',
**kwargs: Any,
) -> Axes

Draw Figure A.3 with this room on it.

Parameters

NameDescription
axExisting axes, or None to create a figure.
languageLabel language, "en" (default) or "es".
kwargsForwarded to the curve of Figure A.3.

Returns: The axes.

property

, the abscissa of Figure A.3, or None (A.3.2).

TurbineMeasurementSurface(
reference_boxes: tuple[TurbineReferenceBox, ...],
lengths_m: np.ndarray,
widths_m: np.ndarray,
heights_m: np.ndarray,
area_m2: float,
measurement_distance_m: float = 1.0,
)

The measurement surface of a turbine set and its area (clause 7.1).

Built by turbine_measurement_surface. The parallelepipeds are the reference boxes grown by the measurement distance on every side except the floor: 1 m wider on each side, 1 m taller, and 1 m longer at each end of the set.

Attributes

NameDescription
reference_boxesThe reference boxes, in order along the shaft.
lengths_m of each parallelepiped of the measurement surface, in metres.
widths_m, in metres.
heights_m, in metres.
area_m2 of Equation (1), in square metres.
measurement_distance_m, 1 m (7.1).

TurbineMeasurementSurface.enveloping_area_m2

Section titled “TurbineMeasurementSurface.enveloping_area_m2”

property

The exact area of the stepped surface, in square metres.

The tops, the long sides and the two ends of the parallelepipeds, and at each step the part of either cross-section the other does not cover. Equation (1) counts every transverse face together as , which is exactly their area when the cross-sections shrink from one largest section towards both ends, each containing the next, as in both drawings of Figure 2. Otherwise it can err either way: it counts too much when the tallest and the widest parallelepipeds are different ones, and too little when a small section stands between two large ones.

Returns: The area of the surface as drawn, in square metres.

property

of Equation (1), in metres.

property

of Equation (1), in metres.

TurbineMeasurementSurface.plot(
ax: Axes | None = None,
*,
view: Literal['plan', 'elevation'] = 'plan',
language: str = 'en',
**kwargs: Any,
) -> Axes

Draw the reference boxes and the measurement surface around them.

Parameters

NameDescription
axExisting axes, or None to create a figure.
view"plan" (default), seen from above, or "elevation", seen from the side.
languageLabel language, "en" (default) or "es".
kwargsForwarded to the outline of the measurement surface.

Returns: The axes.

property

Where each parallelepiped starts and ends along the shaft, in metres.

Returns: Z + 1 abscissae from the front end of the measurement surface (0) to its rear end.

TurbineMicrophoneArray(
surface: TurbineMeasurementSurface,
positions_m: np.ndarray,
labels: tuple[str, ...],
overhead_mask: np.ndarray,
microphone_height_m: float,
spacing_m: float,
turbine_boxes: int,
positions_per_box: tuple[int, ...],
)

The key and additional microphone positions of Figure 2 (clause 7.2).

Built by turbine_microphone_positions. Coordinates are in metres: x along the shaft from the front end of the measurement surface, y across it from the shaft line (key position 2 on the positive side) and z above the reflecting plane. The positions run once round the surface at the microphone height, from key position 1 through 2, 5 and 4 back towards 1, and then along the overhead line in the vertical plane of the shaft: up the front end above key position 1, across the top through 3 and down the rear end towards 5.

Attributes

NameDescription
surfaceThe measurement surface the positions lie on.
positions_mOne row (x, y, z) per position, in metres.
labels"1" to "5" for the key positions, "" for the additional ones.
overhead_maskWhich positions are on the overhead line, the ends above the row round the sides and the top of the surface.
microphone_height_mHeight of the positions round the sides, in metres.
spacing_mThe largest distance allowed between neighbours, in metres.
turbine_boxesHow many of the reference boxes enclose the turbine; key positions 2, 3 and 4 stand in the plane that follows them.
positions_per_boxPositions on one long side within the length of each parallelepiped (the other side mirrors them).

property

Number of positions, key and additional, overhead included.

property

Whether every parallelepiped has a position on its long sides (7.2.2).

7.2.2 asks for “at least one measurement section at each casing”. The library knows the reference boxes, not the casings inside them, so it judges each parallelepiped: where one box holds several casings (the HP and IP turbines of Figure 2 b), whether each of them is reached is read from positions_m.

property

Which positions are the five key positions of Figure 2.

TurbineMicrophoneArray.plot(
ax: Axes | None = None,
*,
view: Literal['plan', 'elevation'] = 'plan',
language: str = 'en',
**kwargs: Any,
) -> Axes

Draw the positions on the measurement surface, as Figure 2 does.

Key positions are crosses with their number, additional ones circles. In elevation only the near side is drawn, the side of key position 4 as in both elevations of Figure 2, with the overhead line.

Parameters

NameDescription
axExisting axes, or None to create a figure.
view"plan" (default) or "elevation".
languageLabel language, "en" (default) or "es".
kwargsForwarded to the outline of the measurement surface.

Returns: The axes.

TurbineNoiseDeclaration(
turbine: str,
noise_control: str,
measured_at: str,
tonal: bool,
operating_conditions: tuple[str, ...],
position_levels_db: tuple[np.ndarray, ...],
surface_pressure_levels_db: tuple[float, ...],
sound_power_levels_db: tuple[float, ...],
)

The minimum report of clause 10, one row per operating condition.

Built by turbine_noise_declaration.

Attributes

NameDescription
turbineDescription of the turbine set under test, clause 10 a).
noise_controlThe noise control screens and enclosures fitted, clause 10 a) (and 1.1.5).
measured_atDate and time of the measurements, clause 10 f).
tonalWhether the sound contains prominent discrete tones, which selects the row of Table 1.
operating_conditionsThe operating conditions, clause 10 b).
position_levels_dbThe A-weighted levels at each position, corrected for the background, per condition, clause 10 c).
surface_pressure_levels_dbThe A-weighted surface sound pressure level per condition, clause 10 d), in dB re 20 µPa.
sound_power_levels_dbThe A-weighted sound power level per condition as determined by Equation (3), in dB re 1 pW; clause 10 e) reports it as reported_sound_power_levels_db.

property

The operating condition with the highest sound power level (6.2).

Found on the levels before the rounding of 9.4 g, so two conditions that report the same whole decibel are still told apart; on an exact tie it is the first condition listed.

TurbineNoiseDeclaration.plot(
ax: Axes | None = None,
*,
language: str = 'en',
**kwargs: Any,
) -> Axes

Draw the sound power level of each operating condition.

Parameters

NameDescription
axExisting axes, or None to create a figure.
languageLabel language, "en" (default) or "es".
kwargsForwarded to the bars.

Returns: The axes.

TurbineNoiseDeclaration.reported_sound_power_levels_db

Section titled “TurbineNoiseDeclaration.reported_sound_power_levels_db”

property

The sound power levels rounded to the nearest whole decibel (9.4 g).

What clause 10 e) reports, in dB re 1 pW, one per operating condition.

TurbineNoiseDeclaration.standard_deviation_db

Section titled “TurbineNoiseDeclaration.standard_deviation_db”

property

The standard deviation of Table 1 for this kind of sound, in dB.

5 dB for a source with prominent discrete tones, 4 dB for a broadband one: the uncertainty measurements to the survey method tend to stay within (1.2).

property

The statement clause 10 requires the report to contain.

TurbineReferenceBox(
length_m: float,
width_m: float,
height_m: float,
label: str = '',
)

One reference box of a turbine set (clause 7.1).

The smallest rectangular box that just encloses one part of the set, its lagging and any noise control screen or enclosure included, and terminates on the reflecting plane (3.5 and 7.1). The boxes of a set stand in juxtaposition along its shaft, in the order they are passed, each centred on the shaft line. A set whose boxes are flush on one long side and step only on the other, as Figure 2 a draws it, is modelled as if every box were centred: Equation (1) does not change, but beside a narrower box the positions of each long side stand half the difference in width across from where the drawing puts them.

Attributes

NameDescription
length_mLength along the shaft, in metres.
width_mWidth across the shaft, in metres.
height_mHeight above the reflecting plane, in metres.
labelWhat the box encloses, for the figure ("LP turbine").

Raises

ExceptionWhen
ValueErrorif a dimension is not a positive finite number.
TurbineSoundPowerResult(
pressure_levels_db: np.ndarray,
background_levels_db: np.ndarray | None,
background_corrections_db: np.ndarray,
corrected_levels_db: np.ndarray,
environmental_correction_db: float,
surface_area_m2: float,
surface_pressure_level_db: float,
sound_power_level_db: float,
overhead_mask: np.ndarray | None = None,
)

A-weighted surface sound pressure level and sound power level (8.3, 8.4).

Built by turbine_sound_power.

Attributes

NameDescription
pressure_levels_db measured with the turbine set operating, one per position, in dB re 20 µPa.
background_levels_dbThe background level at each position, in dB, or None when it was not determined.
background_corrections_dbThe correction of Table 2 at each position, in dB (zero where no background was given).
corrected_levels_dbThe levels after 8.1, in dB.
environmental_correction_db, in dB.
surface_area_m2, in square metres.
surface_pressure_level_db of Equation (2), subtracted, in dB re 20 µPa.
sound_power_level_db of Equation (3), in dB re 1 pW.
overhead_maskWhich positions are overhead, or None.

TurbineSoundPowerResult.arithmetic_mean_allowed

Section titled “TurbineSoundPowerResult.arithmetic_mean_allowed”

property

Whether the range of the position levels is within 5 dB (NOTE of 8.3).

TurbineSoundPowerResult.arithmetic_mean_db

Section titled “TurbineSoundPowerResult.arithmetic_mean_db”

property

The plain average of the corrected position levels, subtracted.

The NOTE of 8.3 allows it in place of Equation (2) when level_range_db does not exceed 5 dB, and says it “should not differ by more than 0,7 dB” from Equation (2). It is never above the energy average, and within a 5 dB range it trails it by at most 0,707 dB (two levels 5 dB apart, the louder at 41 % of the positions), the NOTE’s 0,7 dB to its one decimal.

property

Whether the determination is in full conformity with the standard.

Every background at least 3 dB below (4.2) and within 7 dB (8.3). Only such a determination can carry the statement of clause 10.

TurbineSoundPowerResult.level_differences_db

Section titled “TurbineSoundPowerResult.level_differences_db”

property

The level with the source operating less the background, per position.

property

The range of the corrected position levels, in dB.

property

Per position, whether its background was less than 3 dB below (4.2).

Returns: One boolean per position, True where the position makes the determination an upper limit, or None without a background.

TurbineSoundPowerResult.overhead_effect_db

Section titled “TurbineSoundPowerResult.overhead_effect_db”

property

How much the overhead positions move , in dB.

The sound power level from every position less the one without the overhead positions, on the same surface. The NOTE of 7.2.2 lets the overhead positions be deleted when this is within 1,0 dB. None without an overhead mask, or when every position or none is overhead.

TurbineSoundPowerResult.overhead_may_be_deleted

Section titled “TurbineSoundPowerResult.overhead_may_be_deleted”

property

Whether the overhead positions move the level by no more than 1,0 dB.

TurbineSoundPowerResult.plot(
ax: Axes | None = None,
*,
position_labels: Sequence[str] | None = None,
language: str = 'en',
**kwargs: Any,
) -> Axes

Draw the corrected level at each position with the surface level.

The bars stand in the order the levels were given. Pass the TurbineMicrophoneArray.labels of the array they were measured on and the axis names the key positions as Figure 2 numbers them; without them it counts the bars from 1.

Parameters

NameDescription
axExisting axes, or None to create a figure.
position_labelsOne label per position, "1" to "5" for the key positions and "" for the others, or None.
languageLabel language, "en" (default) or "es".
kwargsForwarded to the bars of the corrected levels.

Returns: The axes.

Raises

ExceptionWhen
ValueErrorif position_labels does not have one entry per position.

TurbineSoundPowerResult.reported_sound_power_level_db

Section titled “TurbineSoundPowerResult.reported_sound_power_level_db”

property

rounded to the nearest whole decibel (9.4 g).

property

Whether a position’s background was less than 3 dB below (4.2).

Then no valid measurement could be made, and the result is only an indication of the upper limit of the sound power level.

TurbineTestEnvironmentCheck(
environmental_correction_db: float,
ratio: float | None,
wind_speed_m_s: float | None = None,
)

Whether the test environment qualifies for IEC 61063 (A.3.3, 4.3).

Built by check_turbine_test_environment. The verdicts are read from the correction and the wind speed against the 7 dB, 6 m/s and 1 m/s the standard prints, so they are not fields.

Attributes

NameDescription
environmental_correction_db, in dB.
ratio, when the correction came from the room absorption, else None.
wind_speed_m_sThe wind speed outdoors, in m/s, or None.

property

dB (A.3.3).

property

The verdict: the environment qualifies for measurements to the standard.

TurbineTestEnvironmentCheck.plot(
ax: Axes | None = None,
*,
language: str = 'en',
**kwargs: Any,
) -> Axes

Draw Figure A.3 with the 7 dB limit and this environment on it.

Parameters

NameDescription
axExisting axes, or None to create a figure.
languageLabel language, "en" (default) or "es".
kwargsForwarded to the curve of Figure A.3.

Returns: The axes.

property

The wind speed is below 6 m/s (4.3), or None indoors.

TurbineTestEnvironmentCheck.windscreen_advised

Section titled “TurbineTestEnvironmentCheck.windscreen_advised”

property

The wind is above 1 m/s, where 4.3 asks for a windscreen.