Class GNSSEstimation

java.lang.Object
com.irurueta.navigation.gnss.GNSSEstimation
All Implemented Interfaces:
Serializable, Cloneable

public class GNSSEstimation extends Object implements Serializable, Cloneable
Contains GNSS state estimation, which contains user position, velocity and estimated clock offset and drift.
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private double
    Estimated receiver clock drift expressed in meters per second (m/s).
    private double
    Estimated receiver clock offset expressed in meters (m).
    static final int
    Number of parameters stored into Kalman filter state.
    private double
    X coordinate of estimated ECEF user velocity expressed in meters per second (m/s).
    private double
    Y coordinate of estimated ECEF user velocity expressed in meters per second (m/s).
    private double
    Z coordinate of estimated ECEF user velocity expressed in meters per second (m/s).
    private double
    X coordinate of estimated ECEF user position expressed in meters (m).
    private double
    Y coordinate of estimated ECEF user position expressed in meters (m).
    private double
    Z coordinate of estimated ECEF user position expressed in meters (m).
  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructor.
    GNSSEstimation(double x, double y, double z, double vx, double vy, double vz, double clockOffset, double clockDrift)
    Constructor.
    GNSSEstimation(com.irurueta.geometry.Point3D position, double vx, double vy, double vz, double clockOffset, double clockDrift)
    Constructor.
    GNSSEstimation(com.irurueta.geometry.Point3D position, com.irurueta.units.Speed vx, com.irurueta.units.Speed vy, com.irurueta.units.Speed vz, com.irurueta.units.Distance clockOffset, com.irurueta.units.Speed clockDrift)
    Constructor.
    GNSSEstimation(ECEFPosition position, ECEFVelocity velocity, double clockOffset, double clockDrift)
    Constructor.
    GNSSEstimation(ECEFPosition position, ECEFVelocity velocity, com.irurueta.units.Distance clockOffset, com.irurueta.units.Speed clockDrift)
    Constructor.
    GNSSEstimation(ECEFPositionAndVelocity positionAndVelocity, double clockOffset, double clockDrift)
    Constructor.
    GNSSEstimation(ECEFPositionAndVelocity positionAndVelocity, com.irurueta.units.Distance clockOffset, com.irurueta.units.Speed clockDrift)
    Constructor.
    Copy constructor.
    GNSSEstimation(com.irurueta.units.Distance x, com.irurueta.units.Distance y, com.irurueta.units.Distance z, com.irurueta.units.Speed vx, com.irurueta.units.Speed vy, com.irurueta.units.Speed vz, com.irurueta.units.Distance clockOffset, com.irurueta.units.Speed clockDrift)
    Constructor.
  • Method Summary

    Modifier and Type
    Method
    Description
    double[]
    Converts state data into an array.
    void
    asArray(double[] result)
    Converts state data into an array.
    com.irurueta.algebra.Matrix
    Converts state data into a column matrix.
    void
    asMatrix(com.irurueta.algebra.Matrix result)
    Converts state data into a column matrix.
    protected Object
    Makes a copy of this instance.
    void
    Copies data of provided instance into this instance.
    void
    Copies this instance data into provided instance.
    boolean
    Checks if provided instance has exactly the same contents as this instance.
    boolean
    equals(GNSSEstimation other, double threshold)
    Checks if provided instance has contents similar to this instance up to provided threshold value.
    boolean
    Checks if provided object is a GNSSKalmanStateEstimates having exactly the same contents as this instance.
    void
    fromArray(double[] array)
    Sets array values into this instance state.
    void
    fromMatrix(com.irurueta.algebra.Matrix matrix)
    Sets matrix values into this instance state.
    double
    Gets estimated receiver clock drift expressed in meters per second (m/s).
    com.irurueta.units.Speed
    Gets estimated receiver clock drift.
    void
    getClockDriftSpeed(com.irurueta.units.Speed result)
    Gets estimated receiver clock drift.
    double
    Gets estimated receiver clock offset expressed in meters (m).
    com.irurueta.units.Distance
    Gets estimated receiver clock offset.
    void
    getClockOffsetDistance(com.irurueta.units.Distance result)
    Gets estimated receiver clock offset.
    com.irurueta.units.Distance
    Gets x coordinate of estimated ECEF user position.
    void
    getDistanceX(com.irurueta.units.Distance result)
    Gets x coordinate of estimated ECEF user position.
    com.irurueta.units.Distance
    Gets y coordinate of estimated ECEF user position.
    void
    getDistanceY(com.irurueta.units.Distance result)
    Gets y coordinate of estimated ECEF user position.
    com.irurueta.units.Distance
    Gets z coordinate of estimated ECEF user position.
    void
    getDistanceZ(com.irurueta.units.Distance result)
    Gets z coordinate of estimated ECEF user position.
    Gets estimated ECEF user position.
    void
    Gets estimatedECEF user position.
    Gets estimated ECEF user velocity.
    void
    Gets estimated ECEF user velocity.
    com.irurueta.geometry.Point3D
    Gets estimated ECEF user position expressed in meters (m).
    void
    getPosition(com.irurueta.geometry.Point3D result)
    Gets estimated ECEF user position expressed in meters (m).
    Gets estimated ECEF user position and velocity.
    void
    Gets estimated ECEF user position and velocity.
    com.irurueta.units.Speed
    Gets x coordinate of estimated ECEF user velocity.
    void
    getSpeedX(com.irurueta.units.Speed result)
    Gets x coordinate of estimated ECEF user velocity.
    com.irurueta.units.Speed
    Gets y coordinate of estimated ECEF user velocity.
    void
    getSpeedY(com.irurueta.units.Speed result)
    Gets y coordinate of estimated ECEF user velocity.
    com.irurueta.units.Speed
    Gets z coordinate of estimated ECEF user velocity.
    void
    getSpeedZ(com.irurueta.units.Speed result)
    Gets z coordinate of estimated ECEF user velocity.
    double
    Gets x coordinate of estimated ECEF user velocity expressed in meters per second (m/s).
    double
    Gets y coordinate of estimated ECEF user velocity expressed in meters per second (m/s).
    double
    Gets z coordinate of estimated ECEF user velocity expressed in meters per second (m/s).
    double
    Gets x coordinate of estimated ECEF user position expressed in meters (m).
    double
    Gets y coordinate of estimated ECEF user position expressed in meters (m).
    double
    Gets z coordinate of estimated ECEF user position expressed in meters (m).
    int
    Computes and returns hash code for this instance.
    void
    setClockDrift(double clockDrift)
    Sets estimated receiver clock drift expressed in meters per second (m/s).
    void
    setClockDrift(com.irurueta.units.Speed clockDrift)
    Sets estimated receiver clock drift.
    void
    setClockOffset(double clockOffset)
    Sets estimated receiver clock offset expressed in meters (m).
    void
    setClockOffset(com.irurueta.units.Distance clockOffset)
    Sets estimated receiver clock offset.
    void
    setDistanceX(com.irurueta.units.Distance x)
    Sets x coordinate of estimated ECEF user position.
    void
    setDistanceY(com.irurueta.units.Distance y)
    Sets y coordinate of estimated ECEF user position.
    void
    setDistanceZ(com.irurueta.units.Distance z)
    Sets z coordinate of estimated ECEF user position.
    void
    Sets estimated ECEF user position.
    void
    Sets estimated ECEF user velocity.
    void
    setPosition(com.irurueta.geometry.Point3D position)
    Sets estimated ECEF user position expressed in meters (m).
    void
    Sets estimated ECEF user position and velocity.
    void
    setPositionCoordinates(double x, double y, double z)
    Sets coordinates of estimated ECEF user position expressed in meters (m).
    void
    setPositionCoordinates(com.irurueta.units.Distance x, com.irurueta.units.Distance y, com.irurueta.units.Distance z)
    Sets coordinates of estimated ECEF user position.
    void
    setSpeedX(com.irurueta.units.Speed speedX)
    Sets x coordinate of estimated ECEF user velocity.
    void
    setSpeedY(com.irurueta.units.Speed speedY)
    Sets y coordinate of estimated ECEF user velocity.
    void
    setSpeedZ(com.irurueta.units.Speed speedZ)
    Sets z coordinate of estimated ECEF user velocity.
    void
    setVelocityCoordinates(double vx, double vy, double vz)
    Sets coordinates of estimated ECEF user velocity expressed in meters per second (m/s).
    void
    setVelocityCoordinates(com.irurueta.units.Speed speedX, com.irurueta.units.Speed speedY, com.irurueta.units.Speed speedZ)
    Sets coordinates of estimated ECEF user velocity.
    void
    setVx(double vx)
    Sets x coordinate of estimated ECEF user velocity expressed in meters per second (m/s).
    void
    setVy(double vy)
    Sets y coordinate of estimated ECEF user velocity expressed in meters per second (m/s).
    void
    setVz(double vz)
    Sets z coordinate of estimated ECEF user velocity expressed in meters per second (m/s).
    void
    setX(double x)
    Sets x coordinate of estimated ECEF user position expressed in meters (m).
    void
    setY(double y)
    Sets y coordinate of estimated ECEF user position expressed in meters (m).
    void
    setZ(double z)
    Sets z coordinate of estimated ECEF user position expressed in meters (m).

    Methods inherited from class java.lang.Object

    finalize, getClass, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • NUM_PARAMETERS

      public static final int NUM_PARAMETERS
      Number of parameters stored into Kalman filter state.
      See Also:
    • x

      private double x
      X coordinate of estimated ECEF user position expressed in meters (m).
    • y

      private double y
      Y coordinate of estimated ECEF user position expressed in meters (m).
    • z

      private double z
      Z coordinate of estimated ECEF user position expressed in meters (m).
    • vx

      private double vx
      X coordinate of estimated ECEF user velocity expressed in meters per second (m/s).
    • vy

      private double vy
      Y coordinate of estimated ECEF user velocity expressed in meters per second (m/s).
    • vz

      private double vz
      Z coordinate of estimated ECEF user velocity expressed in meters per second (m/s).
    • clockOffset

      private double clockOffset
      Estimated receiver clock offset expressed in meters (m).
    • clockDrift

      private double clockDrift
      Estimated receiver clock drift expressed in meters per second (m/s).
  • Constructor Details

    • GNSSEstimation

      public GNSSEstimation()
      Constructor.
    • GNSSEstimation

      public GNSSEstimation(double x, double y, double z, double vx, double vy, double vz, double clockOffset, double clockDrift)
      Constructor.
      Parameters:
      x - x coordinate of estimated ECEF user position expressed in meters (m).
      y - y coordinate of estimated ECEF user position expressed in meters (m).
      z - z coordinate of estimated ECEF user position expressed in meters (m).
      vx - x coordinate of estimated ECEF user velocity expressed in meters per second (m/s).
      vy - y coordinate of estimated ECEF user velocity expressed in meters per second (m/s).
      vz - z coordinate of estimated ECEF user velocity expressed in meters per second (m/s).
      clockOffset - estimated receiver clock offset expressed in meters (m).
      clockDrift - estimated receiver clock drift expressed in meters per second (m/s).
    • GNSSEstimation

      public GNSSEstimation(com.irurueta.units.Distance x, com.irurueta.units.Distance y, com.irurueta.units.Distance z, com.irurueta.units.Speed vx, com.irurueta.units.Speed vy, com.irurueta.units.Speed vz, com.irurueta.units.Distance clockOffset, com.irurueta.units.Speed clockDrift)
      Constructor.
      Parameters:
      x - x coordinate of estimated ECEF user position.
      y - y coordinate of estimated ECEF user position.
      z - z coordinate of estimated ECEF user position.
      vx - x coordinate of estimated ECEF user velocity.
      vy - y coordinate of estimated ECEF user velocity.
      vz - z coordinate of estimated ECEF user velocity.
      clockOffset - estimated receiver clock offset.
      clockDrift - estimated receiver clock drift.
    • GNSSEstimation

      public GNSSEstimation(com.irurueta.geometry.Point3D position, double vx, double vy, double vz, double clockOffset, double clockDrift)
      Constructor.
      Parameters:
      position - estimated ECEF user position.
      vx - x coordinate of estimated ECEF user velocity expressed in meters per second (m/s).
      vy - y coordinate of estimated ECEF user velocity expressed in meters per second (m/s).
      vz - z coordinate of estimated ECEF user velocity expressed in meters per second (m/s).
      clockOffset - estimated receiver clock offset expressed in meters (m).
      clockDrift - estimated receiver clock drift expressed in meters per second (m/s).
    • GNSSEstimation

      public GNSSEstimation(com.irurueta.geometry.Point3D position, com.irurueta.units.Speed vx, com.irurueta.units.Speed vy, com.irurueta.units.Speed vz, com.irurueta.units.Distance clockOffset, com.irurueta.units.Speed clockDrift)
      Constructor.
      Parameters:
      position - estimated ECEF user position.
      vx - x coordinate of estimated ECEF user velocity.
      vy - y coordinate of estimated ECEF user velocity.
      vz - z coordinate of estimated ECEF user velocity.
      clockOffset - estimated receiver clock offset.
      clockDrift - estimated receiver clock drift. 8
    • GNSSEstimation

      public GNSSEstimation(ECEFPosition position, ECEFVelocity velocity, double clockOffset, double clockDrift)
      Constructor.
      Parameters:
      position - estimated ECEF user position.
      velocity - estimated ECEF user velocity.
      clockOffset - estimated receiver clock offset expressed in meters (m).
      clockDrift - estimated receiver clock drift expressed in meters per second (m/s).
    • GNSSEstimation

      public GNSSEstimation(ECEFPosition position, ECEFVelocity velocity, com.irurueta.units.Distance clockOffset, com.irurueta.units.Speed clockDrift)
      Constructor.
      Parameters:
      position - estimated ECEF user position.
      velocity - estimated ECEF user velocity.
      clockOffset - estimated receiver clock offset.
      clockDrift - estimated receiver clock drift.
    • GNSSEstimation

      public GNSSEstimation(ECEFPositionAndVelocity positionAndVelocity, double clockOffset, double clockDrift)
      Constructor.
      Parameters:
      positionAndVelocity - estimated ECEF user position and velocity.
      clockOffset - estimated receiver clock offset expressed in meters (m).
      clockDrift - estimated receiver clock drift expressed in meters per second (m/s).
    • GNSSEstimation

      public GNSSEstimation(ECEFPositionAndVelocity positionAndVelocity, com.irurueta.units.Distance clockOffset, com.irurueta.units.Speed clockDrift)
      Constructor.
      Parameters:
      positionAndVelocity - estimated ECEF user position and velocity.
      clockOffset - estimated receiver clock offset.
      clockDrift - estimated receiver clock drift.
    • GNSSEstimation

      public GNSSEstimation(GNSSEstimation input)
      Copy constructor.
      Parameters:
      input - input instance to copy data from.
  • Method Details

    • getX

      public double getX()
      Gets x coordinate of estimated ECEF user position expressed in meters (m).
      Returns:
      x coordinate of estimated ECEF user position.
    • setX

      public void setX(double x)
      Sets x coordinate of estimated ECEF user position expressed in meters (m).
      Parameters:
      x - x coordinate of estimated ECEF user position.
    • getY

      public double getY()
      Gets y coordinate of estimated ECEF user position expressed in meters (m).
      Returns:
      y coordinate of estimated ECEF user position.
    • setY

      public void setY(double y)
      Sets y coordinate of estimated ECEF user position expressed in meters (m).
      Parameters:
      y - y coordinate of estimated ECEF user position.
    • getZ

      public double getZ()
      Gets z coordinate of estimated ECEF user position expressed in meters (m).
      Returns:
      z coordinate of estimated ECEF user position.
    • setZ

      public void setZ(double z)
      Sets z coordinate of estimated ECEF user position expressed in meters (m).
      Parameters:
      z - z coordinate of estimated ECEF user position.
    • setPositionCoordinates

      public void setPositionCoordinates(double x, double y, double z)
      Sets coordinates of estimated ECEF user position expressed in meters (m).
      Parameters:
      x - x coordinate.
      y - y coordinate.
      z - z coordinate.
    • getVx

      public double getVx()
      Gets x coordinate of estimated ECEF user velocity expressed in meters per second (m/s).
      Returns:
      x coordinate of estimated ECEF user velocity.
    • setVx

      public void setVx(double vx)
      Sets x coordinate of estimated ECEF user velocity expressed in meters per second (m/s).
      Parameters:
      vx - x coordinate of estimated ECEF user velocity.
    • getVy

      public double getVy()
      Gets y coordinate of estimated ECEF user velocity expressed in meters per second (m/s).
      Returns:
      y coordinate of estimated ECEF user velocity.
    • setVy

      public void setVy(double vy)
      Sets y coordinate of estimated ECEF user velocity expressed in meters per second (m/s).
      Parameters:
      vy - y coordinate of estimated ECEF user velocity.
    • getVz

      public double getVz()
      Gets z coordinate of estimated ECEF user velocity expressed in meters per second (m/s).
      Returns:
      z coordinate of estimated ECEF user velocity.
    • setVz

      public void setVz(double vz)
      Sets z coordinate of estimated ECEF user velocity expressed in meters per second (m/s).
      Parameters:
      vz - z coordinate of estimated ECEF user velocity.
    • setVelocityCoordinates

      public void setVelocityCoordinates(double vx, double vy, double vz)
      Sets coordinates of estimated ECEF user velocity expressed in meters per second (m/s).
      Parameters:
      vx - x coordinate.
      vy - y coordinate.
      vz - z coordinate.
    • getClockOffset

      public double getClockOffset()
      Gets estimated receiver clock offset expressed in meters (m). Notice that clock offset is estimated in terms of distance, since timing errors will ultimately be propagated as distance errors.
      Returns:
      estimated receiver clock offset.
    • setClockOffset

      public void setClockOffset(double clockOffset)
      Sets estimated receiver clock offset expressed in meters (m). Notice that clock offset is estimated in terms of distance, since timing errors are ultimately propagated as distance errors.
      Parameters:
      clockOffset - estimated receiver clock offset.
    • getClockDrift

      public double getClockDrift()
      Gets estimated receiver clock drift expressed in meters per second (m/s). Notice that the rate at which clock errors increase or decrease will ultimately propagate as speed (and hence position) errors.
      Returns:
      estimated receiver clock drift.
    • setClockDrift

      public void setClockDrift(double clockDrift)
      Sets estimated receiver clock drift expressed in meters per second (m/s). Notice that the rate at which clock errors increase or decrease will ultimately propagate as speed (and hence position) errors.
      Parameters:
      clockDrift - estimated receiver clock drift.
    • getDistanceX

      public void getDistanceX(com.irurueta.units.Distance result)
      Gets x coordinate of estimated ECEF user position.
      Parameters:
      result - instance where x coordinate of estimated ECEF user position will be stored.
    • getDistanceX

      public com.irurueta.units.Distance getDistanceX()
      Gets x coordinate of estimated ECEF user position.
      Returns:
      x coordinate of estimated ECEF user position.
    • setDistanceX

      public void setDistanceX(com.irurueta.units.Distance x)
      Sets x coordinate of estimated ECEF user position.
      Parameters:
      x - x coordinate of estimated ECEF user position.
    • getDistanceY

      public void getDistanceY(com.irurueta.units.Distance result)
      Gets y coordinate of estimated ECEF user position.
      Parameters:
      result - instance where y coordinate of estimated ECEF user position will be stored.
    • getDistanceY

      public com.irurueta.units.Distance getDistanceY()
      Gets y coordinate of estimated ECEF user position.
      Returns:
      y coordinate of estimated ECEF user position.
    • setDistanceY

      public void setDistanceY(com.irurueta.units.Distance y)
      Sets y coordinate of estimated ECEF user position.
      Parameters:
      y - y coordinate of estimated ECEF user position.
    • getDistanceZ

      public void getDistanceZ(com.irurueta.units.Distance result)
      Gets z coordinate of estimated ECEF user position.
      Parameters:
      result - instance where z coordinate of estimated ECEF user position will be stored.
    • getDistanceZ

      public com.irurueta.units.Distance getDistanceZ()
      Gets z coordinate of estimated ECEF user position.
      Returns:
      z coordinate of estimated ECEF user position.
    • setDistanceZ

      public void setDistanceZ(com.irurueta.units.Distance z)
      Sets z coordinate of estimated ECEF user position.
      Parameters:
      z - z coordinate of estimated ECEF user position.
    • setPositionCoordinates

      public void setPositionCoordinates(com.irurueta.units.Distance x, com.irurueta.units.Distance y, com.irurueta.units.Distance z)
      Sets coordinates of estimated ECEF user position.
      Parameters:
      x - x coordinate.
      y - y coordinate.
      z - z coordinate.
    • getSpeedX

      public void getSpeedX(com.irurueta.units.Speed result)
      Gets x coordinate of estimated ECEF user velocity.
      Parameters:
      result - instance where x coordinate of estimated ECEF user velocity will be stored.
    • getSpeedX

      public com.irurueta.units.Speed getSpeedX()
      Gets x coordinate of estimated ECEF user velocity.
      Returns:
      x coordinate of estimated ECEF user velocity.
    • setSpeedX

      public void setSpeedX(com.irurueta.units.Speed speedX)
      Sets x coordinate of estimated ECEF user velocity.
      Parameters:
      speedX - x coordinate of estimated ECEF user velocity.
    • getSpeedY

      public void getSpeedY(com.irurueta.units.Speed result)
      Gets y coordinate of estimated ECEF user velocity.
      Parameters:
      result - instance where y coordinate of estimated ECEF user velocity will be stored.
    • getSpeedY

      public com.irurueta.units.Speed getSpeedY()
      Gets y coordinate of estimated ECEF user velocity.
      Returns:
      y coordinate of estimated ECEF user velocity.
    • setSpeedY

      public void setSpeedY(com.irurueta.units.Speed speedY)
      Sets y coordinate of estimated ECEF user velocity.
      Parameters:
      speedY - y coordinate of estimated ECEF user velocity.
    • getSpeedZ

      public void getSpeedZ(com.irurueta.units.Speed result)
      Gets z coordinate of estimated ECEF user velocity.
      Parameters:
      result - instance where z coordinate of estimated ECEF user velocity will be stored.
    • getSpeedZ

      public com.irurueta.units.Speed getSpeedZ()
      Gets z coordinate of estimated ECEF user velocity.
      Returns:
      z coordinate of estimated ECEF user velocity.
    • setSpeedZ

      public void setSpeedZ(com.irurueta.units.Speed speedZ)
      Sets z coordinate of estimated ECEF user velocity.
      Parameters:
      speedZ - z coordinate of estimated ECEF user velocity.
    • setVelocityCoordinates

      public void setVelocityCoordinates(com.irurueta.units.Speed speedX, com.irurueta.units.Speed speedY, com.irurueta.units.Speed speedZ)
      Sets coordinates of estimated ECEF user velocity.
      Parameters:
      speedX - x coordinate.
      speedY - y coordinate.
      speedZ - z coordinate.
    • getClockOffsetDistance

      public void getClockOffsetDistance(com.irurueta.units.Distance result)
      Gets estimated receiver clock offset. Notice that clock offset is estimated in terms of distance, since timing errors will ultimately be propagated as distance errors.
      Parameters:
      result - instance where estimated receiver clock offset will be stored.
    • getClockOffsetDistance

      public com.irurueta.units.Distance getClockOffsetDistance()
      Gets estimated receiver clock offset. Notice that clock offset is estimated in terms of distance, since timing errors will ultimately be propagated as distance errors.
      Returns:
      estimated receiver clock offset.
    • setClockOffset

      public void setClockOffset(com.irurueta.units.Distance clockOffset)
      Sets estimated receiver clock offset. Notice that clock offset is estimated in terms of distance, since timing errors are ultimately propagated as distance errors.
      Parameters:
      clockOffset - estimated receiver clock offset.
    • getClockDriftSpeed

      public void getClockDriftSpeed(com.irurueta.units.Speed result)
      Gets estimated receiver clock drift. Notice that the rate at which clock errors increase or decrease will ultimately propagate as speed (and hence position) errors.
      Parameters:
      result - instance where estimated receiver clock drift will be stored.
    • getClockDriftSpeed

      public com.irurueta.units.Speed getClockDriftSpeed()
      Gets estimated receiver clock drift. Notice that the rate at which clock errors increase or decrease will ultimately propagate as speed (and hence position) errors.
      Returns:
      estimated receiver clock drift.
    • setClockDrift

      public void setClockDrift(com.irurueta.units.Speed clockDrift)
      Sets estimated receiver clock drift. Notice that the rate at which clock errors increase or decrease will ultimately propagate as speed (and hence position) errors.
      Parameters:
      clockDrift - estimated receiver clock drift.
    • getPosition

      public void getPosition(com.irurueta.geometry.Point3D result)
      Gets estimated ECEF user position expressed in meters (m).
      Parameters:
      result - instance where estimated ECEF user position will be stored.
    • getPosition

      public com.irurueta.geometry.Point3D getPosition()
      Gets estimated ECEF user position expressed in meters (m).
      Returns:
      estimated ECEF user position.
    • setPosition

      public void setPosition(com.irurueta.geometry.Point3D position)
      Sets estimated ECEF user position expressed in meters (m).
      Parameters:
      position - estimated ECEF user position.
    • getEcefPosition

      public void getEcefPosition(ECEFPosition result)
      Gets estimatedECEF user position.
      Parameters:
      result - instance where result will be stored.
    • getEcefPosition

      public ECEFPosition getEcefPosition()
      Gets estimated ECEF user position.
      Returns:
      estimated ECEF user position.
    • setEcefPosition

      public void setEcefPosition(ECEFPosition ecefPosition)
      Sets estimated ECEF user position.
      Parameters:
      ecefPosition - estimated ECEF user position.
    • getEcefVelocity

      public void getEcefVelocity(ECEFVelocity result)
      Gets estimated ECEF user velocity.
      Parameters:
      result - instance where result will be stored.
    • getEcefVelocity

      public ECEFVelocity getEcefVelocity()
      Gets estimated ECEF user velocity.
      Returns:
      estimated ECEF user velocity.
    • setEcefVelocity

      public void setEcefVelocity(ECEFVelocity ecefVelocity)
      Sets estimated ECEF user velocity.
      Parameters:
      ecefVelocity - estimated ECEF user velocity.
    • getPositionAndVelocity

      public void getPositionAndVelocity(ECEFPositionAndVelocity result)
      Gets estimated ECEF user position and velocity.
      Parameters:
      result - instance where result will be stored.
    • getPositionAndVelocity

      public ECEFPositionAndVelocity getPositionAndVelocity()
      Gets estimated ECEF user position and velocity.
      Returns:
      estimated ECEF user position and velocity.
    • setPositionAndVelocity

      public void setPositionAndVelocity(ECEFPositionAndVelocity positionAndVelocity)
      Sets estimated ECEF user position and velocity.
      Parameters:
      positionAndVelocity - estimated ECEF user position and velocity.
    • asArray

      public void asArray(double[] result)
      Converts state data into an array.
      Parameters:
      result - instance where state data will be stored.
      Throws:
      IllegalArgumentException - if provided array does not have length 8.
    • asArray

      public double[] asArray()
      Converts state data into an array.
      Returns:
      a new array containing state data.
    • fromArray

      public void fromArray(double[] array)
      Sets array values into this instance state.
      Parameters:
      array - array to copy data from.
      Throws:
      IllegalArgumentException - if provided array does not have length 8.
    • asMatrix

      public void asMatrix(com.irurueta.algebra.Matrix result)
      Converts state data into a column matrix. If provided matrix is not 8x1 it will be resized.
      Parameters:
      result - instance where state data will be stored.
    • asMatrix

      public com.irurueta.algebra.Matrix asMatrix()
      Converts state data into a column matrix.
      Returns:
      a new 8x1 column matrix containing state data.
    • fromMatrix

      public void fromMatrix(com.irurueta.algebra.Matrix matrix)
      Sets matrix values into this instance state.
      Parameters:
      matrix - matrix to copy data from.
      Throws:
      IllegalArgumentException - if provided matrix is not 8x1.
    • copyTo

      public void copyTo(GNSSEstimation output)
      Copies this instance data into provided instance.
      Parameters:
      output - destination instance where data will be copied to.
    • copyFrom

      public void copyFrom(GNSSEstimation input)
      Copies data of provided instance into this instance.
      Parameters:
      input - instance to copy data from.
    • hashCode

      public int hashCode()
      Computes and returns hash code for this instance. Hash codes are almost unique values that are useful for fast classification and storage of objects in collections.
      Overrides:
      hashCode in class Object
      Returns:
      Hash code.
    • equals

      public boolean equals(Object obj)
      Checks if provided object is a GNSSKalmanStateEstimates having exactly the same contents as this instance.
      Overrides:
      equals in class Object
      Parameters:
      obj - Object to be compared.
      Returns:
      true if both objects are considered to be equal, false otherwise.
    • equals

      public boolean equals(GNSSEstimation other)
      Checks if provided instance has exactly the same contents as this instance.
      Parameters:
      other - instance to be compared.
      Returns:
      true if both instances are considered to be equal, false otherwise.
    • equals

      public boolean equals(GNSSEstimation other, double threshold)
      Checks if provided instance has contents similar to this instance up to provided threshold value.
      Parameters:
      other - instance to be compared.
      threshold - maximum difference allowed for values.
      Returns:
      true if both instances are considered to be equal (up to provided threshold), false otherwise.
    • clone

      protected Object clone() throws CloneNotSupportedException
      Makes a copy of this instance.
      Overrides:
      clone in class Object
      Returns:
      a copy of this instance.
      Throws:
      CloneNotSupportedException - if clone fails for some reason.