The first part of the project dealt with finding the receiver position (x,y,z) near earth and the time correction, d, for the known satellite positions. These positions are (15600, 7540, 20140), (18760, 2750, 18610), (17610,14630,13480), (19170, 610, 18390) where everything is in kilometers. The measured time intervals 0.07074, 0.07220, 0.07690, and 0.07242 in seconds. The initial vector used was \(x_0, y_0, z_0, d_0\)=(0,0,6370,0). The code can be seen here, and the approximate answers were (x,y,z)=(-41.77271, -16.78919, 6370.0596) and \(d=-3.201566*10^{-3}\) seconds.
The equations that were used were: \begin{align*} (x-A_1)^2+(y-B_1)^2+(z-C_1)^2 = [x(t_1-d)]^2\\ (x-A_2)^2+(y-B_2)^2+(z-C_2)^2 = [x(t_2-d)]^2\\ (x-A_3)^2+(y-B_3)^2+(z-C_3)^2 = [x(t_3-d)]^2\\ (x-A_4)^2+(y-B_4)^2+(z-C_4)^2 = [x(t_4-d)]^2\\ \end{align*}
The multiple variable Newton's method code that was used, MultiVarNewt.m relied on two other codes. The code which calculated the derivatives of the matrix,DF.m, and the code that inputted the values F.m