Calcul de volume déterministe : pourquoi le même levé doit donner le même chiffre
Un volume qui change quand on clique deux fois sur Calculer n'est pas une mesure : c'est un litige en attente. Le rapprochement mensuel, le paiement des terrassements et les audits supposent que la même surface, le même contour et la même référence donnent le même chiffre, à chaque fois et sur chaque machine. Cet article explique ce qu'un calcul déterministe doit garantir et comment le moteur de déblai-remblai de STREAM y parvient.
Ce que fait réellement le calcul
STREAM calcule déblai et remblai sur la grille d'altitudes. Une maille compte lorsque son centre est à l'intérieur du contour dessiné. Pour chaque maille comptée, on prend Δz = terrain − référence, après application à la surface des modifications de terrain et du décalage d'altitude ; un Δz positif ajoute Δz × surface de maille au déblai, un Δz négatif au remblai. Les mailles sans donnée sont ignorées — jamais traitées comme zéro.
La surface inclinée (3D) est donnée en plus : chaque maille apporte sa surface en plan × √(1 + gx² + gy²), le gradient étant pris de ses voisines sur la même surface corrigée.
Les règles qui le rendent répétable
Le déterminisme n'est pas automatique : il vient de quelques choix délibérés. Chacun ferme une voie par laquelle la même entrée pourrait donner un autre chiffre.
| Règle | Ce qu'elle évite |
|---|---|
| Les mailles sont parcourues dans un ordre fixe (bandes de lignes, ligne par ligne) vers un seul accumulateur | Des sommes flottantes qui changent avec l'ordonnancement des fils |
| Les grilles d'échantillonnage sont comptées en entiers, pas en ajoutant un pas de façon répétée | Une dernière ligne ou colonne présente à un calcul et absente au suivant |
| Une maille compte selon que son centre est dans le contour | Des mailles partielles ambiguës tranchées différemment à chaque fois |
| Le NoData est ignoré, jamais lu comme zéro | Des trous transformés en faux remblai ou déblai |
| La référence « point le plus bas » est lue sur la même surface corrigée | Une référence prise sur une surface et le volume sur une autre |
| Pas d'échantillonnage aléatoire, pas d'horloge, pas de dépendance à l'ordre des fichiers | Des résultats qui dépendent du moment ou du lieu du calcul |
De la vitesse sans changer la réponse
Pour mesurer un stock de 40 m, il ne faut pas parcourir de bout en bout une surface de 18 Go. STREAM ne lit donc qu'une fenêtre autour du contour — son rectangle englobant plus une maille, pour que la pente calculée sur les voisines garde ses voisines. Les mailles hors du contour n'apportent rien de toute façon : la fenêtre change le temps, pas le résultat.
Le même principe vaut pour toute optimisation d'une quantité : le chemin rapide doit rendre exactement le même chiffre, et la comparaison se fait sur une surface connue avant la diffusion.
Ce qui change encore le chiffre — et doit le changer
Le déterminisme signifie que les mêmes entrées donnent la même sortie ; il ne cache pas les entrées. La référence, le contour, les modifications du terrain et la version de la surface changent le volume et doivent figurer dans le rapport à côté de lui. Comme une maille compte par son centre, le contour est résolu à la taille de maille : une grille plus fine suit mieux un contour courbe.
Vous pouvez tester n'importe quel outil de volume de la même façon : construisez une surface d'essai plane dont vous connaissez la réponse — la plateforme de 40 m × 30 m qui monte de 2 m, soit 600 m³ de déblai net par rapport à 101,5 m — et lancez-la deux fois. Le résultat doit égaler la valeur analytique et lui-même, jusqu'au dernier chiffre.
Questions fréquentes
Qu'est-ce qu'un calcul de volume déterministe ?
Un calcul où la même surface, le même contour, la même référence et les mêmes réglages donnent toujours exactement le même volume, quel que soit le moment ou la machine.
Pourquoi deux exécutions d'un outil de volume peuvent-elles donner des chiffres un peu différents ?
Généralement à cause de sommes flottantes parallèles dont l'ordre change avec l'ordonnancement des fils, de grilles d'échantillonnage construites en ajoutant un pas de façon répétée, ou d'un échantillonnage aléatoire. Chacun fait dépendre le résultat d'autre chose que l'entrée.
Comment vérifier qu'un outil de volume est répétable ?
Utilisez une surface plane de réponse connue, par exemple une plateforme de 40 m × 30 m qui monte de 2 m (600 m³ de déblai net par rapport à une cote de 101,5 m), et lancez-la deux fois. Les deux résultats doivent être égaux entre eux et à la valeur analytique.
Calculez des volumes de déblai-remblai répétables dans STREAM
Windows natif · entièrement hors ligne · bêta gratuite