1. Validación de entrada
Se rechazan las coordenadas o valores de precisión no válidos, las correcciones anteriores al inicio de la medición, las marcas de tiempo duplicadas y las correcciones con una precisión horizontal informada superior a 25 m.
2. Control estacionario
El movimiento se detecta cuando al menos dos de las tres últimas velocidades superan los 1,2 m/s. Con al menos diez arreglos, también se comparan los centros de los cinco primeros y últimos. Límite: max(6 m; 1.5 × a_med).
3. Convertir a metros
Las coordenadas WGS84 se convierten a coordenadas ECEF fijas en la Tierra y luego a un plano local este-norte (ENU). De este modo, las distancias y los pesos se pueden calcular correctamente en metros.
4. Centro inicial robusto
Las medianas separadas del este y del norte forman la estimación inicial. Luego se calcula la distancia radial rᵢ desde cada punto de referencia hasta ese centro.
5. Detectar valores atípicos
MapTools calcula MAD = median(|rᵢ − median(r)|). Límite de valores atípicos: max(3 m; median(r) + 3 × 1.4826 × MAD).
6. Peso por precisión
Para radio informado aᵢ, wᵢ = 1 / max(aᵢ; 1 m)². La relación entre el peso base más fuerte y el más débil tiene un límite de 4:1.
7. Estimación de Huber
El centro se actualiza cinco veces. Dentro del límite el factor robusto es 1; afuera se convierte en c / r. El límite es c = max(1.5 m; 1.5 × 1.4826 × MAD).
8. Regresar a WGS84
El centro ENU ponderado se vuelve a convertir a través de ECEF a latitud y longitud. Available altitudes use their median; Los valores de calidad evalúan únicamente la posición horizontal.