Once I had got the code working and solving correctly, it was time to move to a circular tank. This would help to mitigate many reflections, since there is hardly any sides for p-waves to directly bounce off into a hydrophone. This should have been quite an easy thing to do in the code, but it turned out it wasnt.
Firstly, after debugging all the silly errors mainly relating to the Order checking routines and variables, the fminsearch to a stupid amount of time to complete. Where it once took 5 seconds, it now to 50. I couldn’t figure it out, and I thought that it was an error in the code. But I came to realise that it was because the initial estimate has just become a lot worse. In the square version, with hydrophones in the corners, there was a quadrant for each hydrophone, and the estimate was placed in the middle of this quadrant. In the new layout, there are now cake sliced quarters of a circle, with the hydrophone at the edge. Using the estimate as the position of the hydrophone (like before) means that half of the data will be more than double the distance away from the initial estimate. This is like placing the estimate for the square tank on one of the walls, rather than in the middle. Therefore, for now, I will place the estimate somewhere in the middle of the centre and the outside hydrophone.
Attached are PDF’s of the Profiler from Matlab.
Profile for the circular tank simulation
Profile for the square tank simulation