Suite

Comment convertir la distance, l'azimut, le pendage en XYZ ?


J'ai une feuille de calcul Excel avec des données d'en-tête et de sondage. Les données d'en-tête contiennent l'ID de trou et les coordonnées d'emplacement, et les données de levé contiennent un levé de fond associé avec des valeurs de distance, d'azimut et de pendage.

Étant donné que je connais l'emplacement du trou et l'élévation de la surface, j'aimerais également pouvoir convertir la table de levé en coordonnées XYZ. Quelqu'un a-t-il une fonction/procédure/exemple ? (VB & ArcObjects)

Données d'en-tête :

Données de l'Enquête:


La question demande une conversion entre les coordonnées sphériques et cartésiennes. Cette feuille de calcul présente les formules :

Les lignes bleues sont entrées, les noires sont les calculs intermédiaires et les rouges sont sorties. Dans les formules, les valeurs sont référencées par les noms dans la colonne [Paramètre] (affecté via l'opération Insérer|Nom|Créer).

Ils diffèrent de ceux de la plupart des références mathématiques/physiques car en géographie, l'azimut est généralement pris à l'est du nord plutôt qu'au nord de l'est. Cela fait de l'azimut géographique le complément du mathématique (ils totalisent à 90 degrés). Le remplacement d'un angle par son complément dans n'importe quelle fonction trigonométrique l'échange avec son partenaire "co": sinus et cosinus sont échangés, tangent et cotangente, sécante et cosécante. De plus, dans de nombreux systèmes mathématiques, le « pendage » est exprimé comme un angle par rapport à la vraie verticale (une co-latitude) plutôt que comme un angle par rapport à l'horizontale (une latitude), provoquant à nouveau un échange de sinus et de cosinus.

Modifier 20/09/13

Pour une distance de fond de trou, vous voudrez probablement annulerdZ.


Bien qu'il s'agisse d'une vieille question, les autres réponses ne sont pas appropriées. La conversion de la distance (profondeur mesurée), de l'inclinaison (inclinaison), de l'azimut en coordonnées 3D dépend de la façon dont vous interprétez ce qui se passe entre les emplacements où les mesures ont été prises (stations d'arpentage). La pratique standard aujourd'hui est la "courbure minimale" où l'hypothèse est qu'un arc de cercle relie chaque emplacement de levé.

http://www.drillingformulas.com/minimum-curvature-method/ donne des détails complets sur la façon de calculer les emplacements X, Y et Z. Les parties concernées sont :

dMD = Distance2 - Distance1 B = acos(cos(I2 - I1) - (sin(I1)*sin(I2)*(1-cos(A2-A1)))) RF = 2 / B * tan(B / 2 ) dX = dMD/2 * (sin(I1)*sin(A1) + sin(I2)*sin(A2))*RF dY = dMD/2 * (sin(I1)*cos(A1) + sin(I2 )*cos(A2))*RF dZ = dMD/2 * (cos(I1) + cos(I2))*RF X2 = X1 + dX Y2 = Y1 + dX Z2 = Z1 + dX

Comme l'écrit Eric, vous pouvez facilement vous retrouver avec undiv_by_zeroerreur ici : Vous pouvez cependant éviter cela sans tester le zéro exact : Quandabs(B)est inférieur à environ1e-9, lesbronzage(B/2)terme sera exactement (dans la précision de 64/53 bits d'un double) l'inverse de2/B.

La façon la plus simple de le montrer est avec la série Taylor pourbronzage (x)lequel estx + 1/3*x^3 + 2/15*x^5 +…. Cela signifie que lex^3terme sera si petit par rapport àXpour être effectivement nul.

Le principal avantage de procéder ainsi est que vous évitez de calculerbronzer()d'un très petit nombre qui est susceptible de conduire à de nombreuses opérations sur des nombres inférieurs à la normale. La prise en charge sous-normale est encore très lente sur de nombreuses architectures, il est donc préférable de l'éviter en premier lieu.


Il existe de nombreuses façons pour de telles conversions https://www.drillingmanual.com/2017/10/directionnel-well-trajectory-calculation-profile-design-planning.html


Voir la vidéo: Nivellement Indirect - Les azimuts et le gisement et les calcules des surfaces (Octobre 2021).