Phys 291 - Assignment
Purpose of this webpage is to present my assignment in Phys291.
The chosen topic is to analyze calibration data form a echo sounder were the echo sounder has a split beam system.
This webpage contains the following:
Echo sounder is one of the most frequent used acoustic instrument on fishing vessel. The echo
sounder transmits an acoustic wave, which are reflected by a target, and then received back in
the echo sounder. By interoperate the backscattered sound wave it is possible to detect fish.
Today it is common to use several echo sounders with different frequency. By analysing the
strength of the backscattered sound wave, for each frequency, it is possible to identify which
species the target was.
The strength of the backscattered sound wave increase when the density of fish increases, and
in stock assessment it is common to assume linear relationship. With this assumption it is
possible to measure and estimate how much fish there is under the vessel. To give a correct
estimate of the mass of fish it is important the echo sounder is proper calibrated.
One experimental setup of echo sounders is the TS-probe (show in the figure to the left). The
main purpose of the TS-probe is to get a better understanding of what’s happening inside the
school. The TS-probe is equipped with echo sounders and stereo-cameras, and is lowered so
the probe is inside the fish schools.
To calibrate the echo sounder you need a calibration sphere. Shortly the calibration sphere is a
reference target where you know the acoustic backscatter properties for all frequency. The
reason it target is shaped as a sphere is so the backscattered sound wave is angle
Next step is to position the sphere inside the acoustic beam, and move the sphere around
inside the beam while recording the data.
The echo sounder can detect the direction to the sphere by itself. This by using a technique
called split beam. The echo sounder is sectioned in four quadrants. The difference in phase in
the received sound wave, measured by each quadrant, gives the direction of the sphere. This
process is what we call the split beam method.
After running the program you get the following results on the screen: 'Calculated target strength: -39.092185', and the histogram:
Problems during assignment
Programming in C++ went pretty smoothly, although running it in ROOT could be problematic. Some of the syntax that was valid in C++ were not valid in ROOT.
Mainly these problems were solved with just minor changes in the script. At least all but one. One function that worked in C++ and not in ROOT was ‘unique()’
when I used float. I could not find any help to solve this problem on the internet. The solution was to first sort the vector so the values inside the vector were in
increasing order. Then I made a loop which analyzed each element in the vector. If the current value were different than the previous element this element were
added to a new vector. It’s not an ideal solution but it works.
Another problem was the size of the bins. During the programming I discovered that if the size of each bin were too big, several of measurements could be
allocated to the same bin. When using histogram, this resulted to a too large value inside the bin and therefore a wrong measurement. One solution of this
problem is to make the size of bins and therefore increase the resolution. But as I discovered this would make the program slower which is not ideal. My solution
were to use bin size with varying size.
One problem I still have no solution on is when I try to start the program through ROOT. When I run the program the result window opens, but nothing else happen.
To get the result I have to run the program again. This is just a minor thing, and I have not spend time to understand what creates this error.
Ideally we use either a Bessel function or the sin(x)/x function to fit the data. Since we are operating in negative (-) dB’s these function won’t work as I want them
to. The solution were to use a function such as C + ax2 + by2 (or C + a*Athw2 + Along2), were C is a constant. This function is not optimal if you want to describe
the whole beampattern, but in this case were only operating in a few degrees and this function is sufficient.
You can download the program and the necessary calibration file in a zipped file here.
‘calibrationdata.dat’ stores the calibration data which should be analyzed and the file ‘resultat.eps’ stores an example of how the result should look like. This file is the same as the results given in Figure 2.
After unzipped the file to a specific folder open ROOT.
Write ‘ TBrowser b’ in the terminal window. Use the browser to find the file ‘RunCalibraiton.C’ and run the program. As discussed earlier I had to run the program twice to get the result.
The program will go through the 'calibrationdata.dat' file and get all the necessary values which is needed for the calibration. The program will sort the data and draw it as a histogram. A user specified equation is used to fit through the measurements. Lastly the program will find the maximum value of the fitted function.
The calculated target strength, or TS, describes the strength of the backscattered sound wave. In this results the TS is -39.1 dB. From the acoustic properties for
this sphere at the frequency that is used the TS should be -39.0 dB. This means that the TS are 0.1 dB too low. We call this difference the Gain, and for near
future results done by this echo sounder we always add another 0.1 dB.
In the histogram the axis ALong and Athw is used. The ALong (y) is angle along the ships direction and the Athw(x) is the angle across the ships direction. The
means, which is given in the figure, indicates were the maximum of the fit curve lies. This has no other practical meaning than to control the echo sounder is
doing a proper split beam.
Problems during programing
Description of the program
Figure 1: Picture of a TS probe with four echo sounders underneath. (www.imr.no)
Figure 2: The result shows as a histogram (blue) and a fitted curve (red) on top of this.