Package jmri.jmrix.rps
Class Ash2_1Algorithm
- java.lang.Object
-
- jmri.jmrix.rps.AbstractCalculator
-
- jmri.jmrix.rps.Ash2_1Algorithm
-
- All Implemented Interfaces:
Calculator
public class Ash2_1Algorithm extends AbstractCalculator
Implementation of 2.1th algorithm for reducing ReadingsThis algorithm was provided by Robert Ashenfelter based in part on the work of Ralph Bucher in his paper "Exact Solution for Three Dimensional Hyperbolic Positioning Algorithm and Synthesizable VHDL Model for Hardware Implementation".
Neither Ashenfelter nor Bucher provide any guarantee as to the intellectual property status of this algorithm. Use it at your own risk.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static class
Ash2_1Algorithm.RetVal
Internal class to handle return value.
-
Constructor Summary
Constructors Constructor Description Ash2_1Algorithm(javax.vecmath.Point3d[] sensors, double vsound)
Ash2_1Algorithm(javax.vecmath.Point3d[] sensors, double vsound, int offset)
Ash2_1Algorithm(javax.vecmath.Point3d sensor1, javax.vecmath.Point3d sensor2, javax.vecmath.Point3d sensor3, double vsound)
Ash2_1Algorithm(javax.vecmath.Point3d sensor1, javax.vecmath.Point3d sensor2, javax.vecmath.Point3d sensor3, javax.vecmath.Point3d sensor4, double vsound)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Measurement
convert(Reading r)
Measurement
convert(Reading r, javax.vecmath.Point3d guess)
Seed the conversion using an estimated positionMeasurement
convert(Reading r, Measurement last)
Seed the conversion using a last measurement(package private) Ash2_1Algorithm.RetVal
RPSpos(int nr, double[] Tr, double[] Xr, double[] Yr, double[] Zr, double Vs, double Xt, double Yt, double Zt)
-
Methods inherited from class jmri.jmrix.rps.AbstractCalculator
prep, summarize
-
-
-
-
Constructor Detail
-
Ash2_1Algorithm
public Ash2_1Algorithm(javax.vecmath.Point3d[] sensors, double vsound, int offset)
-
Ash2_1Algorithm
public Ash2_1Algorithm(javax.vecmath.Point3d[] sensors, double vsound)
-
Ash2_1Algorithm
public Ash2_1Algorithm(javax.vecmath.Point3d sensor1, javax.vecmath.Point3d sensor2, javax.vecmath.Point3d sensor3, double vsound)
-
Ash2_1Algorithm
public Ash2_1Algorithm(javax.vecmath.Point3d sensor1, javax.vecmath.Point3d sensor2, javax.vecmath.Point3d sensor3, javax.vecmath.Point3d sensor4, double vsound)
-
-
Method Detail
-
convert
public Measurement convert(Reading r)
-
convert
public Measurement convert(Reading r, javax.vecmath.Point3d guess)
Seed the conversion using an estimated position
-
convert
public Measurement convert(Reading r, Measurement last)
Seed the conversion using a last measurement
-
RPSpos
Ash2_1Algorithm.RetVal RPSpos(int nr, double[] Tr, double[] Xr, double[] Yr, double[] Zr, double Vs, double Xt, double Yt, double Zt)
-
-