LSA
while (dif > limiar) {
L_0 <- vector()
for (i in 1:nrow(Coords)) {
L_0[i] <- sqrt(abs((Coords[i,1]-x_0[1])^2+(Coords[i,2]-x_0[2])^2+(Coords[i,3]-x_0[3])^2))
}
A <- matrix(nrow =nrow(Coords),ncol = 3 )
for (i in 1:nrow(Coords)) {
A[i,1] <- -(Coords[i,1]-x_0[1]) /sqrt(abs((Coords[i,1]-x_0[1])^2+(Coords[i,2]-x_0[2])^2+(Coords[i,3]-x_0[3])^2))
A[i,2] <- -(Coords[i,2]-x_0[2]) /sqrt(abs((Coords[i,1]-x_0[1])^2+(Coords[i,2]-x_0[2])^2+(Coords[i,3]-x_0[3])^2))
A[i,3] <- -(Coords[i,3]-x_0[3]) /sqrt(abs((Coords[i,1]-x_0[1])^2+(Coords[i,2]-x_0[2])^2+(Coords[i,3]-x_0[3])^2))
}
L= L_0 - Lb
N <- (t(A) %*% A)
U <- (t(A) %*% L)
x <- - (solve(N) %*% U)
xa <- x_0 + x
xa
x_0 <- xa
dif <- limiar
for (k in 1:3) {
if (abs(x[k])> limiar) {
dif <- abs(x[k])
}
}
}
xa
## [,1]
## [1,] 9365.947
## [2,] 1578.612
## [3,] 602.539
Quality Evaluation
V <- ( A %*% x )+ L
n <- nrow(Coords)
u <- 3
sigma_post <- (t(V) %*% V)/ (n-u)
VCM <- as.vector(sigma_post) * solve(N)
std <- vector()
for (i in 1:3) {
std[i] <- sqrt(VCM[i,i])
}
std
## [1] 0.1825740 0.1802097 5.1832767