Interface BearingLocaliser
- All Superinterfaces:
LocalisationAlgorithm
,LocalisationAlgorithmInfo
- All Known Implementing Classes:
CombinedBearingLocaliser
,LSQBearingLocaliser
,MLGridBearingLocaliser
,MLGridBearingLocaliser2
,MLLineBearingLocaliser2
,PairBearingLocaliser
,SimplexBearingLocaliser
Class to estimate bearings, with errors from a closely spaced
hydrophone array
- Author:
- Doug Gillespie
-
Method Summary
Modifier and TypeMethodDescriptionGet the principle axis of the arrayint
int
Get a hydrophone map for this localiserdouble[][]
localise
(double[] delays, long timeMillis) Calculate angles theta and phi, based on a set of delays.void
prepare
(int[] arrayElements, long timeMillis, double timingError) Do any preparation necessary (e.g.Methods inherited from interface Localiser.LocalisationAlgorithm
getAlgorithmInfo, getTethysCreator
Methods inherited from interface Localiser.LocalisationAlgorithmInfo
getAlgorithmName, getLocalisationContents, getParameters
-
Method Details
-
prepare
void prepare(int[] arrayElements, long timeMillis, double timingError) Do any preparation necessary (e.g. creation of look up tables)- Parameters:
arrayElements
- list of hydrophone array elements in the sub array for this localiser.timeMillis
- , current time for this localisationtimingError
- expected timing error for each measurement (typically 1/12 of an ADC bin, or less if interpolation is being used in the cross correlation function).
-
getArrayType
int getArrayType()- Returns:
- the type of array - linear, planar, volumetric, etc.
-
getHydrophoneMap
int getHydrophoneMap()Get a hydrophone map for this localiser- Returns:
- bitmap of used hydrophones.
-
getArrayAxis
PamVector[] getArrayAxis()Get the principle axis of the array- Returns:
- for a linear array this will be a vector along the array;
for a planar array, this will be the vector on the plane between two hydrophones which is closest to the y axis.
-
localise
double[][] localise(double[] delays, long timeMillis) Calculate angles theta and phi, based on a set of delays. The number of delays should be equal to n(n-1)/2 where n is the number of hydrophone elements in the sub array.- Parameters:
delays
- array of delay times.timeMillis
- of this detection. This is relatively unused except in situation where hydrophone elements are moving relative to each other with time.- Returns:
- theta, phi and their estimated errors all in radians.
Data are packed into a two row array, the first row of which contains one or two angles, the second (optional) row contains the errors on those angles.
-