Revision as of 03:31, 24 August 2013 editRHB100 (talk | contribs)Extended confirmed users2,197 edits →Least squares method has replaced trilateration method and Multidimensional Newton Raphson method← Previous edit | Revision as of 21:36, 24 August 2013 edit undoRHB100 (talk | contribs)Extended confirmed users2,197 edits →Least squares method has replaced trilateration method and Multidimensional Newton Raphson methodNext edit → | ||
Line 617: | Line 617: | ||
As for you, Martijn Meijering, you should find out the truth before making statements. When you say "is he still doing that", You are accusing me of having pushed personal research onto Misplaced Pages at some time in the past. Well you are an outright liar, I have never pushed personal research onto Misplaced Pages. Maybe we should nominate you as the outright liar of the week. You are an outright liar. I have never pushed personal research onto Misplaced Pages. ] (]) 03:31, 24 August 2013 (UTC) | As for you, Martijn Meijering, you should find out the truth before making statements. When you say "is he still doing that", You are accusing me of having pushed personal research onto Misplaced Pages at some time in the past. Well you are an outright liar, I have never pushed personal research onto Misplaced Pages. Maybe we should nominate you as the outright liar of the week. You are an outright liar. I have never pushed personal research onto Misplaced Pages. ] (]) 03:31, 24 August 2013 (UTC) | ||
==Application of numerical methods is not personal research== | |||
In this era of high speed computers, the use of numerical methods is an indispensable tool of many engineers. Solution methods for many problems can be found in such books as "Numerical Recipes". Methods of solving the GPS navigation equations can be found in the chapter on root finding in this book. One such method is multidimensional Newton Raphson. In utilizing this method, the engineer may have to perform some work such as the evaluation of partial derivatives. When the engineer uses multidimensional Newton Raphson including the necessary evaluation of partial derivatives, the engineer is not performing personal research. The engineer is instead using a well known method to solve a given problem. The evaluation of partial derivatives is straightforward everyday work, there is no personal research involved. | |||
Also the engineer may choose to use one dimensional Newton Raphson in conjunction with trilateration to solve the GPS navigation equations. This is a straightforward application of well known methods to a given problem. Again this is straightforward everyday work. There is no personal research involved. | |||
We should therefore keep in mind that for the purposes of Misplaced Pages, the straightforward application of numerical methods to solve a given problem is certainly not personal research. |
Revision as of 21:36, 24 August 2013
This is the talk page for discussing improvements to the Global Positioning System article. This is not a forum for general discussion of the article's subject. |
|
Find sources: Google (books · news · scholar · free images · WP refs) · FENS · JSTOR · TWL |
Archives: 1, 2, 3, 4, 5, 6, 7, 8, 9Auto-archiving period: 30 days |
Global Positioning System is a former featured article candidate. Please view the links under Article milestones below to see why the nomination was archived. For older candidates, please check the archive. | |||||||||||||
| |||||||||||||
Current status: Former featured article candidate |
This article has not yet been rated on Misplaced Pages's content assessment scale. It is of interest to the following WikiProjects: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Please add the quality rating to the {{WikiProject banner shell}} template instead of this project banner. See WP:PIQA for details.
{{WikiProject banner shell}} template instead of this project banner. See WP:PIQA for details.
{{WikiProject banner shell}} template instead of this project banner. See WP:PIQA for details.
Template:WikiProject Maritime Trades Please add the quality rating to the{{WikiProject banner shell}} template instead of this project banner. See WP:PIQA for details.
{{WikiProject banner shell}} template instead of this project banner. See WP:PIQA for details.
{{WikiProject banner shell}} template instead of this project banner. See WP:PIQA for details.
|
A fact from this article was featured on Misplaced Pages's Main Page in the On this day section on February 14, 2005, February 14, 2006, February 14, 2007, and February 14, 2008. |
Archives |
This page has archives. Sections older than 30 days may be automatically archived by Lowercase sigmabot III when more than 4 sections are present. |
Economic impact
Hey everyone, I was wondering if readers might benefit from a section on the economic impact of the GPS system since the U.S. government made it freely accessible? Jodayagi (talk) 19:31, 9 May 2013 (UTC)
- Excellent suggestion! I look forward to reading it and seeing if I can find anything to add. —EncMstr (talk) 21:13, 9 May 2013 (UTC)
Talk about spheres
I believe just about everything in this section is wrong: http://en.wikipedia.org/Global_Positioning_System#Basic_concept_of_GPS
GPS receivers don't have atomic clocks (although the satellites do), so they can't use the time a signal was emitted from a satellite to determine a fixed sphere they are on. Rather, you know that the *difference* in times between two satellites puts you on a hyperboloid.
My understanding it that this is the real reason you need 4 satellites. The 4th satellite doesn't distinguish between 2 points (which are at the intersection of 3 sphere, it's the extra variable to make up for the fact that you don't know the absolute time (only time differences). Ambiguity between just two (or three or four) discrete points in space is probably resolved by assuming you're on the surface of the Earth. Jess (talk) 21:21, 19 August 2013 (UTC)
- That section does not say that GPS receivers use atomic clocks, and does say it precisely timing the signals sent by satellites. Can you point to any specific incorrect fact?
- Also, there is no need to resolve sphere overlap ambiguity when there are four or more satellite signals. —EncMstr (talk) 22:33, 19 August 2013 (UTC)
Articles relating GPS and Trilateration
Woodstone has said "remove doubtful method with shaky refs". This is tottally and completely false. This section shows that the method involving trilateration and one dimensional iteration has good references. The next section shows that this method most certainly works.
There are many articles relating GPS and Trilateration as can be seen at GPS and Trilateration articles. Unfortunately most of these articles seemed to be dumbed down, they talk about circles instead of spheres as if the concept of a sphere were too difficult to comprehend.
One of the better articles in my opinion is "Position Determination with GPS".
It is not difficult to understand that there are so many such articles since one of the fundamental principles in GPS is the determination of location in part by determining the intersections of three spheres. Once the clock error has been approximately driven to zero so that four spheres intersect approximately, an estimate of position will have been obtained.
This is the reason why trilateration as a part of numerical root finding (i.e. finding the value of b which drives da to zero through an iterative process) is one of the two methods discussed in Position calculation, advanced.
Another method discussed is multidimensional root finding. This method does not involve the use of trilateration.
It should be kept in mind that these methods are discussed on the conceptual level. They are not descriptions of algorithms.
The Bancroft method is in my opinion the best method. RHB100 (talk) 19:48, 20 August 2013 (UTC)
- The problem of course being that nobody actually uses the Bancroft method in computing position solutions. Batch linearized least squares is more than enough to get the job done, even from cold start-- if you provide an a priori receiver solution of {0, 0, 0} (in ECEF) it will still converge in 2-3 iterations. It seems inappropriate both to have Bancroft be the first method mentioned, and really even to include it in the article at all. siafu (talk) 20:03, 20 August 2013 (UTC)
The Bancroft is a method that involves least squares. The term "batch linearized least squares" is inadequate to describe what you're talking about. You say 2-3 iterations but the Bancroft method requires no iterations. RHB100 (talk) 00:15, 21 August 2013 (UTC)
- Whether or not the Bancroft method requires iteration is irrelevant; the fact is that it's little more than a mathematical curiosity not actually applied in GPS technology except in a few rare cases. And yes, "batch linearized least squares" is more than enough to describe what I'm talking about. Linearize the system, in this case the range equations, and solve the overdetermined set of pseudoranges using a batch filter (i.e., ingesting all measurements at once as opposed to something like a Kalman filter). If you're unfamiliar with this, the math is laid out quite clearly in Linear least squares (mathematics) and the application to GPS is done in basically every GPS textbook. Rather than continuing the harp on about how wonderful the Bancroft method is, you could provide some sources to show that it's actually notable in the GPS community. siafu (talk) 17:32, 21 August 2013 (UTC)
First you talk about a method which requires 2-3 iterations. But then you refer to Linear least squares (mathematics). But linear least squares provides a closed form solution which implies zero iterations. So what you say is self contradictory. Now I am a licensed professional engineer with many years of experience and I find thw words "batch linearized least squares" to be vague and ambiguous and I have certainly studied and used linearized least squares. Now if these words do not clearly describe to me the computational steps you are talking about, then they are certainly likely to confuse the typical reader. RHB100 (talk) 20:01, 21 August 2013 (UTC)
- Yes, I've heard you relate your list of qualifications before. I am myself a published research engineer specializing in GPS. As for least squares, you clearly neither read the article nor are apparently familiar with the topic. The least squares method for overdetermined systems is an iterative one, arriving at progressively more accurate estimates, assuming that the initial point was within the linear region of the system in question. See page 15, here: http://www.nbmg.unr.edu/staff/pdfs/Blewitt%20Basics%20of%20gps.pdf . Again, do you have any sources at all that indicate that the Bancroft method is anything more than just an elegant but completely non-notable solution? siafu (talk) 20:34, 21 August 2013 (UTC)
References 92 and 93 are given for the Bancroft method, one of which is in an IEEE publication and the other is free. These should certainly be adequate. What references do you have critical of the Bancroft method? How does the method you are talking about differ from what is called "Multidimensional Newton-Raphson calculations" in the Misplaced Pages GPS article and what is also discussed in the paper called, "The Mathematics of GPS" by Richard B. Langley of the University of New Brunswick? Once I understand the method you are talking about, then we can discuss the advantages and disadvantages as compared to the Bancroft method. RHB100 (talk) 21:02, 21 August 2013 (UTC)
- Discussing the advantages and disadvantages of the Bancroft method is exactly what we should not be doing, see WP:OR. I don't need a reference that's critical of the Bancroft method; I'm not saying it's a bad method or that the article should say it's a bad method. I'm saying nobody every uses it. It's not used in precise positioning applications, it's not used in orbit determination, it's not used in navigation. Why do we have a section on it? The article needs to reflect the expert consensus, and experts are not particularly interested in Bancroft's method. siafu (talk) 22:04, 21 August 2013 (UTC)
Well we don't know whether what you say is true or not. If something is wrong with the Bancroft method then we need a reference and a discussion so that everybody will know. RHB100 (talk) 23:38, 21 August 2013 (UTC)
- Can you or can you not provide any support at all for the assertion that the Bancroft method is notable in the GPS community as a method used for obtaining position solutions? It is not at all my responsibility to demonstrate that it isn't. Furthermore, I mentioned that you could read about how it's actually done in any GPS textbook, and went so far as to give you one link already. I also recommend Global Positioning System: Signals, Measurements, and Performance by P. Misra and P. Enge, as it's the one used when I took intro to GNSS years ago. You could also try Understanding GPS: Principles and Applications, Second Edition by E. Kaplan and C. Hegarty, which I actually prefer. There is nothing "wrong" with the Bancroft method, but it's just not widely used, and one has to wonder why the section on navigation equations does not provide a realistic discussion of the topic, or at least one that is recognizable to an expert in the field. siafu (talk) 05:55, 22 August 2013 (UTC)
I don't know how many times I have to keep repeating this to you but the fact the Bancroft method was published in an IEEE publication is more than adequate to show its notability. The fact that it was also published in an online paper also shows its notability. RHB100 (talk) 18:57, 22 August 2013 (UTC)
- The fact that it's published in IEEE means only that it exists and it's a real thing. Why should it be in the article? Do we have similar sections on ARAIM, for example? It's certainly published in IEEE . Bancroft's method deserves maybe two sentences given the current weight given to methods actually in use in GPS. The fact that there's a section that says "Additional methods for more than four satellites" is itself absurd. Except in rare cases (indoors, urban canyons) receivers will invariably see more than four satellites, and the idea that they would ever implement a scheme that fails to take advantage of more than 4 satellites is patently ridiculous. Unless you are able to provide a source indicating that Bancroft's method is not just an extant method but of actual note in the actual GPS community, then the section needs a major rewrite, which I plan to do this weekend. siafu (talk) 01:56, 23 August 2013 (UTC)
Code and results from using trilateration and one dimensional root finding
Woodstone has said "remove doubtful method with shaky refs". This is tottally and completely false. This section shows that the method involving trilateration and one dimensional iteration most certainly works. The previous section has shown that this method has good references.
There have been some who have expressed some doubt as to whether the method involving trilateration and one dimensional root finding as discussed in the GPS article would work. It is hoped that this section will clarify that misunderstanding by showing that this method certainly does work. The results of running a Fortran program which uses this method can be seen by clicking show on the bar labelled "Results from using trilateration and one dimensional root finding". Three of the routines that comprise the Fortran program can be seen by clicking show on the indicated bars below. Two of the subroutines, subroutines zbrac and rtbis, cannot be shown because they are protected by copyright. These subroutines can be found in the book on Numerical Recipes. The subroutine zbrac performs the task of finding a bracket for the solution given an initial guess. The subroutine rtbis performs the task of making a binary search to find a small enough bracket of the solution to meet the specified accuracy.
The results below show for each case the positions and psuedoranges of the three satellites which are used for trilateration and the one satellite which is not used for trilateration. The solution, the receiver position is then shown along with RBIAS which is the bias in dimensions of distance rather than time. RHB100 (talk) 21:14, 24 April 2010 (UTC)
Results from using trilateration and one dimensional root findingTrilateration Satellites Sat # X Y Z PSUEDORANGE 1 15524471.180 -16649826.220 13512272.390 22262088.180 2 -2304058.534 -23287906.470 11917038.110 19908187.050 3 -14799931.400 -21425358.240 6069947.224 21479180.580 Non-trilateration Satellite Sat # X Y Z PSUEDORANGE 4 16680243.360 -3069625.561 20378551.050 24554242.170 X Y Z RBIAS Solution = -733186.0 -5443792.0 3231193.0 -300.0
STOP Normal completion in routine main of gps.
$ ./gps.exe
Trilateration Satellites Sat # X Y Z PSUEDORANGE 1 15524471.180 -16649826.220 13512272.390 22262088.180 2 -2304058.534 -23287906.470 11917038.110 19908187.050 4 16680243.360 -3069625.561 20378551.050 24554242.170 Non-trilateration Satellite Sat # X Y Z PSUEDORANGE 3 -14799931.400 -21425358.240 6069947.224 21479180.580 X Y Z RBIAS Solution = -733186.0 -5443792.0 3231193.0 -300.0
STOP Normal completion in routine main of gps.
$ ./gps.exe
Trilateration Satellites Sat # X Y Z PSUEDORANGE 1 15524471.180 -16649826.220 13512272.390 22262088.180 3 -14799931.400 -21425358.240 6069947.224 21479180.580 4 16680243.360 -3069625.561 20378551.050 24554242.170 Non-trilateration Satellite Sat # X Y Z PSUEDORANGE 2 -2304058.534 -23287906.470 11917038.110 19908187.050 X Y Z RBIAS Solution = -733186.0 -5443792.0 3231193.0 -300.0
STOP Normal completion in routine main of gps.
$ ./gps.exe
Trilateration Satellites Sat # X Y Z PSUEDORANGE 2 -2304058.534 -23287906.470 11917038.110 19908187.050 3 -14799931.400 -21425358.240 6069947.224 21479180.580 4 16680243.360 -3069625.561 20378551.050 24554242.170 Non-trilateration Satellite Sat # X Y Z PSUEDORANGE 1 15524471.180 -16649826.220 13512272.390 22262088.180 X Y Z RBIAS Solution = -733186.0 -5443792.0 3231193.0 -300.0
STOP Normal completion in routine main of gps. $
The main routine reads in and writes out the data. A call to trilat and a function evaluation of dacomp help to provide initial estimates of a bounding bracket between BIAS1 and BIAS2. A call to zbrac modifies BIAS1 and BIAS2 if necessary to assure that the solution is bracketed. The subroutine rtbis returns with the solution, RGBIAS, which is the value of the argument of function dacomp required to cause the function to evaluate close enough to zero to satisfy the specified accuracy requirement.
MAIN FORTRAN ROUTINEIMPLICIT DOUBLE PRECISION (A-H,O-Z) C 1 2 3 4 5 6 7 C 3456789012345678901234567890123456789012345678901234567890123456789012 C EXTERNAL DACOMP DOUBLE PRECISION XSAT(5), YSAT(5), ZSAT(5), PRANGE(3), ERRMAT(3) DOUBLE PRECISION ERRTOT(2), SATTIM(3), RSAT(5,3), R4(2), DAA(2) CHARACTER HEAD1*70, HEAD2*70 LOGICAL SUCCES COMMON /COMMDA/ RSAT, PRANGE, SATTIM, PRANTI INW = 25 IOUT = 45 CLIGHT = 299792458. ! meters per second OPEN(UNIT = INW, FILE = 'sat_position_prange.txt' 2 , FORM='FORMATTED', ACTION='READ', STATUS='OLD') OPEN(UNIT = IOUT, FILE = 'out1.txt' 2 , FORM='FORMATTED', ACTION='WRITE', STATUS='UNKNOWN') READ(INW,*) I_TIME, HEAD2 ! Satellite I_TIME is not for trilateration but for clock correction C WRITE(6,*) ' Satellite ', I_TIME, HEAD2 READ(INW, *) HEAD1 WRITE(6,*) ' Trilateration Satellites' WRITE( 6, *) HEAD1 K = 1 DO 10, I=1,4 ! Read header lines and data IF(I .NE. I_TIME) THEN READ(INW, *) ISAT, (RSAT(K,J), J=1,3), PRANGE(K) WRITE( 6,'(1X,I2,4F16.3)') I, (RSAT(K,J), J=1,3), PRANGE(K) K = K + 1 ELSE READ(INW, *) ISAT, (SATTIM(J), J=1,3), PRANTI END IF 10 CONTINUE WRITE(6,*) ' ' WRITE(6,*) ' Non-trilateration Satellite' WRITE( 6, *) HEAD1 WRITE( 6,'(1X,I2,4F16.3)')I_TIME, (SATTIM(J), J=1,3), PRANTI READ (INW,*) IPRINT, HEAD2 C WRITE(6,*) ' IPRINT = ', IPRINT CLOSE(INW) C CALL TRILAT( XSAT, YSAT, ZSAT, PRANGE, NSOLNS) CALL TRILAT( RSAT(1,1), RSAT(1,2), RSAT(1,3), PRANGE, NSOLNS) C WRITE(6,*) ' RSAT= ' , RSAT DO 50 I=4,5 ! Distance to 4th sphere for solutions in 4 & 5 SQUARE = 0.0 DO 47 J=1,3 ! X, Y, Z components SQUARE = SQUARE + ( RSAT(I,J) - SATTIM(J) )**2 47 CONTINUE R4(I-3) = SQRT( SQUARE ) DAA(I-3) = R4(I-3) - PRANTI 50 CONTINUE IF( ABS(DAA(1)) .LE. ABS(DAA(2)) ) THEN !Closest solution DA = DAA(1) ISOLN = 1 ELSE DA = DAA(2) ISOLN = 2 END IF BIAS1 = DA BIAS2 = DACOMP ( BIAS1 ) CALL ZBRAC(DACOMP, BIAS1, BIAS2, SUCCES) XACC = 0.01 RGBIAS = RTBIS(DACOMP,BIAS1,BIAS2,XACC) WRITE(6,*) ' ' WRITE(6,*) ' X Y Z RBIAS' WRITE(6,150) ' Solution = ', (RSAT(ISOLN+3,J), J=1,3), RGBIAS CLOSE(IOUT) STOP ' Normal completion in routine main of gps.' 150 FORMAT(1X,A12,3F12.1, F7.1) 200 FORMAT(I3) END
The subroutine trilat computes any intersections of three surfaces given the sphere centers and radii as described in trilateration.
SUBROUTINE TRILATSUBROUTINE TRILAT( X0, Y0, Z0, RADIUS, NSOLNS ) C C 1 2 3 4 5 6 7 C 3456789012345678901234567890123456789012345678901234567890123456789012 C C TRILATERATION FINDS INTERSECTIONS OF SURFACES OF SPHERES C SPHERES CENTERED AT X0(I), Y0(I), AND Z0(I) WITH RADII, R(I) IMPLICIT DOUBLE PRECISION (A-H,O-Z) DOUBLE PRECISION X0(5), Y0(5), Z0(5), RADIUS(3) DOUBLE PRECISION X1(5), Y1(5), Z1(5), X2(5), Y2(5), Z2(5) DOUBLE PRECISION X3(5), Y3(5), Z3(5), X4(5), Y4(5), Z4(5) DOUBLE PRECISION ERRMAT(3) C WRITE( 6, * ) 'NOW IN SUBROUTINE TRILAT' C DO 10, I=1,3 ! Write data C WRITE( 6, * ) I, X0(I), Y0(I), Z0(I), RADIUS(I) C10 CONTINUE C Translate coordinate system so as to put center of sphere 1, p1, at C origin. That is compute expression of vectors, VP2 and VP3 in C coordinate system 1. DO 20, I=2,3 X1(I) = X0(I) - X0(1) Y1(I) = Y0(I) - Y0(1) Z1(I) = Z0(I) - Z0(1) 20 CONTINUE C First sphere center, P1, remains at origin, since all axes intersect C at origin. X1(1) = 0.0 Y1(1) = 0.0 Z1(1) = 0.0 X2(1) = 0.0 Y2(1) = 0.0 Z2(1) = 0.0 X3(1) = 0.0 Y3(1) = 0.0 Z3(1) = 0.0 X4(1) = 0.0 Y4(1) = 0.0 Z4(1) = 0.0 C DO 22, I=1,3 ! Write data C WRITE( 6, * ) I, 'CS1 = ', X1(I), Y1(I), Z1(I) C22 CONTINUE C Compute 1st coordinate system rotation angle, ALAMBD, required C to set the y component of P2 to zero, that is make Y2(2) zero. C This rotation is about the positive Z1 axis. IF ( (Y1(2) .NE. 0.0) .OR. (X1(2) .NE. 0.0) ) THEN ALAMBD = ATAN2( Y1(2), X1(2) ) CLAM = COS(ALAMBD) SLAM = SIN(ALAMBD) ELSE ALAMBD = 0.0 CLAM = 1. SLAM = 0. END IF DO 30 I=2,3 X2(I) = X1(I)*CLAM + Y1(I)*SLAM Y2(I) = -X1(I)*SLAM + Y1(I)*CLAM Z2(I) = Z1(I) 30 CONTINUE C DO 32, I=1,3 ! Write data C WRITE( 6, * ) I, 'CS2 = ', X2(I), Y2(I), Z2(I) C32 CONTINUE CC VP2MAG = SQRT( X2(2)**2 + Y2(2)**2 + Z2(2)**2 ) CC VP2MAG = SQRT( X2(2)**2 + Z2(2)**2 ) C Compute 2nd coordinate system rotation angle, PHI, required C to put P2 on X axis. That is make Z3(2) zero. C This rotation is about the negative Y2 axis. IF ( Z2(2) .NE. 0.0 ) THEN VP2MAG = SQRT( X2(2)**2 + Z2(2)**2 ) PHI = ASIN(Z2(2) / VP2MAG) CPHI = COS(PHI) SPHI = SIN(PHI) ELSE PHI = 0. CPHI = 1. SPHI = 0. END IF DO 40 I=2,3 X3(I) = X2(I)*CPHI + Z2(I)*SPHI Y3(I) = Y2(I) Z3(I) = -X2(I)*SPHI + Z2(I)*CPHI 40 CONTINUE C DO 42, I=1,3 ! Write data C WRITE( 6, * ) I, 'CS3 = ', X3(I), Y3(I), Z3(I) C42 CONTINUE C Compute 3rd coordinate system rotation angle, THETA, required C to make Z compenent of P3 zero. C This rotation is aboutthe -X3 axis. IF ( (Z3(3) .NE. 0.0) .OR. ( Y3(3) .NE. 0.0) ) THEN CCC VP3MAG = SQRT( X3(3)**2 + Y3(3)**2 ) THETA = ATAN2( Z3(3), Y3(3) ) CTHETA = COS(THETA) STHETA = SIN(THETA) ELSE THETA = 0. CTHETA = 1. STHETA = 0. END IF DO 50 I=2,3 X4(I) = X3(I) Y4(I) = Y3(I)*CTHETA + Z3(I)*STHETA Z4(I) = -Y3(I)*STHETA + Z3(I)*CTHETA 50 CONTINUE C WRITE( 6, * ) 'STILL IN SUBROUTINE TRILAT' C C DO 52, I=1,3 ! Write data C WRITE( 6, * ) I, 'CS4 = ', X4(I), Y4(I), Z4(I) C52 CONTINUE C Now find intersections of 3 sphere surfaces expressed in C coordinatesystem 3. D = X4(2) D_SQR = D**2 R1_SQR = RADIUS(1)**2 R2_SQR = RADIUS(2)**2 R3_SQR = RADIUS(3)**2 AI = X4(3) AJ = Y4(3) X = ( R1_SQR - R2_SQR + D_SQR ) / (2.*D) X_SQR = X**2 Y = (R1_SQR - R3_SQR - X_SQR + (X - AI)**2 + AJ**2) /(2.*AJ) Y_SQR = Y**2 Z_SQR = R1_SQR - X_SQR - Y_SQR IF(Z_SQR .GT. 0.0) THEN NSOLNS = 2 ZP = SQRT(Z_SQR) ZM = -ZP ELSE IF (Z_SQR .EQ. 0.0) THEN NSOLNS = 1 ZP = 0.0 ZM = 0.0 ELSE NSOLNS = 0 END IF C WRITE(6,*) NSOLNS, ' solutions with X, Y, ZP, ZM = ' C 2 , X, Y, ZP, ZM C Verify solutions C ERRMAT(1) = RADIUS(1) - SQRT( (X-X4(1))**2 + (Y-Y4(1))**2 C 2 + (ZP-Z4(1))**2 ) C ERRMAT(2) = RADIUS(2) - SQRT( (X-X4(2))**2 + (Y-Y4(2))**2 C 2 + (ZP-Z4(2))**2 ) C ERRMAT(3) = RADIUS(3) - SQRT( (X-X4(3))**2 + (Y-Y4(3))**2 C 2 + (ZP-Z4(3))**2 ) C WRITE(6,*) ' Errors = ', (ERRMAT(I), I=1,3) X4(4) = X Y4(4) = Y Z4(4) = ZP X4(5) = X Y4(5) = Y Z4(5) = ZM DO 60 I=4,5 X3(I) = X4(I) Y3(I) = Y4(I)*CTHETA - Z4(I)*STHETA Z3(I) = Y4(I)*STHETA + Z4(I)*CTHETA 60 CONTINUE C ERRMAT(1) = RADIUS(1) - SQRT( (X3(4)-X3(1))**2 C 2 + (Y3(4)-Y3(1))**2 + (Z3(4)-Z3(1))**2 ) C ERRMAT(2) = RADIUS(2) - SQRT( (X3(4)-X3(2))**2 C 2 + (Y3(4)-Y3(2))**2 + (Z3(4)-Z3(2))**2 ) C ERRMAT(3) = RADIUS(3) - SQRT( (X3(4)-X3(3))**2 C 2 + (Y3(4)-Y3(3))**2 + (Z3(4)-Z3(3))**2 ) C WRITE(6,*) ' Errors X3 = ', (ERRMAT(I), I=1,3) DO 70 I=4,5 X2(I) = X3(I)*CPHI - Z3(I)*SPHI Y2(I) = Y3(I) Z2(I) = X3(I)*SPHI + Z3(I)*CPHI 70 CONTINUE C ERRMAT(1) = RADIUS(1) - SQRT( (X2(4)-X2(1))**2 C 2 + (Y2(4)-Y2(1))**2 + (Z2(4)-Z2(1))**2 ) C ERRMAT(2) = RADIUS(2) - SQRT( (X2(4)-X2(2))**2 C 2 + (Y2(4)-Y2(2))**2 + (Z2(4)-Z2(2))**2 ) C ERRMAT(3) = RADIUS(3) - SQRT( (X2(4)-X2(3))**2 C 2 + (Y2(4)-Y2(3))**2 + (Z2(4)-Z2(3))**2 ) C WRITE(6,*) ' Errors X2 = ', (ERRMAT(I), I=1,3) DO 80 I=4,5 X1(I) = X2(I)*CLAM - Y2(I)*SLAM Y1(I) = X2(I)*SLAM + Y2(I)*CLAM Z1(I) = Z2(I) 80 CONTINUE C ERRMAT(1) = RADIUS(1) - SQRT( (X1(4)-X1(1))**2 C 2 + (Y1(4)-Y1(1))**2 + (Z1(4)-Z1(1))**2 ) C ERRMAT(2) = RADIUS(2) - SQRT( (X1(4)-X1(2))**2 C 2 + (Y1(4)-Y1(2))**2 + (Z1(4)-Z1(2))**2 ) C ERRMAT(3) = RADIUS(3) - SQRT( (X1(4)-X1(3))**2 C 2 + (Y1(4)-Y1(3))**2 + (Z1(4)-Z1(3))**2 ) C WRITE(6,*) ' Errors X1 = ', (ERRMAT(I), I=1,3) DO 90, I=4,5 II3 = I-3 X0(I) = X1(I) + X0(1) Y0(I) = Y1(I) + Y0(1) Z0(I) = Z1(I) + Z0(1) 90 CONTINUE C WRITE(6,*) ' X0 = ', (X0(I), I=1,5) C WRITE(6,*) ' Y0 = ', (Y0(I), I=1,5) C WRITE(6,*) ' Z0 = ', (Z0(I), I=1,5) C WRITE(6,*) ' Now leaving subroutine TRILAT. ' RETURN END
The function dacomp computes the closest distance from three surface intersections to the fourth sphere surface as a function of its argument, a range bias.
FUNCTION DACOMPFUNCTION DACOMP ( BIAS ) IMPLICIT DOUBLE PRECISION (A-H,O-Z) C 1 2 3 4 5 6 7 C 3456789012345678901234567890123456789012345678901234567890123456789012 C DOUBLE PRECISION PRANGE(3), ERRMAT(3), PRTEMP(3) DOUBLE PRECISION ERRTOT(2), SATTIM(3), RSAT(5,3), R4(2), DAA(2) COMMON /COMMDA/ RSAT, PRANGE, SATTIM, PRANTI DO 10 I=1,3 PRTEMP(I) = PRANGE(I) + BIAS 10 CONTINUE PTMTMP = PRANTI + BIAS CALL TRILAT( RSAT(1,1), RSAT(1,2), RSAT(1,3), PRTEMP, NSOLNS) DO 40 I=4,5 ! Compute errore for each of 2 solutions DO 35 J=1,3 ! Compute distances to J=1,2,3 satellites SQUARE = 0.0 DO 33 K=1,3 ! X, Y, Z components of error SQUARE = SQUARE + ( RSAT(I,K) - RSAT(J,K) )**2 33 CONTINUE ERRMAT(J) = PRTEMP(J) - SQRT( SQUARE ) 35 CONTINUE ERRTOT(I-3) = SQRT( ERRMAT(1)**2 + ERRMAT(2)**2 + 2 ERRMAT(3)**2 ) 40 CONTINUE IF( (ERRTOT(1) .GE. 1.E-6) .OR. (ERRTOT(2) .GE. 1.E-6) ) THEN WRITE(6,*) ' Excessive trilateration error ' WRITE(6,*) ' ERRTOT = ', (ERRTOT(I), I=1,2) IPRINT = 1 END IF DO 50 I=4,5 ! Distance to 4th sphere for solutions in 4 & 5 SQUARE = 0.0 DO 47 J=1,3 ! X, Y, Z components SQUARE = SQUARE + ( RSAT(I,J) - SATTIM(J) )**2 47 CONTINUE R4(I-3) = SQRT( SQUARE ) DAA(I-3) = R4(I-3) - PTMTMP 50 CONTINUE IF( ABS(DAA(1)) .LE. ABS(DAA(2)) ) THEN DA = DAA(1) ISOLN = 1 ELSE DA = DAA(2) ISOLN = 2 END IF C WRITE(6,*) ' R4 = ', (R4(I), I=1,2) C WRITE(6,*) ' DAA = ', (DAA(I), I=1,2) C WRITE(6,*) ' Solution ', ISOLN, ' is closest.', ' DA = ', DA DACOMP = DA RETURN END
RHB100 (talk) 19:48, 20 August 2013 (UTC)
- How do you feel about putting all the code on Wikisource? —EncMstr (talk) 20:17, 20 August 2013 (UTC)
Right off the top of my head,I say that I would be glad to do it if they want it. But I don't know too much about Wikisource. RHB100 (talk) 00:21, 21 August 2013 (UTC)
- It is of no importance if the method works or not (I actually do not doubt it does for the special case of 4 satellites). What counts is whether it's really used in GPS devices on the market. The latter I sincerely doubt, because of its inherent asymmetry and limitation to 4 satellites. Practical algorithms in devices would use all available satellites in a symmetric way. The references given now are popular naive approaches and generic root finding. So could you point out a reference stating its professional implementation in devices? −Woodstone (talk) 07:13, 22 August 2013 (UTC)
It is important to show that the method works because by so doing it shows that your use of the words "doubtful method" in reference to this method are false and untrue. It is necessary to show that it works in order to make clear that your statement is totally false and untrue. More than adequate references have already been given. RHB100 (talk) 18:40, 22 August 2013 (UTC)
- Please read up on wikipedia policies, particularly the injuction against original research, which is exactly what this is. siafu (talk) 01:59, 23 August 2013 (UTC)
Least squares method has replaced trilateration method and Multidimensional Newton Raphson method
The least squares and the multidimensional Newton Raphson methods are very similar. In fact the method of updating the estimated solution from one iteration to the next appears to be identical for the case of four satellites. Thus we have algorithms, one developed from the discipline of numerical analysis and the other developed from the discipline of statistics which are very similar. One difference is that the multidimensional Newton Raphson method in its current form does not include the case of more than four satellites. Thus it appears that we can concentrate on the least squares method.
One thing I would like to point out is that the accusation that I engaged in personal research in writing the sections on the Multidimensional Newton Raphson method and the Trilateration method are false. I have formulated the problem to be solved and then selected the appropriate method from "Numerical Recipes" to obtain the solution. The Misplaced Pages guidelines allow the use of known facts to establish other facts and this is exactly what I have done. — Preceding unsigned comment added by RHB100 (talk • contribs) 18:13, 23 August 2013 (UTC)
- Misplaced Pages does not rely on the expertise of editors, but rather the reliability of sources. To prove your point on the trilateration issue, the proper approach would be to look through the literature and find a source that confirms that it works, NOT to try and implement it yourself and show that it works, which is original research. Look at it this way; supposing you presented some gobbledegook FORTRAN code and fudged results that looked right. It would require other experts to look through all the code attempt to do it themselves to invalidate the claim, and such experts cannot be relied upon to exist here on wikipedia. siafu (talk) 18:53, 23 August 2013 (UTC)
- I can't count the number of times that this one particular user RHB100 has tried to push his personal research into Misplaced Pages onto this article. The talk page archives talk for themselves. "Personal research" is not just an accusation — it is documented fact on the archives and history of Talk:Global Positioning System and User talk:RHB100. - DVdm (talk) 19:38, 23 August 2013 (UTC)
These accusations by DVdm are false. When he says that I have tried to push personal research into Misplaced Pages, he is a liar an outright liar and nothing but a liar. I stongly resent these false accusations by DVdm. He is an outright liar. DVdm through his ignorance doesn't understand that Misplaced Pages policy allows the use of mathematical facts to establish other mathematical facts. RHB100 (talk) 03:31, 24 August 2013 (UTC)
- Goodness, is he still doing that after all these years? Maybe we should nominate him for a topic ban. Martijn Meijering (talk) 22:01, 23 August 2013 (UTC)
As for you, Martijn Meijering, you should find out the truth before making statements. When you say "is he still doing that", You are accusing me of having pushed personal research onto Misplaced Pages at some time in the past. Well you are an outright liar, I have never pushed personal research onto Misplaced Pages. Maybe we should nominate you as the outright liar of the week. You are an outright liar. I have never pushed personal research onto Misplaced Pages. RHB100 (talk) 03:31, 24 August 2013 (UTC)
Application of numerical methods is not personal research
In this era of high speed computers, the use of numerical methods is an indispensable tool of many engineers. Solution methods for many problems can be found in such books as "Numerical Recipes". Methods of solving the GPS navigation equations can be found in the chapter on root finding in this book. One such method is multidimensional Newton Raphson. In utilizing this method, the engineer may have to perform some work such as the evaluation of partial derivatives. When the engineer uses multidimensional Newton Raphson including the necessary evaluation of partial derivatives, the engineer is not performing personal research. The engineer is instead using a well known method to solve a given problem. The evaluation of partial derivatives is straightforward everyday work, there is no personal research involved.
Also the engineer may choose to use one dimensional Newton Raphson in conjunction with trilateration to solve the GPS navigation equations. This is a straightforward application of well known methods to a given problem. Again this is straightforward everyday work. There is no personal research involved.
We should therefore keep in mind that for the purposes of Misplaced Pages, the straightforward application of numerical methods to solve a given problem is certainly not personal research.
Categories:- Old requests for peer review
- All unassessed articles
- B-Class spaceflight articles
- High-importance spaceflight articles
- WikiProject Spaceflight articles
- B-Class military history articles
- B-Class military science, technology, and theory articles
- Military science, technology, and theory task force articles
- B-Class North American military history articles
- North American military history task force articles
- B-Class United States military history articles
- United States military history task force articles
- WikiProject templates with unknown parameters
- WikiProject Geographical coordinates pages
- B-Class aviation articles
- WikiProject Aviation articles
- B-Class Systems articles
- Mid-importance Systems articles
- Unassessed field Systems articles
- WikiProject Systems articles
- B-Class Telecommunications articles
- Mid-importance Telecommunications articles
- B-Class Geocaching articles
- High-importance Geocaching articles
- B-Class Maps articles
- Unknown-importance Maps articles
- Selected anniversaries (February 2005)
- Selected anniversaries (February 2006)
- Selected anniversaries (February 2007)
- Selected anniversaries (February 2008)