Class Simplex
java.lang.Object
Localiser.algorithms.genericLocaliser.simplex.Simplex
- All Implemented Interfaces:
MinimisationAlgorithm
Time delay based simplex method for localisation. Note that a lot of the code
here has been referenced directly from static MCMC functions. This is because
both MCMC and Simplex are based on the forward time delay problem hence are
mathematically very similar. Simplex is much faster than MCMC but does not
provide a full 3D probability distribution.
- Author:
- Jamie Macaulay
-
Nested Class Summary
Modifier and TypeClassDescriptionclass
Wrapper for the Simplex minimisation function. -
Field Summary
Modifier and TypeFieldDescriptionThe minimisation function.Fields inherited from interface Localiser.algorithms.genericLocaliser.MinimisationAlgorithm
ALGORITHM_FINISHED, ALGORITHM_FINISHED_ERR, ALGORITHM_RUNNING, PREPARING_ALGORTIHM
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionlong
double[]
getChi2()
The chi2 value for each resultorg.apache.commons.math.analysis.MultivariateRealFunction
Get the simplex chi2 fucntionGet the errors.double[][]
Get the result.A settings pane for the algorithm if it has user changeable parameters.boolean
A progress function which can be used to update different threads.void
notifyStatus
(int status, double progress) A progress function which can be used to update different threads.boolean
Run the algorithm to find a solution to the set minimisation function.void
Set the minimisation function.
-
Field Details
-
chi2Minimisation
The minimisation function.
-
-
Constructor Details
-
Simplex
public Simplex() -
Simplex
Constructor for the Simplex- Parameters:
chi2
-
-
-
Method Details
-
setMinimisationFunction
Description copied from interface:MinimisationAlgorithm
Set the minimisation function. This sets up the problem for the algorithm to solve.- Specified by:
setMinimisationFunction
in interfaceMinimisationAlgorithm
- Parameters:
chi2
- - the minimisation function specific to the problem whihc needs solved
-
runAlgorithm
public boolean runAlgorithm()Description copied from interface:MinimisationAlgorithm
Run the algorithm to find a solution to the set minimisation function. This- Specified by:
runAlgorithm
in interfaceMinimisationAlgorithm
- Returns:
- true if the algorithm competed sucessfully.
-
getResult
public double[][] getResult()Description copied from interface:MinimisationAlgorithm
Get the result. There maybe multiple results if ambiguities exist. The number of dimensions is defined in the minimisation function.- Specified by:
getResult
in interfaceMinimisationAlgorithm
- Returns:
- the result
-
getErrors
Description copied from interface:MinimisationAlgorithm
Get the errors. Should be the same number of dimensions as the result. If errors have not been calculated leave as null The number of dimensions is defined in the minimisation function.- Specified by:
getErrors
in interfaceMinimisationAlgorithm
- Returns:
- the errors in the result
-
getChi2
public double[] getChi2()Description copied from interface:MinimisationAlgorithm
The chi2 value for each result- Specified by:
getChi2
in interfaceMinimisationAlgorithm
- Returns:
- the chi2 value for each result.
-
getAlgorithmTime
public long getAlgorithmTime() -
notifyStatus
public void notifyStatus(int status, double progress) Description copied from interface:MinimisationAlgorithm
A progress function which can be used to update different threads.- Specified by:
notifyStatus
in interfaceMinimisationAlgorithm
- Parameters:
status
- - the current status flag.progress
- - the progress of the algorithm from 0 to 1.0.
-
hasParams
public boolean hasParams()Description copied from interface:MinimisationAlgorithm
A progress function which can be used to update different threads.- Specified by:
hasParams
in interfaceMinimisationAlgorithm
-
getSettingsPane
Description copied from interface:MinimisationAlgorithm
A settings pane for the algorithm if it has user changeable parameters.- Specified by:
getSettingsPane
in interfaceMinimisationAlgorithm
- Returns:
- a settings pane.
-
getChi2Function
public org.apache.commons.math.analysis.MultivariateRealFunction getChi2Function()Get the simplex chi2 fucntion- Returns:
- - the simplex chi2 function.
-