INCLUSION OF PAGE METHOD WITHIN THE TWO-POINT IN SITU METHOD
FOR DETERMINING SOUND POWER LEVELS
by
Christopher R. Reynolds
A senior thesis submitted to the faculty of
Brigham Young University - Idaho
in partial fulfillment of the requirements for the degree of
Bachelor of Science
Department of Physics
Brigham Young University - Idaho
April 2018
BRIGHAM YOUNG UNIVERSITY - IDAHO
DEPARTMENT APPROVAL
of a senior thesis submitted by
Christopher R. Reynolds
This thesis has been reviewed by the research advisor, research coordinator,and department chair and has been found to be satisfactory.
Date Jon Paul Johnson, Advisor
Date Richard Datwyler, Comittee Member
Date Ryan Nielson, Comittee Member
Date David Oliphant, Comittee Member
Date Stephen McNeil, Department Chair
Date R. Todd Lines, Senior Thesis Coordinator
ABSTRACT
INCLUSION OF PAGE METHOD WITHIN THE TWO-POINT IN SITU METHOD
FOR DETERMINING SOUND POWER LEVELS
Christopher R. Reynolds
Department of Physics
Bachelor of Science
The Acoustical Group at the Brigham Young University Physics department
has developed a new technique for processing sound. The Phase and Ampli-
tude Gradient Estimator (PAGE method) has been shown to correctly calcu-
late intensity and energy in a plane-wave tube[6].
Industrial manufactures currently have a few simple ways to test the sound
pollution of their large equipment. While there are International Standards in
place, they are extremely difficult to meet and follow. There has been work
done at Brigham Young University to try and implement a cheaper, faster,
and more efficient form of determining sound power level.
This thesis looks into the research and results of adding the PAGE meth-
ods into the Two-Point In Situ method, as well as an analysis of the PAGE
method’s ability to calculate energy density inside of a reverberation chamber.
It will also test the Two-Point In Situ with a less-than ideal sound source.
ACKNOWLEDGMENTS
First, I would like to acknowledge my wife, Cameo. She pushed me to
pursue Physics when I didn’t know what direction to take. Over the past 5
years she has sacrificed a lot for my educational pursuits. I would not have
achieved so much without her support.
Secondly, I would like to acknowledge the faculty of the BYU-Idaho Physics
Department. Their willingness to provide guidance in course work, research
projects and career advice has been priceless. I have developed a special skills
and abilities because of their teachings.
Thirdly, I would like to express my gratefulness towards Dr. Scott Sommer-
feldt, graduate students Caleb Goates and Travis Hoyt for their guidance and
assistance during this research. I would like to also acknowledge Dr. Kent Gee
and Dr. Tracianne Neilsen for their assistance and direction given. I would
like to express my appreciation towards the Acoustics group at Brigham Young
University for their support with facilities and equipment.
Lastly, I would like thank the National Science Foundation for providing
the funding for the REU program at Brigham Young University under the
contract PHY-194312.
Contents
Table of Contents xi
List of Figures xiii
1 Introduction 11.1 Standards for Industry . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Previous Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.3 Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2 Background 32.1 Background of the ISO 3741 Standards . . . . . . . . . . . . . . . . . 32.2 Background of the Two-Point In Situ Method . . . . . . . . . . . . . 4
2.2.1 Calculating the Room Constant . . . . . . . . . . . . . . . . . 42.2.2 Calculating the Directivity Factor . . . . . . . . . . . . . . . . 52.2.3 Calculating Sound Power . . . . . . . . . . . . . . . . . . . . . 5
2.3 Theory - PAGE Method . . . . . . . . . . . . . . . . . . . . . . . . . 6
3 Experimental Procedure 93.1 Signal Processors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93.2 Setup for the Unknown Sound Source . . . . . . . . . . . . . . . . . . 103.3 ISO 3741 Measurements . . . . . . . . . . . . . . . . . . . . . . . . . 103.4 Two-Point In Situ Measurements . . . . . . . . . . . . . . . . . . . . 11
4 Results 154.1 ISO 3741 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154.2 Two-Point In Situ and PAGE . . . . . . . . . . . . . . . . . . . . . . 164.3 Error Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.3.1 Addition of Water . . . . . . . . . . . . . . . . . . . . . . . . 184.3.2 Error Calculations . . . . . . . . . . . . . . . . . . . . . . . . 194.3.3 Error in Code . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
5 Future Research 235.1 Error with Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235.2 PAGE Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
xi
xii CONTENTS
5.3 Two-Point In Situ Method . . . . . . . . . . . . . . . . . . . . . . . . 25
A Two-Point In Situ AFR 27
B Two-Point In Situ - Pulse 39
C ISO 3741 57
Bibliography 64
Index 66
List of Figures
2.1 This table shows how the PAGE and Traditional methods differ incalculating the PED and KED. . . . . . . . . . . . . . . . . . . . . . 6
3.1 ISO 3741 standard measurement setup with the blender under load.The location of the 6 microphones were in accordance to the ISO 3741. 11
3.2 Microphone probe spacer is 2.5 cm for a total of 5 cm between micro-phones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.3 A setup for the Two-Point In Situ method. The arrow A shows theprobe’s location in the near-field for the reference source, and in the far-field for the unknown source. The arrow B shows the string connectingthe two sources. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.1 ISO 3741 results for the blender base and under load. . . . . . . . . . 164.2 ISO 3741 results are compared with the Two-Point In Situ results for
the blender under no load. At this location the calculated sound powerwas closer to the averaged for both the Traditional and PAGE methods. 17
4.3 ISO 3741 results are compared with the Two-Point In Situ methodresults for the blender under load. . . . . . . . . . . . . . . . . . . . . 18
4.4 Confirmation of the Pulse system vs Acoustic Field Recorder. Thismeasurement only validates that the computational code worked asexpected. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.5 Probe was located in a resonance point both the Traditional and PAGEmethod performed poorly. . . . . . . . . . . . . . . . . . . . . . . . . 21
5.1 Two-Point In Situ calculation using the Narrow Band frequencies re-turned by the Pulse system with functions written by the PAGE team. 24
5.2 Two-Point In Situ calculation using the One-Third-Octave frequenciesreturned by the Pulse system with functions written by the PAGE team. 24
xiii
Chapter 1
Introduction
1.1 Standards for Industry
Sound power can be defined as the total sound energy emitted by a source per time[1].
Sound power is reported at different frequency levels determined from sound pressure
measurements[3]. Legislation and health administrations have set safety regulations
regarding the sound radiation produced by industrial equipment[1]. When possible,
manufacturers will measure and publish the sound power levels[2] in order to ensure
that the sound produced by the equipment they produce is in accordance with those
regulations. International Standards have been setup that dictate the necessary steps
for determining the sound power levels of equipment by using sound pressure. Manu-
facturers can take their measurements inside of a reverberation chamber that follows
the requirements listed in the International Standards[3]. If measurements are made
in accordance to the International Standards for sound pressure measurements inside
of a reverberation chamber, known as the ISO 3741, the standard deviation in the
results can be expected to be below the standard deviations given in the standard[3].
1
2 Chapter 1 Introduction
1.2 Previous Work
Brigham Young University’s Physics department has an acoustics research group with
a team working on methods to determine sound power levels that are not as difficult as
the ISO 3741. This method is called the Two-Point In Situ method[4][2][5]. They are
able to calculate the sound power levels of an ideal sound source inside a reverberant
environment with values of under 1 dB for the standard deviation[4][2].
Another team in the acoustics research group is working on developing new pro-
cessing methods to processes the data collected from the sound pressure measure-
ments. This new process is called the PAGE method (Phase and Amplitude Gradient
Estimator). Their research has shown that the PAGE method more accurately cal-
culates the sound intensity, and energy density of anechoic plane waves[7][6].
1.3 Objectives
There were two primary objectives of this research. First was to test the PAGE
method’s ability to calculate energy density inside a reverberant environment. The
second objective was testing the Two-Point In Situ method with a less-ideal sound
source.
Chapter 2
Background
2.1 Background of the ISO 3741 Standards
The properties of a room will affect the sound pressure and therefore will affect
the sound power level calculations. Ideally, a reverberation chamber creates a diffuse
environment for the sound field. In a diffuse environment, the locally averaged energy
density is distributed equally throughout the room. With these ideal conditions, the
sound power is proportional to the spatially averaged energy density[2]. However,
this ideal situation rarely exists.To correct for gaps between this ideal and the real
world, the ISO 3741 has a specific method to estimate a time-average squared sound
pressure in a reverberation chamber that meets certain requirements. It also requires
6 microphones with specific requirements on their locations[3]. The ISO 3741 also
requires that the sound source is tested under a variety of operating conditions and
loads[3].
3
4 Chapter 2 Background
2.2 Background of the Two-Point In Situ Method
A research group at Brigham Young University has been working on developing a new
method for determining the sound power using the Hopkins-Stryker equation[4][2][5].
This method is known as Two-Point In Situ method. Two refers to the two measure-
ments taken, one taken in the far-field, the other in the near-field. Instead of using
the local spatial average of the total energy density, work by Marquez et al. proved
that a time average Generalized Energy Density (GED) with a weighting factor equal
to 0.25 more accurately calculates the sound power of the source [4][2].
〈wG,β〉t = β〈wP 〉t + (1− β)〈wK〉t (2.1)
Where β represents the weighting factor, 〈wP 〉t represents the Potential Energy Den-
sity (PED) and 〈wK〉t represents the Kinetic Energy Density (KED). The GED,
〈wG,β〉t is used in the Modified Hopkins-Stryker Equation (MHSE) below.
〈wG,β〉t =〈Π〉t2c
[γ(θ0, φo)
4πr4iKi,β +
4
R
](2.2)
Where 〈Π〉t represents the sound power, c is the speed of sound, R represents the
room constant, r is the distance from the probe to the source γ(θ0, φ0) represents
the directivity factor with θ0 and φ0 as the polar and azmuthal angles of the probe’s
location as measured from the acoustical center of the sound source. The actual
values of γ(θ0, φ0) for the reference sound source used in this research were calculated
by Marquez et al. inside of an anechoic chamber[2][5]. K is the Near-Field correction.
For the full derivation see work by Jensen[4].
2.2.1 Calculating the Room Constant
Calculating the sound power of an unknown source involves jumping through some
algebraic hoops. The first hoop required is calculating the room constant using the
2.2 Background of the Two-Point In Situ Method 5
reference source.
R =16π(〈w2,G,β〉t〈w1,G,β〉t−1
)γ(θ0, φ0)
(K2,β
r22− K1,β
r21
〈w2,G,β〉t〈w1,G,β〉t
) (2.3)
The subscripts 1 and 2 represent measurements taken for the reference source inside
the near and far fields.
2.2.2 Calculating the Directivity Factor
After the room constant has been calculated, the next algebraic hoop to jump through
is calculating the directivity factor for the unknown source.
γ′(θ′
0φ′
0) =16π(〈w4,G,β〉t〈w3,G,β〉t
− 1)
R(K4,β
r24− K3,β
r23
〈w4,G,β〉t〈w3,G,β〉t
) (2.4)
Where γ′(θ′0φ
′0) represents the directivity factor and angles for the unknown sound,
and subscripts 3 and 4 represent measurements taken for the unknown source inside
the near and far fields.
2.2.3 Calculating Sound Power
The sound power of the unknown source can then be calculated by the last algebraic
hoop.
〈Π′〉t =2c〈w3,G,β〉t(
γ′(θ′0,φ
′0)
4πr43K3,β + 4
R
) (2.5)
Where 〈Π′〉t represents the sound power of the unknown source. The functions to
handle these calculations were written and updated by Jensen[4]. The code provided
in Appendix A calls on these functions but does not include their code.
6 Chapter 2 Background
2.3 Theory - PAGE Method
Brigham Young University has been developing the PAGE (Phase and Amplitude
Gradient Estimator) method over the past few years. The PAGE method is a new way
to calculate the Potential Energy Density (PED) 〈wP 〉 and Kinetic Energy Density
(KED) 〈wK〉 based on several pressure measurements with a probe. In this research,
the PAGE calculations were compared to the traditional approach for calculating
the PED and KED used in the Two-Point In Situ method. PAGE has demonstrated
distinct advantage over the traditional method when used to measure sound intensities
and energies inside a plane-wave tube[6]. For more information on the derivation on
the PAGE method see Whiting et al.[7].
Energy Densities Traditional Method PAGE Method
PEDG11+G22+2Re
{G12
}8ρc2
G11+G22+2
∣∣G12
∣∣8ρc2
KEDG22+G11−2Re
{G12
}8ωρd2
18ωρd2
[G11 +G22 − 2
∣∣G12
∣∣+G22+G11+2
∣∣G12
∣∣4
(arg{H12
})2]
Figure 2.1 This table shows how the PAGE and Traditional methods differin calculating the PED and KED.
The Traditional method uses only the real component of the cross-spectrum for
calculating the PED and KED. The PAGE method uses a different approach. It
uses the magnitude of the cross-spectrum. This requires both the real and imaginary
components of the cross-spectrum. The cross-spectrum is used as part of the fast
Fourier Transform (FFT) for signal analysis. It calculates the of the cross-correlation,
or cross-covariance, between a pair of microphones [8]. G12 represents the cross-
spectrum between microphones 1 and 2. The auto spectrum, also known as the power
spectrum, is also used as part of the FFT for signal analysis[8], and is represented as
2.3 Theory - PAGE Method 7
G11 and G22. The H12 is the ensemble-averaged transfer function and it is calculated
by dividing the cross spectrum (G12) by the auto spectrum (G11) [7].
Chapter 3
Experimental Procedure
A variety of equipment and software was used to make the measurements and pro-
cess the results. A common kitchen blender was the sound source tested. A brief
description of the process for making measurements following the ISO 3741 and the
Two-Point In Situ methods, mentioned in the previous chapter, will be discussed
further.
3.1 Signal Processors
The research team developing the PAGE Method (Phase and Amplitude Gradient
Estimator) used software created by Dr. Kent Gee and members of the BYU Acoustics
Research Group. The program is a LabVIEW VI (Virtual Instrument), called the
Acoustic Field Recorder (AFR)[6]. It receives and processes the signals received by
microphones via a National Instruments data-acquisition system (DAQ). Research on
the PAGE method extensively use the AFR when taking measurements. The research
team developing the Two-Point In Situ method extensively use a well known signal
processor, Bruel & Kjr Pulse system. The Pulse system includes both the software
9
10 Chapter 3 Experimental Procedure
and the data-acquisition system.
3.2 Setup for the Unknown Sound Source
A common kitchen blender was chosen over a speaker because it is considered a less-
ideal source. A blender is considered a less-ideal source because the position of the
acoustic center is less clear and the radiation pattern and spectra are considered to be
less uniform[4]. As mentioned in the previous chapter, ISO 3741 measurements were
taken with the blender under multiple conditions and loads[3]. The blender was tested
under a specific load and under no load, both with the same operating conditions. The
operating condition was on puree with the speed set on high. This setting was chosen
as it is a common setting used in households. The setup of the blender under no
load included only the base of the blender. The loaded test included the pitcher filled
with 4 cups of water as measured by the marker on the pitcher. Water was chosen
specifically because it would allow for the blender to be uniformly tested under load
while allowing for the most consistent sound while operating.
3.3 ISO 3741 Measurements
Following the strict guidelines, multiple measurements were taken in accordance to
ISO 3741 standards. See Figure 3.1. Six microphones were used at various locations in
the reverberation chamber. Multiple locations help ensure that the measurements are
in accordance. The blender was placed approximately 1.5 meters above the ground
on top of a stand. For each condition and location the measurement was taken for 60
seconds.
3.4 Two-Point In Situ Measurements 11
Figure 3.1 ISO 3741 standard measurement setup with the blender underload. The location of the 6 microphones were in accordance to the ISO 3741.
3.4 Two-Point In Situ Measurements
As discussed in previous work, the Two-Point In Situ method requires that 4 mea-
surements are taken [4][2][5]. A measurement is taken with the probe in the near
field, and another in the far-field, for both the reference source and the unknown
source, as discussed in the previous chapter. Shown in Figure 3.2, the vector inten-
sity probe, made up of 6 G.R.A.S. Type 50VI microphones, was used to take the
measurements[2]. The microphones were in pairs each spaced 5 centimeters apart.
12 Chapter 3 Experimental Procedure
Figure 3.2 Microphone probe spacer is 2.5 cm for a total of 5 cm betweenmicrophones
To reduce errors in the location of the probe, a string was stretched between the
two sources. The string was attached to each source at their estimated acoustical
center. Seen in Figure 3.3 as point B. This helped to help identify the values of the
polar and azimuthal angles (θ0, φ0), as mentioned in the previous chapter. A rotation
system for recording measurements was set up. It was typical to make a near-field
measurement for the reference source using the AFR (Acoustic Field Recorder), then
the Pulse. Leaving the probe in that location, a far-field measurement was taken for
the unknown source with the Pulse, then the AFR. The probe was moved to be in
the near-field of the unknown source, both measurements taken. Finally the far-field
of the reference source was measured for the both processors. This can be seen in
Figure 3.3.
3.4 Two-Point In Situ Measurements 13
Figure 3.3 A setup for the Two-Point In Situ method. The arrow A showsthe probe’s location in the near-field for the reference source, and in the far-field for the unknown source. The arrow B shows the string connecting thetwo sources.
Chapter 4
Results
4.1 ISO 3741 Results
After the measurements were obtained, computational codes written in MATLAB
were used to handle the processing and data analysis. See Appendix A for the MAT-
LAB code.
In the ISO 3741 standard, there is an option to achieve Engineer Grade results
called A-weighting[3]. Most industry professionals will choose to weight their results.
A weighting adjusts the One-Third Octave frequencies (OTO) to be closely related
to how we hear the sound[3]. Frequencies below the Schroder frequency and above
the Spacial Nyquist frequency are not meaningful[3].
The averaged total weighted sound power as calculated by the ISO 3741 for the
blender base and under load are 94.6 and 89.3 dBA respectfully, with a standard
deviation equal to 1 dB[3]. As shown in Figure 4.1.
15
16 Chapter 4 Results
102
103
104
Frequency (Hz)
40
50
60
70
80
90
100
Lw
(d
B r
e 1
pW
)
Blender ISO3741 Standards - Weighted
Base - ISO3741 | Lw
A = 94.6 dBA
Load - ISO3741 | Lw
A = 89.3 dBA
Schroeder Frequency
Spatial Nyquist Frequency
Figure 4.1 ISO 3741 results for the blender base and under load.
4.2 Two-Point In Situ and PAGE
Comparing the results from the multiple experiments gave an averaged total sound
power and an averaged standard deviation for those results. The averaged results for
the total sound power for the base, as calculated with the Traditional method, was
89.1 dBA with a standard deviation of 1 dB. For the total sound power for the base
calculated with the PAGE (Phase and Amplitude Gradient Estimator) method was
90.2 dBA with a standard deviation of 2.1 dB. See Figure 4.2.
4.2 Two-Point In Situ and PAGE 17
103
104
Frequency (Hz)
40
50
60
70
80
90
100
Lw
(d
BA
re
1 p
W)
Base - Traditional vs PAGE
Base - ISO3741 | Lw
A = 94.6 dBA
Traditional - | Lw
A = 89.9 dBA
PAGE | Lw
A = 90.1 dBA
Schroder Frequency
Nyquist Frequency
Figure 4.2 ISO 3741 results are compared with the Two-Point In Situ resultsfor the blender under no load. At this location the calculated sound powerwas closer to the averaged for both the Traditional and PAGE methods.
The averaged results for the total sound power for the blender under load, as
calculated with the Traditional method, was 86.1 dBA with a standard deviation of
0.5 dB. For the total sound power for the base calculated with the PAGE (Phase and
Amplitude Gradient Estimator) method was 89.7 dBA with an uncertainty of 1.7 dB.
As seen in Figure 4.3, the Traditional method and the PAGE method calculated the
total sound power was 86.5 and 85.8 dBA.
18 Chapter 4 Results
103
104
Frequency (Hz)
40
50
60
70
80
90
100
Lw
(d
B r
e 1
pW
)
Loaded Weighted - Traditional vs PAGE
Traditional | Lw
A = 86.5 dBA
PAGE | Lw
A = 85.8 dBA
Load - ISO3741 | Lw
A = 89.3 dBA
Schroeder Frequency
Spatial Nyquist Frequency
Figure 4.3 ISO 3741 results are compared with the Two-Point In Situmethod results for the blender under load.
The large discrepancy between the ISO 3741 and the Two-Point In Situ method
for calculating the sound power levels with less-ideal sounds still needs more research.
4.3 Error Analysis
4.3.1 Addition of Water
As mentioned in Chapter 2, deciding to use water introduced both expected and
unexpected errors. One of the expected errors introduced by water was the affect
it had on the calculated sound power. It is interesting to note how much lower the
sound power levels are for the blender when the water was added. Since the blender
was under load, measuring only the sound produced by the motors is difficult because
of the sound of the water moving. Comparing the total sound power calculated using
the ISO 3741 for the base and for the loaded blender, as seen in Figure 4.2 and 4.3, the
total sound power dropped from 94.6 dB to 89.3 dB. This drop, of 5 dB in the total
4.3 Error Analysis 19
sound power, was also seen for the Two-Point In Situ method. The water added error
in the initial measurement process as well. The acoustical center of the sound source
was thrown off by the water. It appears that the Two-Point In Situ method relies
heavily on the location of the acoustical center, the origin of the sound produced, in
order to accurately calculate the total sound power[4].
4.3.2 Error Calculations
The calculated standard deviation is not as sufficient or accurate as it could be.
A more complete error analysis needs to be considered. The human error in mea-
surements, equipment error and errors in the calculations were not included in the
computational codes provided. Fixing this problem is a future project that will be
discussed further in the next chapter.
4.3.3 Error in Code
I wrote the computational code that combined functions and methods from both
teams using the AFR system. It is very possible that this code could have introduced
error. However, the errors in the code appear to be small when the PAGE functions
are used with measurements taken by the AFR. See Figure 4.4. This figure was created
initially as a test to determine if the combination of functions worked as expected.
Unlike the previous data, this data was taken inside the small reverberation chamber
at BYU. It was part of another experiment currently being researched involving a
specific ideal sound source.
20 Chapter 4 Results
102
103
104
Frequency (Hz)
40
50
60
70
80
90
100
Lw
(d
BA
re
1e
-12
)
Pulse Results vs AFR Results
Traditional Pulse Results
ISO 3741 Pulse Results
Traditional AFR Results
PAGE AFR Results
Schroder Frequency
Spatial Nyquist Frequency
Figure 4.4 Confirmation of the Pulse system vs Acoustic Field Recorder.This measurement only validates that the computational code worked asexpected.
It is plausible that the large deviation in the calculated sound power levels are
correlated with errors made in the measurement recording process. Each test had
large areas of human introduced errors. The estimation of the acoustical center of
the blender could have played a large role. The locations of the probe and sound
sources inside the reverberation chamber was a critical problem. There was one test
in particular that the results directly shows the results of the probe or sound source
located in a resonance point in the room, see Figure 4.5. A resonance point in a
reverberation chamber is a position in the room that is either louder or quieter when
in that specific spot. It is difficult to avoid these points in any chamber.
4.3 Error Analysis 21
102
103
104
Frequency (Hz)
40
50
60
70
80
90
100
110
Lw
(dB
re 1
pW
)
PAGE vs Traditional - Bad Location
Base - ISO3741 | Lw
= 94.6 dB
Traditional - Weighted | Lw
= 88.3 dB
PAGE - Weighted | Lw
= 116.4 dB
Schroeder Frequency
Nyquist Frequency
Figure 4.5 Probe was located in a resonance point both the Traditionaland PAGE method performed poorly.
What is interesting in Figure 4.5, is how the resonance point affected the PAGE
(Phase Amplitude and Gradient Estimator) calculation. PAGE relies on the imagi-
nary components of the cross-spectrum, so this becomes complicated quickly.
While Figures 4.2 and 4.3 show that the PAGE and Traditional methods calculated
the total sound power to be similar, it does not provide enough evidence to prove that
the PAGE outperforms the Traditional method. This result does confirm the results
of Jensen et al., that the Two-Point In Situ method does not accurately handle less-
ideal sound sources[4].
Chapter 5
Future Research
5.1 Error with Code
Combining the two different teams’ computational codes and functions into one code
introduced a lot of complications. The PAGE (Phase and Amplitude Gradient Esti-
mator) code has functions that handle the calculation of the the auto-spectrum and
cross-spectrum from the raw data returned by the AFR (Acoustic Field Recorder).
The computer code written by the Two-Point In Situ team did not work with the
PAGE codes. See Figures 5.1 and 5.2. The Pulse system returns the data to be
further processed in two forms, Narrow-Band (NB) frequencies, or One-Third-Octave
frequencies (OTO). The processed data data which can be returned from the Pulse
is not as flexible as the data returned from the AFR.
23
24 Chapter 5 Future Research
102
103
104
Frequency (Hz)
40
50
60
70
80
90
100
Lw
(d
B r
e 1
pW
)
Pulse Narrow Band Base - Weighted
Traditional - NB
PAGE - NB
Lw
A (3745)
Schroder Frequency
Nyquist Frequency
Figure 5.1 Two-Point In Situ calculation using the Narrow Band frequenciesreturned by the Pulse system with functions written by the PAGE team.
102
103
104
Frequency (Hz)
40
50
60
70
80
90
100
Lw
(d
B r
e 1
pW
)
Pulse One-Third-Octave Base - Weighted
Traditional - NB
PAGE - NB
Lw
A (3745)
Schroder Frequency
Nyquist Frequency
Figure 5.2 Two-Point In Situ calculation using the One-Third-Octave fre-quencies returned by the Pulse system with functions written by the PAGEteam.
As seen in Figures 5.1 and 5.2, the PAGE calculation was a lot higher than ex-
pected. At higher frequency ranges, both the PAGE and the Traditional calculations
overshot the ISO 3741 expected results. This error is likely due to the fact that up
until now, the PAGE has only been extensively tested with the AFR[7][6]. Further
work is needed to determine what changes made inside the PAGE computational
calculations that will allow the Phase and Amplitude Gradient Estimator Method to
work with other data-acquisition systems.
5.2 PAGE Method 25
5.2 PAGE Method
The next step for the PAGE (Phase and Amplitude Gradient Estimator) research
team is to continue testing the PAGE method’s performance inside a reverberant
field. The functions written and used by the PAGE code, are written to handle raw
data. The PAGE team needs to look into testing the PAGE method with other
data-acquisition systems. As mentioned in the previous chapter with the imaginary
components of the cross-spectrum getting difficult to separate inside of a reverberant
field. Future research could be conducted to look at the how reverberation time affects
the PAGE method’s calculation. A significant future project is an error analysis. The
three types of error mentioned in the previous chapter: human error in measurements,
equipment error and computational error need to be accounted for in the results.
5.3 Two-Point In Situ Method
As seen in Figures 5.1 and 5.2, the processed data returned from the Pulse will
currently not work with the PAGE process. When asked about the specific processing
method of the Pulse, the team did not know. Currently, there is research on a Three-
Point In Situ Method, as mentioned by Jensen et al.[4]. There is hope that this
method might overcome the obstacles faced in measuring less-ideal sound sources.
As well as the PAGE team, the team working on the Two-Point In Situ method
needs to do a more detailed error analysis. While the work of Jensen et al. has laid
a foundation for the Two-Point and Three-Point In Situ methods, a more detailed
error analysis is needed. Another future project is the determination of the locations
for the acoustical centers of less-ideal sound sources.
Appendix A
Two-Point In Situ AFR
As mentioned in the previous chapters, this is the code used to process the data. To see
the details of the functions called into this code can be seen in previous work[2][4][7].
clear;
% close all;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%{
Program:
TwoPointAFR
Author:
Christopher Reynolds
Summary:
Code from the Two-Point In Situ functions and PAGE functions has...
been combined and written to work with the AFR software.
%}
27
28 Chapter A Two-Point In Situ AFR
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Constants
tests = 6; % Number of Tests/Conditions
fs = 96000; % Sampling frequency (Hz)
pref = 2e-5; % Reference pressure
ns = 2^15; % Number of samples per block
beta = 0.25; % Weighting factor
fl = 100; % Lower Probe limit
fh = (343/(2*0.025)); % Spacial Nyquist
df = fs/ns;
fss = 0:df:(fs/2-df);
% Path for files
% .bin files, Path to the folder containing data returned by the AFR
filepath = ’Path to folder’;
% Excell File contain information about position of probe and source
PosFile = ’Path Position file location ’;
% Excell file contianing information about the atmospheric conditions
Wfile = ’Path to atmospheric conditions’;
% Pre calculated reverberation time of the Large Chamber
T60File = ’Path to file’;
% Load in the 3745 Sound Power File - Directivity Factors for Ref source
load(’SmallSpeakerAn.mat’);
29
%% Constants for PAGE_func.m and TRAD_func.m
w = hann(ns)’;
% Used to scale the ASD for energy conservation
W = mean(w.*conj(w));
% Probe Configurations
% Converts spacing from microphone to center
space = 0.05/2;
probe_config = [space,0,0;-space,0,0;...
0,space,0;0,-space,0;...
0,0,space;0,0,-space];
%% Loads Atmospheric Conditions from Experiment
WD = xlsread(Wfile,’B1:B3’);
Tc = WD(1); % Celcius
Pressure = WD(2); % mbar
Hum = WD(3); % Hum (%)
RR = 287.058; % J/(kg*K)
T = 273.15+Tc;
rho = Pressure*100/(RR*T); % Density of Air
c = 20.05 * sqrt(T); % Speed of sound
%% Reference and DUT (Unknown source) Constants - position values
Positions = xlsread(PosFile,’A3:C6’);
r_ref = [Positions(1,1);Positions(2,1)];
r_dut = [Positions(3,1);Positions(4,1)];
30 Chapter A Two-Point In Situ AFR
th_ref = Positions(1,2);
ph_ref = Positions(1,3);
%% T60 Data
T60Data = xlsread(T60File);
T60f = T60Data(1,:).’;
T60 = T60Data(2,:).’;
Lx = T60Data(4,2);
Ly = T60Data(5,2);
Lz = T60Data(6,2);
V = Lx*Ly*Lz; % Volume m^3
S = 2*Lx*Ly+2*Ly*Lz+2*Lz*Lx; % Surface Area m^2
fsh = 2000*sqrt(mean(T60)./V); % Schroder frequency
%% Loads Files
file = binfileload(filepath,’ID’,1,0);
[fileffts,~] = computeBlockFFt(file,ns,w,W);
% Frequency, Autospectrum
[Gxx,f,~] = autospec(file,fs,ns);
[fc,~] = FDOTOspec(f,Gxx,[20,20000],’rect’);
% One array to hold the data from the six microphones for all four tests
x = zeros([tests,6,length(file)]);
% Creates matrix to hold all of the single sided ffts for each test
31
Xss = zeros(tests,6,size(fileffts,1),size(fileffts,2));
% Potential and Kinetic Energys
Ep = zeros([tests,length(fc)]);
Ek = zeros([tests,length(fc)]);
P_Ep = zeros([tests,length(fc)]);
P_Ek = zeros([tests,length(fc)]);
% Loop through the different test conditions
for yy = 1:tests
% Loops through each microphone in the Probe
for zz = 1:6
% Loads in microphone data
x(yy,zz,:) = binfileload(filepath,’ID’,yy,zz-1);
% Calculates the single sided ffts for each experiment
[Xss(yy,zz,:,:),~] = computeBlockFFt(x(yy,zz,:),ns,w,W);
end
% Calculates the Potential and Kinetic Energies at the 1/3 octaves
TRAD(yy) = TRAD_func(fss,squeeze(Xss(yy,:,:,:)),probe_config,rho,c);
PAGE(yy) = PAGE_func(fss,squeeze(Xss(yy,:,:,:)),...
probe_config,rho,c,0,8);
[~,Ep(yy,:)] = FDOTOspec(f,TRAD(yy).Ep,[20,20000],’rect’);
[~,Ek(yy,:)] = FDOTOspec(f,TRAD(yy).Ek,[20,20000],’rect’);
[~,P_Ep(yy,:)] = FDOTOspec(f,PAGE(yy).Ep,[20,20000],’rect’);
[~,P_Ek(yy,:)] = FDOTOspec(f,PAGE(yy).Ek,[20,20000],’rect’);
32 Chapter A Two-Point In Situ AFR
end
% Fixes the Energy densities
Ep = Ep ./ df;
Ek = Ek ./ df;
P_Ep = P_Ep ./ df;
P_Ek = P_Ek ./ df;
% Generalized Energy Density - PAGE
P_GED = (beta .* P_Ep) + ((1-beta) .* P_Ek);
%% Directivity Factor
% Finding Room Constants
[~,thIND] = min(abs(An.th-th_ref(1)));
[~,phIND] = min(abs(ph_ref(1)-An.ph));
Q = squeeze(An.Q(thIND,phIND,:)).’;
delta1 = ones(size(fc));
delta2 = ones(size(fc));
ps = Pressure/10; % mbar to kPa
ps0 = 101.325; % kPa
alpha = absorption(Tc,ps,Hum,fc);
A0 = r_dut*alpha;
delta = 10.^((A0.*(1.0053-0.0012.*A0).^1.6)/10);
delta = ones(size(delta));
%% Generalized Energy Density - Traditional
33
GED = (beta .* Ep) + ((1-beta) .* Ek);
% Finds the R value (Room Constant) for unknown source
[Rinsitu,~] = RcalcExp_Corrected_BETA(2*GED(1,:),...
2*GED(2,:),r_ref(1),r_ref(2),beta,Q,c,fc,delta(1,:),delta(2,:));
% Finds the Q Value (Directivity Factor)
% for unknown source for both tests
[~,Wdut_1] = WcalcExp_Corrected_BETA(2*GED(3,:),...
2*GED(4,:),r_dut(1),...
r_dut(2),beta,Rinsitu,c,fc,delta(1,:),delta(2,:));
[~,Wdut_2] = WcalcExp_Corrected_BETA(2*GED(5,:),...
2*GED(6,:),r_dut(1),...
r_dut(2),beta,Rinsitu,c,fc,delta(1,:),delta(2,:));
% Finds the R value (Room Constant) for unknown source
[P_Rinsitu,~] = RcalcExp_Corrected_BETA(2*P_GED(1,:),...
2*P_GED(2,:),r_ref(1),r_ref(2),beta,Q,c,fc,delta(1,:),delta(2,:));
% Finds the Q Value (Directivity Factor) for unknown source for tests
[~,P_Wdut_1] = WcalcExp_Corrected_BETA(2*P_GED(3,:),...
2*P_GED(4,:),r_dut(1),...
r_dut(2),beta,P_Rinsitu,c,fc,delta(1,:),delta(2,:));
[~,P_Wdut_2] = WcalcExp_Corrected_BETA(2*P_GED(5,:),...
2*P_GED(6,:),r_dut(1),...
r_dut(2),beta,P_Rinsitu,c,fc,delta(1,:),delta(2,:));
%% A-weighting
34 Chapter A Two-Point In Situ AFR
% From Annex F.3 ISO 3741 (2010)
fA = [50 63 80 100 125 160 200 250 315 400 500 630 800 1000 1250...
1600 2000 2500 3150 4000 5000 6300 8000 10000];
Ck = [-30.2 -26.2 -22.5 -19.1 -16.1 -13.4 -10.9 -8.6 -6.6 -4.8 -3.2 -1.9 ...
-0.8 0.0 0.6 1.0 1.2 1.3 1.2 1.0 0.5 -0.1 -1.1 -2.5];
% Sound Power Measurements not A-weighted
Lw_1 = 10*log10(abs(Wdut_1)/1e-12);
TotLw_1 = 10*log10(sum(10.^(Lw_1(:,fc>=fl&fc<=fh)*0.1),2));
LwA_1 = Lw_1(:,fc <= max(fA) & fc >= min(fA)) + ...
ones(length(beta),1)*Ck;
TotLwA_1 = 10*log10(sum(10.^(LwA_1(:,fA>=fl&fA<=fh)*0.1),2));
% Sound Power Measurements A-weighted
Lw_2 = 10*log10(abs(Wdut_2)/1e-12);
TotLw_2 = 10*log10(sum(10.^(Lw_2(:,fc>=fl&fc<=fh)*0.1),2));
LwA_2 = Lw_2(:,fc <= max(fA) & fc >= min(fA))...
+ ones(length(beta),1)*Ck;
TotLwA_2 = 10*log10(sum(10.^(LwA_2(:,fA>=fl&fA<=fh)*0.1),2));
% Sound Power Measurements PAGE - not A-weighted
P_Lw_1 = 10*log10(abs(P_Wdut_1)/1e-12);
P_TotLw_1 = 10*log10(sum(10.^(P_Lw_1(:,fc>=fl&fc<=fh)*0.1),2));
P_LwA_1 = P_Lw_1(:,fc <= max(fA) & fc >= min(fA)) ...
+ ones(length(beta),1)*Ck;
P_TotLwA_1 = 10*log10(sum(10.^(P_LwA_1(:,fA>=fl&fA<=fh)*0.1),2));
35
% Sound Power Measurements corrected - PAGE - A-weighted
P_Lw_2 = 10*log10(abs(P_Wdut_2)/1e-12);
P_TotLw_2 = 10*log10(sum(10.^(P_Lw_2(:,fc>=fl&fc<=fh)*0.1),2));
P_LwA_2 = P_Lw_2(:,fc <= max(fA) & fc >= min(fA)) +...
ones(length(beta),1)*Ck;
P_TotLwA_2 = 10*log10(sum(10.^(P_LwA_2(:,fA>=fl&fA<=fh)*0.1),2));
%% Figures
% First Condition
figure;
semilogx(fA,LwA_1,’-b’,’Linewidth’,1.25);
hold on;
semilogx(fA,P_LwA_1,’-r’,’Linewidth’,1.25);
title("Blender No Load - AFR",’Fontsize’,14);
xlim([fsh-50 10000]);
ylim([40 100]);
ylabel(’L_wA (dBA re 1 pW)’,’Fontsize’,14);
xlabel(’Frequency (Hz)’,’Fontsize’,14);
l1 = line([fsh fsh],[0 200],’color’,’k’,’linestyle’,’--’);
l2 = line([fh fh],[0 200],’color’,’k’,’linestyle’,’:’);
legendStr1 = ’’;
legendStr1 = [legendStr1;{...
[’Traditional AFR | L_w = ’ num2str(...
round(TotLwA_1(1)*10)/10) ’ dBA’]}];
36 Chapter A Two-Point In Situ AFR
legendStr2 = ’’;
legendStr2 = [...
legendStr2;{[’PAGE AFR | L_w = ’ num2str(...
round(P_TotLwA_1(1)*10)/10) ’ dBA’]}];
legendStr3 = ’Schroeder Frequency’;
legendStr4 = ’Spatial Nyquist Frequency’;
legend([legendStr1;legendStr2;legendStr3;legendStr4],...
’Fontsize’,14,’location’,’southeast’);
hold off;
% Second Test Condition
figure;
semilogx(fc,Lw_2,’-b’,’Linewidth’,1.25);
hold on;
semilogx(fc,P_Lw_2,’-r’,’Linewidth’,1.25);
xlim([fsh-50 10000]);
ylim([40 100]);
ylabel(’L_w (dBA re 1 pW)’,’Fontsize’,14);
xlabel(’Frequency (Hz)’,’Fontsize’,14);
l1 = line([fsh fsh],[0 200],’color’,’k’,’linestyle’,’--’);
l2 = line([fh fh],[0 200],’color’,’k’,’linestyle’,’:’);
legendStr1 = ’’;
legendStr1 = [legendStr1;{[’Traditional | L_w = ’ num2str(...
round(TotLwA_2(1)*10)/10) ’ dBA’]}];
legendStr2 = ’’;
legendStr2 = [legendStr2;{[’PAGE | L_w = ’ num2str(...
37
round(P_TotLwA_2(1)*10)/10) ’ dBA’]}];
legendStr3 = ’Schroeder Frequency’;
legendStr4 = ’Spatial Nyquist Frequency’;
legend([legendStr1;legendStr2;legendStr3;legendStr4],...
’Fontsize’,14,’location’,’southeast’);
title(’Blender Under Load’,’Fontsize’,14)
hold off;
Appendix B
Two-Point In Situ - Pulse
In this appendix, the functions were written to work with the Pulse not the AFR.
clear;
% close all;
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%{
Code originally written by Zac Jensen and Travis Hoyt when using
the Pulse to measure sound power using the Hopkin-Stryker equation.
Current version author: Christopher Reynolds
Takes narrow band data with the Pulse and analyzes it to find sound
power levels. The addition to this code is the PAGE method to see
how the PAGE compares to the traditional. If a variable has "P_" it
is a PAGE variable. Also not that unlike the other PAGE vs Traditional
codes, this has a different defined distance. This code uses
the distance between microphones not center distances. There is also
39
40 Chapter B Two-Point In Situ - Pulse
factor 1/3 effecting the Potential Energy.
%}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Constants
%load in the 3745 Sound Power File to get the "An" struct for Q
load(’SmallSpeakerAn.mat’)
% Microphone spacing not Center spacing!!!!!
% Spcr = .05; % 5 cm spacer
Spcr = .025; % 2.5 cm spacer
beta = 0.25; % Weighting factor
fh = 343/(2*Spcr); % Spacial Nyquist
fl = 100;
dt = 19.53e-6;
fs = 1/dt; % Sampling frequency (Hz)
df = 3.125;
%% Loads in data from Pulse files
FileName = {’PT1_REF_CPB.Autospectrum_Base.txt’,...
’PT1_REF_CPB.CrossSpectrum_Base.txt’,...
’PT2_REF_CPB.Autospectrum_Base.txt’,...
’PT2_REF_CPB.CrossSpectrum_Base.txt’};
PathName = ’Directory Path to the files location’;
FilterIndex = 1;
41
DataFlag = 0;
if FilterIndex == 0
return
elseif FilterIndex == 2
DataFlag = 1;
elseif FilterIndex == 1
DataFlag = 2;
end
%% Weather
WFile = ’Weather.xlsx’;
if isempty(WFile)
display(’Lets put in the atmospheric conditions’)
Tc = input(’Enter the temperature in celcius’);
Pressure = input(’Enter the atmospheric pressure in mbar’);
Hum = input(’Enter the percent Humidity’);
else
WD = xlsread(WFile,’B1:B3’);
Tc = WD(1); % Celcius
Pressure = WD(2); % mbar
Hum = WD(3); % Hum (%)
end
RR = 287.058; % J/(kg*K)
42 Chapter B Two-Point In Situ - Pulse
T = 273.15+Tc; % Celcius to Kelvin
rho = Pressure*100/(RR*T); % Density of Air
% Speed of sound as defined by Standards
c = 20.05 * sqrt(T);
%% Loads in T60 file for Large Reverb Chamber
T60File = ’T60LC.xlsx’;
T60Data = xlsread(T60File);
% Reverb Time
Trev = T60Data(2,:).’;
% Room Dimensions
Lx = T60Data(4,2);
Ly = T60Data(5,2);
Lz = T60Data(6,2);
V = Lx*Ly*Lz; % Volume
S = 2*Lx*Ly+2*Ly*Lz+2*Lz*Lx; % Surface Area
fsh = 2000*sqrt(mean(Trev)./V); % Schroder Frequency
%% Positions
PosFile = ’Positions.xlsx’;
43
Positions = xlsread(PosFile);
% Total number of distances
% Typically the number is 4 (2 for each test)
rtot = (length(Positions)-2)/2;
d = Positions(1,2);
%% Loads Reference Source Data Narrow Band
LFile = length(FileName);
switch DataFlag
case 2
cnt1 = 0;
cnt2 = 0;
for ii = 1:2:3
RefPosInd(floor(ii/3)+1) = str2double(FileName{ii}(3));
pl = 0;
cnt1 = cnt1 + 1;
for yy = 1:6
fID = fopen([PathName,FileName{ii}]);
Data = textscan(fID,’%f %f %f %f’,’HeaderLines’,yy*83+(yy-1)*pl);
fG(1,:) = Data{:,2}; % Frequency array of autospectrum
G(cnt1,:,yy) = Data{:,3}; % Autospectrum
% OTO frequency [100:10000} Hz
%[fG,~] = FDOTOspec(fG,G(1,:),[20,20000],’rect’);;
pl = length(Data{:,3})+10;
fclose(fID);
44 Chapter B Two-Point In Situ - Pulse
end
cnt2 = cnt2 + 1;
pl = 0;
for yy = 1:3
fID = fopen([PathName,FileName{ii+1}]);
Data = textscan(fID,’%f %f %f %f’,’HeaderLines’,yy*83+(yy-1)*pl);
C(cnt2,:,yy) = Data{:,3}; % Real part of cross spectrum
C_im(cnt2,:,yy) = Data{:,4}; % Imaginary part of cross spectrum
pl = length(Data{:,3})+10;
fclose(fID);
end
end
% TRAD
kG = 2*pi*ones(size(G,1),1)*fG/c;
PED = squeeze(G(:,:,1))/2/rho/c^2;
Ep = 1./(24*rho*c^2).*sum(G,3)+1./(12*rho*c^2).*(sum(C,3));
Ek = 1./(2*rho*c^2.*kG.^2*Spcr^2)...
.*sum(G,3) - 1./(rho*c^2.*kG.^2*Spcr^2).*sum(C,3);
% PAGE
H = C + 1j * C_im; % Full cross spectrum
P_Ep = 1./(24*rho*c^2)*sum(G,3) + 1./(12*rho*c^2)...
.*sum(abs(H),3);
45
P_Ek = (1./(2*rho*c^2.*kG.^2*Spcr^2).*sum(G,3) - ...
1./(rho*c^2.*kG.^2*Spcr^2).*sum(abs(H),3))...
+(1./(8*rho*c^2.*kG.^2*Spcr^2).*...
(...
(G(:,:,1)+G(:,:,2)+(2.*abs(H(:,:,1))).*angle(H(:,:,1)).^2)...
+(G(:,:,3)+G(:,:,4)+(2.*abs(H(:,:,2))).*angle(H(:,:,2)).^2)...
+(G(:,:,5)+G(:,:,6)+(2.*abs(H(:,:,3))).*angle(H(:,:,3)).^2)...
)
);
% Finds the 1/3 octave Energy densities
% Dummy Variables to hold Energy matrices
Epmat = zeros(2,length(fOTO));
Ekmat = zeros(2,length(fOTO));
P_Epmat = zeros(2,length(fOTO));
P_Ekmat = zeros(2,length(fOTO));
for uu = 1:2
[~,Epmat(uu,:)] = FDOTOspec(fG,Ep(uu,:),...
[min(fOTO),max(fOTO)],’rect’);
[~,Ekmat(uu,:)] = FDOTOspec(fG,Ek(uu,:)...
,[min(fOTO),max(fOTO)],’rect’);
[~,P_Epmat(uu,:)] = FDOTOspec(fG,P_Ep(uu,:),...
[min(fOTO),max(fOTO)],’rect’);
[~,P_Ekmat(uu,:)] = FDOTOspec(fG,P_Ek(uu,:)...
,[min(fOTO),max(fOTO)],’rect’);
end
46 Chapter B Two-Point In Situ - Pulse
% Changes to conventional script
Ep = Epmat ./ df;
Ek = Ekmat ./ df;
P_Ep = P_Epmat ./ df;
P_Ek = P_Ekmat ./ df;
%}
end
KED = Ek;
% PAGE
P_KED = P_Ek;
%% Solve for the room constant
% Weighted Total Energy
GED = beta*Ep + (1-beta)*KED;
P_GED = beta*P_Ep + (1-beta)*P_KED;
ps = Pressure/10; % mbar to kPa
ps0 = 101.325; % kPa
r_ref = [Positions(2+RefPosInd(1),1); ...
Positions(2+RefPosInd(2),1)];
th_ref = Positions(2+RefPosInd(1),2);
ph_ref = Positions(2+RefPosInd(1),3);
47
% Natural Absorbtion
alpha = absorption(Tc,ps,Hum,fG);
A0 = r_ref*alpha;
% Near Field Correction Term
delta = 10.^((A0.*(1.0053-0.0012.*A0).^1.6)/10);
% Finds the indeces of Known Directivty Factor
[~,thIND] = min(abs(An.th-th_ref));
[~,phIND] = min(abs(ph_ref-An.ph));
% Finds the values of Known Directivity Factor
Q = squeeze(An.Q(thIND,phIND,:)).’;
% Traditional Room Constant
[Rinsitu(1,:),W_ref(1,:)] = RcalcExp_Corrected_BETA(2*GED(1,:),...
2*GED(2,:),r_ref(1),r_ref(2),beta,Q,c,fG,delta(1,:),delta(2,:));
% PAGE Room Constant
[P_Rinsitu(1,:),P_W_ref(1,:)] = RcalcExp_Corrected_BETA(2*P_GED(1,:),...
2*P_GED(2,:),r_ref(1),r_ref(2),beta,Q,c,fG,delta(1,:),delta(2,:));
%% Load in Unknown Source measurements
%
% Point to Files
% [FileName,PathName,FilterIndex] = ...
uigetfile({’*.txt’;’*.mat’},...
48 Chapter B Two-Point In Situ - Pulse
% ’Choose the DUT measurements files.’,’R:/Students/Zac Jensen/Thesis/Experiments/’,’MultiSelect’,’on’);
FileName = {’PT1_DUT_NB.Autospectrum_Base.txt’,...
’PT1_DUT_NB.CrossSpectrum_Base.txt’,...
’PT2_DUT_NB.Autospectrum_Base.txt’,...
’PT2_DUT_NB.CrossSpectrum_Base.txt’};
PathName = ’Directory Path to the files’ location ’;
FilterIndex = 1;
DataFlag = 0;
if FilterIndex == 0
elseif FilterIndex == 2
DataFlag = 1;
elseif FilterIndex == 1
DataFlag = 2;
end
% Load in ISO 3741 data
%’Choose the ISO 3741 Sound Power File (DUT)’,’MultiSelect’,’on’);
ISO3741FileName = ’ISO3741_Lw_base 09-Aug-2017.mat’;
ISO3741PathName = ’’;
ISO3741FilterIndex = 1;
if ~ISO3741FilterIndex
ISO3741Flag = 0;
else
49
ISO3741Flag = 1;
load([ISO3741PathName,ISO3741FileName]);
end
end
%% Load DUT Measurement Data
LFile = length(FileName);
switch DataFlag
case 2
cnt1 = 0;
cnt2 = 0;
for ii = 1:2:3
DutPosInd(floor(ii/3)+1) = str2double(FileName{ii}(3));
pl = 0;
cnt1 = cnt1 + 1;
for yy = 1:6
fID = fopen([PathName,FileName{ii}]);
Data = textscan(fID,’%f %f %f %f’,’HeaderLines’,yy*83+(yy-1)*pl);
fG(1,:) = Data{:,2};
G(cnt1,:,yy) = Data{:,3};
pl = length(Data{:,3})+10;
fclose(fID);
end
50 Chapter B Two-Point In Situ - Pulse
cnt2 = cnt2 + 1;
pl = 0;
for yy = 1:3
fID = fopen([PathName,FileName{ii+1}]);
Data = textscan(fID,’%f %f %f %f’,’HeaderLines’,...
yy*83+(yy-1)*pl);
% Real part of cross spectrum Narrow Band
C(cnt2,:,yy) = Data{:,3};
% Imaginary part of cross spectrum Narrow Band
C_im(cnt2,:,yy) = Data{:,4};
pl = length(Data{:,3})+10;
fclose(fID);
end
end
kG = 2*pi*ones(size(G,1),1)*fG/c;
PED = squeeze(G(:,:,1))/2/rho/c^2;
Ep_dut = 1./(24*rho*c^2)*sum(G,3)+...
1./(12*rho*c^2).*(sum(C,3));
Ek_dut = 1./(2*rho*c^2.*kG.^2*Spcr^2)...
.*sum(G,3) - 1./(rho*c^2.*kG.^2*Spcr^2).*sum(C,3);
% PAGE
H = C + 1j * C_im; % Full cross spectrum
P_Ep_dut = 1./(24*rho*c^2).*sum(G,3) + ...
51
1./(12*rho*c^2).*(sum(abs(H),3));
P_Ek_dut = (1./(2*rho*c^2.*kG.^2*Spcr^2)...
.*sum(G,3) - 1./(rho*c^2.*kG.^2*Spcr^2).*sum(abs(H),3))...
+(1./(8*rho*c^2.*kG.^2*Spcr^2).*...
(...
(G(:,:,1)+G(:,:,2)+(2.*abs(H(:,:,1))).*angle(H(:,:,1)).^2)...
+(G(:,:,3)+G(:,:,4)+(2.*abs(H(:,:,2))).*angle(H(:,:,2)).^2)...
+(G(:,:,5)+G(:,:,6)+(2.*abs(H(:,:,3))).*angle(H(:,:,3)).^2)...
));
%{
% Finds the 1/3 octave Energy densities
% Dummy Variables to hold Energy matrices
Epmat_dut = zeros(2,length(fG));
Ekmat_dut = zeros(2,length(fG));
P_Epmat_dut = zeros(2,length(fG));
P_Ekmat_dut = zeros(2,length(fG));
for uu = 1:2
[~,Epmat_dut(uu,:)] = FDOTOspec(fG,Ep_dut(uu,:)...
,[min(fG),max(fG)],’rect’);
[~,Ekmat_dut(uu,:)] = FDOTOspec(fG,Ek_dut(uu,:)...
,[min(fG),max(fG)],’rect’);
[~,P_Epmat_dut(uu,:)] = FDOTOspec(fG,P_Ep_dut(uu,:)...
,[min(fG),max(fG)],’rect’);
[~,P_Ekmat_dut(uu,:)] = FDOTOspec(fG,P_Ek_dut(uu,:)...
,[min(fG),max(fG)],’rect’);
end
52 Chapter B Two-Point In Situ - Pulse
% Changes to conventional script
Ep_dut = Epmat_dut ./ df;
Ek_dut = Ekmat_dut ./ df;
P_Ep_dut = P_Epmat_dut ./ df;
P_Ek_dut = P_Ekmat_dut ./ df;
%}
end
% PED = Ep_dut;
KED = Ek_dut;
% PAGE
P_KED = P_Ek_dut;
%% Solve for the sound power and directivity of the DUT
% Weighted Energy
GED = beta.*Ep_dut + (1-beta).*KED;
P_GED = beta.*P_Ep_dut + (1-beta).*P_KED;
r_dut = [Positions(rtot+2+DutPosInd(1),1); Positions(rtot+2+DutPosInd(2),1)];
alpha = absorption(Tc,ps,Hum,fG);
A0 = r_dut*alpha;
delta = 10.^((A0.*(1.0053-0.0012.*A0).^1.6)/10);
delta = ones(size(delta));
53
[Qdut(1,:),Wdut(1,:)] = WcalcExp_Corrected_BETA(2*GED(1,:),2*GED(2,:),...
r_dut(1),r_dut(2),beta,Rinsitu(1,:),c,fG,delta(1,:),delta(2,:));
[P_Qdut(1,:),P_Wdut(1,:)] = WcalcExp_Corrected_BETA(2*P_GED(1,:),...
2*P_GED(2,:),r_dut(1),r_dut(2),beta,P_Rinsitu(1,:),...
c,fG,delta(1,:),delta(2,:));
%% Hopkins-Stryker Equation
Lw = 10*log10(abs(Wdut)/1e-12);
TotLw = 10*log10(sum(10.^(Lw(:,fG>=fl&fG<=fh)*0.1),2));
P_Lw = 10*log10(abs(P_Wdut)/1e-12);
P_TotLw = 10*log10(sum(10.^(P_Lw(:,fG>=fl&fG<=fh)*0.1),2));
%% A-weighting
% From Annex F.3 ISO 3741 (2010)
fA = [50 63 80 100 125 160 200 250 315 400 500 630 800 1000 1250 1600 ...
2000 2500 3150 4000 5000 6300 8000 10000];
Ck = [-30.2 -26.2 -22.5 -19.1 -16.1 -13.4 -10.9 -8.6 -6.6 -4.8 -3.2 -1.9 ...
-0.8 0.0 0.6 1.0 1.2 1.3 1.2 1.0 0.5 -0.1 -1.1 -2.5];
% If 1/3 octave has a higher minimum, it changes where Weighted Frequency
% and Weighted Constant Matrices start
if min(fG) > min(fA)
54 Chapter B Two-Point In Situ - Pulse
AINDmin = find(fA==min(fG));
fA = fA(AINDmin:end);
Ck = Ck(AINDmin:end);
end
LwA = Lw(:,fG <= max(fA) & fG >= min(fA)) + ones(length(beta),1)*Ck;
TotLwA = 10*log10(sum(10.^(LwA(:,fA>=fl&fA<=fh)*0.1),2));
P_LwA = P_Lw(:,fG <= max(fA) & fG >= min(fA)) + ones(length(beta),1)*Ck;
P_TotLwA = 10*log10(sum(10.^(P_LwA(:,fA>=fl&fA<=fh)*0.1),2));
%%
%%% A-weighted Plots %%%
figure
semilogx(fA,LwA,’-b’,’Linewidth’,2)
hold on
semilogx(fA,P_LwA,’-r’,’Linewidth’,2)
line1 = line([fsh fsh],[0 200],’color’,’k’,’linestyle’,’--’);
line2 = line([fh fh],[0 200],’color’,’k’,’linestyle’,’:’);
legend(’Traditional - test’,’PAGE - test’,’L_wA (3745)’,...
’Schroder Frequency’,’Nyquist Frequency’,’location’,’southeast’);
xlim([100 10000])
ylim([40 100]);
Appendix C
ISO 3741
In this appendix, the processing of the ISO 3741 standards are calculated.
clear;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%{
Program:
Standard method for Sound Power in Reverberation Chamber
Summary:
This program calculates the sound power of a source inside of the
reverberation chamber using the standard method. This program
calls functions written by the BYU Acoustics Research Group.
Functions and Authors:
Travis Hoyt and the Pulse team
binfileload.m by: Kent Gee
autospec.m by: Kent Gee, Alan Wall, and Brent Reichman
57
58 Chapter C ISO 3741
FDOTOspec.m by: Kent Gee
%}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Constants
fs = 96000; % Sampling frequency (Hz)
pref = 2e-5; % Reference pressure
ns = 2^15; % Samples per Block
tests = 1; % Number of Tests
mics = 6; % Number of Mics per test
B0 = 1.013*10^5; % Pa
A0 = 1;
fh = 6860; % Spacial Nyquist
filepath = ’Directory Path to the File’;
%% Loads Atmospheric Conditions from Experiment
IFile = ’std_ATM.xlsx’;
WD = xlsread(IFile,’B1:B3’);
Tc = WD(1); % Celcius
Pressure = WD(2); % mbar
Hum = WD(3); % Hum (%)
RR = 287.058; % J/(kg*K)
T = 273.15+Tc; % Converts Tc to Kelvin
% Variables calculated from data
rho = Pressure*100/(RR*T); % Density of Air
59
c = 20.05 * sqrt(273 + Tc); % Speed of sound depending on temp
B = Pressure * 100; % Converts Pressure from mbar to Pa
%% T60
T60File = ’T60LC.xlsx’;
T60Data = xlsread(T60File);
fOTO = rot90(T60Data(1,:).’); % 1/3 OTO frequency
Trev = rot90(T60Data(2,:).’); % Reverb time as a
% Dimensions of Chamber
Lx = T60Data(4,2);
Ly = T60Data(5,2);
Lz = T60Data(6,2);
% Variables calculated from data
V = Lx*Ly*Lz; % Volume m^3
S = 2*Lx*Ly+2*Ly*Lz+2*Lz*Lx; % Surface Area m^2
fsh = 2000*sqrt(mean(Trev)./V); % Schroder frequency
A = (55.26 / c) .* (V ./ Trev); % Absorbtion area of room
%% Load File
file = binfileload(filepath,’ID’,1,0);
[G11,f,~] = autospec(file,fs,ns);
[fc,~] = FDOTOspec(f,G11,[20,20000],’rect’);
xx = zeros([tests,mics,length(file)]); % Files
G = zeros([tests,mics,length(G11)]); % Autospectrum
60 Chapter C ISO 3741
OTOspec = zeros([tests,mics,length(fOTO)]); % 1/3 Octave Spectrum
for m = 1:tests
for k = 1:mics
xx(m,k,:) = binfileload(filepath,’ID’,1,k-1);
[G(m,k,:),~,~] = autospec(xx(m,k,:),fs,ns);
[~,OTOspec(m,k,:)] = FDOTOspec(f,G(m,k,:),[100,10000],’rect’);
end
end
%% Average Levels
% Uncorrected Average Sound Pressure Levels
OTOspecAvg = mean(OTOspec,2);
LpAvg = squeeze(10.*log10(OTOspecAvg(:,:,:)./ pref^2)).’;
%% Uncertainty
Lpiall = 10 .*log10(OTOspecAvg./pref^2);
Lpm = mean(10 .* log10(OTOspecAvg ./ pref^2),1);
sigR0 = 0.5; % Reproducibility Uncertainty standard deviation
sigomc = 0.5; % uncertainty due to operating and mounting conditions
sigtot = sqrt(sigR0^2+sigomc^2);
kfactor = 2; % 2 = 95% chance that Lw
%is between Lw+U and Lw - U; (Assuming a normal distribution)
61
U = sigtot*kfactor;
%% Calculates the Sound Power Level
% Dummy Variables to clear up Sound Power level Equation
Z1 = 10 .* log10(A./A0);
Z2 = 4.34 .* (A./S);
Z3 = 10 .* log10(1 + ((S*c) ./ (8*V.*fOTO)));
C1 = log10((B*427) / (B0*400));
C2 = log10(sqrt(273 / T));
% Sound Power Level Averaged over all the Tests
Lw = LpAvg + ((Z1 + Z2 + Z3) - (25*(C1+C2)) -6);
%% A-weighting
% From Annex F.3 ISO 3741 (2010)
fA = [50 63 80 100 125 160 200 250 315 400 500 630 800 1000 1250 1600 ...
2000 2500 3150 4000 5000 6300 8000 10000];
Ck = [-30.2 -26.2 -22.5 -19.1 -16.1 -13.4 -10.9 -8.6 -6.6 -4.8 -3.2 -1.9 ...
-0.8 0.0 0.6 1.0 1.2 1.3 1.2 1.0 0.5 -0.1 -1.1 -2.5];
% If 1/3 octave has a higher minimum, it changes where Weighted Frequency
% and Weighted Constant Matrices start
if min(fOTO) > min(fA)
62 Chapter C ISO 3741
AINDmin = find(fA==min(fOTO));
fA = fA(AINDmin:end);
Ck = Ck(AINDmin:end);
end
% Calculates Weighted Standards for each test
TotLw = 10*log10(sum(10.^(Lw(:,fOTO>=fsh&fOTO<=fh)*0.1),2));
LwA = Lw + Ck(fA <= max(fOTO) & fA >= min(fOTO));
% TotLw = 10*log10(sum(10.^(Lw*0.1)));
TotLwA = 10*log10(sum(10.^(LwA*0.1)));
%% Figures
figure
semilogx(fOTO,Lw,’-^k’,’LineWidth’,1.5);
hold on;
semilogx(fOTO,LwA,’-*m’,’LineWidth’,1.5);
title(’Blender ISO3741 Standards - Weighted’,’Fontsize’,14);
l1 = line([fsh fsh],[0 200],’color’,’k’,’linestyle’,’--’);
ylim([40 100])
ylabel(’L_w (dB re 1 pW)’,’Fontsize’,14);
xlabel(’Frequency (Hz)’,’Fontsize’,14);
legendStr1 = ’’;
legendStr1 = [legendStr1;{[’Base - ISO3741 | L_w = ’...
num2str(round(TotLw(1)*10)/10) ’ dB’]}];
legendStr = ’’;
legendStr = [legendStr;{[’Base - ISO3741 | L_wA = ’...
63
num2str(round(TotLwA(1)*10)/10) ’ dBA’]}];
legend([legendStr1;legendStr;’Schroeder Frequency’],...
’Fontsize’,14,’location’,’southeast’);
hold off;
Bibliography
[1] Occupational exposure to noise: evaluation, prevention and control (World Health
Organization, 2001).
[2] D. R. Marquez, Estimating the Acoustic Power of Sources in Nonideal Enclosures
Using Generalized Acoustic Energy Density, Master’s thesis, Brigham Young Uni-
versity (2014).
[3] A. S. of America, Acoustics - Determination of sound power levels of noise sources
using sound pressure - Precision method for reverberation rooms - ISO 3741:1999
ANSI S12.51-2002, Acoustical Society of America (2002).
[4] Z. Jensen, Improvements to the Two-Point In Situ Method for Measurement of
the Room Constant and Sound Power in Semi-Reverberant Rooms, Master’s thesis,
Brigham Young University (2016).
[5] B. Xu, Generalized Acoustic Energy Density and Its Applications, Ph.D. thesis,
Brigham Young University (2010).
[6] D. Hawks, Performance of Phase and Amplitude Gradient Estimator Method for
Calculating Energy Quantities in a Plane-Wave Tube Environment (Department
of Physics Brigham Young University - Idaho, 2016).
65
Top Related