SEXT20
δ = 41 m · dα = 1.000000° sur l'angle entre amers · empreinte 97d910ee4a27f8e5
Jouer sur les tolérances
Une erreur de carte par amer, une erreur angulaire commune. Baissez le δ d'un seul amer — celui que vous relèveriez au GPS — et regardez X rétrécir. Le calcul refait est certifié, pas approché : comptez quelques secondes par essai.
Le dα minimal pour que les mesures soient cohérentes vaut au moins 0.249°. Vous avez déclaré 1.000°, soit 4.0× ce minimum.
7 amers lus dans « SEXT20.csv » (2 colonnes : x, y)
7 mesures lues dans le second fichier (i, j, angle en degres) sur 21 paires possibles.
Les amers
7 points, a 1293 a 4946 m de l'origine.
X
environ 552 m de large — soit 9 fois moins que la portee des amers. Le cercle en pointille le situe ; le detail est ci-dessous.
Les traits pales vont de l'origine vers chaque amer. L'observateur n'est pas a l'origine : il est quelque part dans X, et c'est tout ce qu'on sait de lui.
X
50910 ± 78 m²
X∩
73670 ± 310 m²
X ⊊ X∩ : la clôture par Floyd-Warshall améliore au moins une borne, donc X est strictement plus petit.
12 sommets certifiés.
Les sommets
| # | x (m) | y (m) | contraintes |
|---|
| 1 | 325.685 | 37.055 | (1,2) ∩ (1,3) |
| 2 | 321.774 | 28.894 | (1,2) ∩ (7,2) |
| 3 | 338.928 | 69.873 | (1,3) ∩ (1,5) |
| 4 | 180.992 | 100.848 | (1,5) ∩ (3,5) |
| 5 | 179.457 | 100.721 | (1,7) ∩ (3,5) |
| 6 | -65.283 | 45.485 | (1,7) ∩ (4,7) |
| 7 | -187.710 | -42.765 | (4,2) ∩ (5,1) |
| 8 | -212.923 | -28.910 | (4,2) ∩ (5,7) |
| 9 | -204.889 | -22.409 | (4,7) ∩ (5,7) |
| 10 | -102.845 | -72.455 | (5,1) ∩ (6,1) |
| 11 | -67.618 | -74.579 | (6,1) ∩ (7,1) |
| 12 | 38.539 | -54.006 | (7,1) ∩ (7,2) |
Chaque sommet est un enclos certifié ; la largeur du plus large vaut 5.7e-14 m.
Ce que cela a coûté
| lecture du tableur | 0.001 s |
|---|
| préparation du jeu | 0.007 s |
|---|
| calcul de X∩ et X | 6.196 s |
|---|
| aire et tracé | 0.771 s |
|---|
| total | 7.139 s |
|---|
Le calcul et l'analyse sont deux choses : la première est l'objet de l'étude, la seconde un outil pour la regarder. Leur coût ne dépend pas des mêmes choses — le calcul du jeu, l'analyse de la précision demandée.
Sur quoi
machine : Linux aarch64 -- Raspberry Pi 4 Model B Rev 1.1
4 coeur(s) a 1.50 GHz, 3.7 Go, 4 fil(s) demande(s)
calcul : intervalles fi64, mantisse hors solveur 256 bits
bati : Sep 10 2026, gcc 14.2.0
arrondi dirige disponible, socle : pthreads oui, rsgc non, flint non
gmp 6.3.0, mpfr 4.2.2, mpfi 1.5.4
sources : empreinte cbb2c1eddba1Les temps ci-dessus valent pour cette machine et pour elle seule. Ce qui se transporte d'une machine à l'autre, ce sont les rapports — pas les secondes.
Le jeu exact engendré (ce que lit le calcul)
# ==============================================================================
# Jeu SEXT20 -- engendre par preparer.py, NE PAS EDITER A LA MAIN
# 7 amers, portees 1293-4946 m depuis l'origine
# delta = 41 m (40 m de carte + 1 m d'arrondi des coordonnees)
# d_alpha = 1.000000 deg SUR L'ANGLE ENTRE AMERS
# dont 1.41e-04 arcsec de transcription, majores et absorbes
# 7 paires mesurees sur 21 possibles
# ==============================================================================
const NOM = "SEXT20"
const EMPREINTE = "97d910ee4a27f8e5" # signature des donnees, recopiee dans le resultat
const AMERS = Tuple{Rational{BigInt},Rational{BigInt}}[
(4453//1, 2152//1), # 1 azimut 64.21 deg
(3069//1, 2200//1), # 2 azimut 54.37 deg
(2016//1, 1935//1), # 3 azimut 46.18 deg
(-669//1, 3497//1), # 4 azimut 349.17 deg
(-1752//1, 1125//1), # 5 azimut 302.70 deg
(-2142//1, 534//1), # 6 azimut 283.99 deg
(-1280//1, -183//1), # 7 azimut 261.86 deg
]
const DELTA = Rational{BigInt}(41)
const T_D = Rational{BigInt}(863, 98890) # tan(d_alpha/2)
const MESURES = Dict{Tuple{Int,Int},Tuple{Rational{BigInt},Int}}(
(1,2) => (5829//74539, 0),
(1,7) => (92602//14431, -1),
(2,3) => (5867//76196, 0),
(3,4) => (31341//56968, 0),
(4,5) => (37855//90311, 0),
(5,6) => (7661//47373, 0),
(6,7) => (12821//68165, -1) )
Le journal du calcul
machine : Linux aarch64 -- Raspberry Pi 4 Model B Rev 1.1
4 coeur(s) a 1.50 GHz, 3.7 Go, 4 fil(s) demande(s)
calcul : intervalles fi64, mantisse hors solveur 256 bits
bati : Sep 10 2026, gcc 14.2.0
arrondi dirige disponible, socle : pthreads oui, rsgc non, flint non
gmp 6.3.0, mpfr 4.2.2, mpfi 1.5.4
========================================
SEXT20 (7 amers)
========================================
minorant : les cycles imposent d_alpha >= 0.2487 deg (declare 1.0000)
pire cycle, 7 aretes : 4 3 2 1 7 6 5 4
defaut de fermeture 1.740934 deg pour 7.000000 deg de tolerance cumulee
exact sur TOUS les cycles : 0.2487
marge : 4.02x ce que les cycles exigent
7 amers, 14 contraintes orientees
elagage sur 13 boites : 5 paires sur 91
X∩ : 5 sommets en 0.113 s (elagage 0.010, solveur 0.092, filtres 0.008)
boite de depart reprise de X∩ : x[-338, 383] y[-89, 152]
germe repris de X∩ : 5 contrainte(s)
critere : la cloture apporte 0 amelioree(s) et 28 fabriquee(s) sur 42 -> X inclus strictement dans X∩, il faut calculer X
Floyd-Warshall certifie sur le graphe des mesures (7 amers)...
coherence de type I : OK
la cloture apporte : 0 borne(s) amelioree(s) et 28 fabriquee(s) sur 42 -> X inclus dans Xinter
--- iteration 1 : x[-338, 383] y[-89, 152]
origine des angles : secteur libre 183.1 deg
contraintes conservees : 42 sur 42
ensemble actif, tour 1 : |A| = 5, 5 sommet(s), 18 violee(s) (plafonne)
ensemble actif, tour 2 : |A| = 9, 7 sommet(s), 7 violee(s) (plafonne)
ensemble actif, tour 3 : |A| = 13, 10 sommet(s), 3 violee(s)
ensemble actif, tour 4 : |A| = 16, 12 sommet(s), 0 violee(s)
sommets certifies : 12
certificat 1 : 26 prouvee(s) redondante(s), 0 douteuse(s), 845 cellule(s)
--- iteration 2 : x[-213, 339] y[-75, 101]
origine des angles : secteur libre 188.8 deg
contraintes conservees : 42 sur 42
ensemble actif, tour 1 : |A| = 12, 12 sommet(s), 0 violee(s)
sommets certifies : 12
certificat 1 : 29 prouvee(s) redondante(s), 1 douteuse(s), 1213 cellule(s)
ensemble actif, tour 1 : |A| = 13, 12 sommet(s), 0 violee(s)
certificat 2 : 29 prouvee(s) redondante(s), 0 douteuse(s), 1053 cellule(s)
point fixe atteint.
statut : ok
boite : x[-213.000000, 339.000000] y[-75.000000, 101.000000]
sommets : 12 contraintes actives : 12
bord : 12 arete(s), cycle unique
certificat : 2 passe(s), 13 actives sur 42 gardees, 3111 cellule(s)
memoire : pic 37.6 Mo
temps : X∩ 0.113 s X 5.962 s aire 0.000 s bord 0.000 s calcul 6.192 s mural 6.192 s
solveur : direct=465 erreur=0 asymptote=0 non_gen=0 plusieurs=0 coords=0
dont decomposition 12.15 s, solve_ratparam_real 2.29 s
ecrit : /tmp/geoloc-4bwq_p31/SEXT20.resultat.json
========================================
SEXT20_courbes (7 amers) -- analyse de /tmp/geoloc-4bwq_p31/SEXT20.resultat.json
========================================
aire de X∩ : [73360, 73980] m2 (0.834 %, niveaux 2 ; 20 prouvee(s), 0 mesuree(s), 0 majoree(s))
bord de X∩ : 20 points (fleche 0.84 px a 2160, niveaux 2)
aire de X : [50830, 50990] m2 (0.305 %, niveaux 2 ; 48 prouvee(s), 0 mesuree(s), 0 majoree(s))
bord de X : 48 points (fleche 0.51 px a 2160, niveaux 2)
temps : aire 0.703 s bord 0.061 s
ecrit : /tmp/geoloc-4bwq_p31/SEXT20.analyse.json
← un autre tableur
Sommets certifiés par arithmétique exacte sur ℤ ; aire garantie — la flèche de chaque sous-arc est majorée, pas échantillonnée. Le tracé est la polyligne du calcul lui-même, point par point.