Class InhomogeneousLinearLeastSquaresLaterationSolver<P extends com.irurueta.geometry.Point<P>>

java.lang.Object
com.irurueta.navigation.lateration.LaterationSolver<P>
com.irurueta.navigation.lateration.InhomogeneousLinearLeastSquaresLaterationSolver<P>
Type Parameters:
P - a Point type.
Direct Known Subclasses:
InhomogeneousLinearLeastSquaresLateration2DSolver, InhomogeneousLinearLeastSquaresLateration3DSolver

public abstract class InhomogeneousLinearLeastSquaresLaterationSolver<P extends com.irurueta.geometry.Point<P>> extends LaterationSolver<P>
Linearly solves the lateration problem using an inhomogeneous solution. This class is base on the implementation found at: https://github.com/lemmingapex/trilateration Further information and algorithms can be found at Willy Hereman and William S. Murphy Jr. Determination of a Position in Three Dimensions Using Trilateration and Approximate Distances.
  • Constructor Details

    • InhomogeneousLinearLeastSquaresLaterationSolver

      protected InhomogeneousLinearLeastSquaresLaterationSolver()
      Constructor.
    • InhomogeneousLinearLeastSquaresLaterationSolver

      protected InhomogeneousLinearLeastSquaresLaterationSolver(P[] positions, double[] distances)
      Constructor.
      Parameters:
      positions - known positions of static nodes.
      distances - euclidean distances from static nodes to mobile node.
      Throws:
      IllegalArgumentException - if either positions or distances are null, don't have the same length or their length is smaller than required points.
    • InhomogeneousLinearLeastSquaresLaterationSolver

      protected InhomogeneousLinearLeastSquaresLaterationSolver(LaterationSolverListener<P> listener)
      Constructor.
      Parameters:
      listener - listener to be notified of events raised by this instance.
    • InhomogeneousLinearLeastSquaresLaterationSolver

      protected InhomogeneousLinearLeastSquaresLaterationSolver(P[] positions, double[] distances, LaterationSolverListener<P> listener)
      Constructor.
      Parameters:
      positions - known positions of static nodes.
      distances - euclidean distances from static nodes to mobile node.
      listener - listener to be notified of events raised by this instance.
      Throws:
      IllegalArgumentException - if either positions or distances are null, don't have the same length or their length is smaller than required points.
  • Method Details