Changement de base

Réponses à toutes vos questions après le Bac (Fac, Prépa, etc.)
Pentos
Messages: 8
Enregistré le: 12 Sep 2012, 17:00

Changement de base

par Pentos » 12 Sep 2012, 17:11

Bonjour à tous

Voici mon problème :

J'ai un premier repère R1(o1,x1,y1,z1) qui est centré sur le centre de la terre.
J'ai un deuxième repère R2(o2,x2,y2,z2) qui est situé à la surface de la terre.
Je connais les coordonnées (x,y,z) du centre du repère R2 exprimé dans R1.
Je sais que l'axe z2 du repère R2 est dirigé selon une droite passant par le centre du repère R1 (o1) et dirigé vers l’extérieur de la terre.

Ma question est :

Si j'ai les coordonnées de points dans le repère R1 comment obtenir les coordonnées de ces points dans le repère R2?

Merci par avance



Nightmare
Membre Légendaire
Messages: 13817
Enregistré le: 19 Juil 2005, 17:30

par Nightmare » 12 Sep 2012, 17:20

Salut,

sans avoir une formule toute faite, tu peux procéder petit à petit :

Dans un premier temps, le centre du repère change, ce qui se traduit par une translation de vecteur O1O2. Une translation, en terme de coordonnées, ça va se traduire en somme (on ajoute aux coordonnées celles du vecteur de translation).

Ensuite, il faut changer les axes. Pour voir comment s'effectue le changement sur les coordonnées, il faut revenir aux définitions :

Ton premier repère est dirigé par les vecteurs x1, y1 et z1. Cela veut dire que pour un point M donné dans ce repère, le vecteur O1M s'exprime sous la forme ax1+by1+cz1 où a, b et c sont ses coordonnées. Nous, ce qu'on voudrait, c'est exprimer le vecteur O2M sous la forme kx2+ly2+mz2 où k, l et m seront les coordonnées de M dans le nouveau repère.

Pour ça, il suffit d'exprimer x1, y1 et z1 eux même en fonction de x2, y2 et z2. On les remplace alors dans l'expression de O1M ce qui nous fournira son expression en fonction de x2, y2 et z2. Il reste à passer de O1M à O2M, ça c'est la translation dont je parlais précédemment.

:happy3:

Pentos
Messages: 8
Enregistré le: 12 Sep 2012, 17:00

par Pentos » 12 Sep 2012, 17:31

Salut Nightmare et merci pour ta réponse,

Le problème est qu'à part le fait de connaître les coordonnées du centre du 2ème repère je n'ai aucunes autres informations. Je ne vois donc pas comment exprimer les coordonnées du repère 1 en fonction de celles du repère 2 et donc écrire ma matrice de transition...

Pour mieux t'expliquer pourquoi je souhaite faire cela :
J'ai les coordonnées GPS de points quelconques qui sont exprimés en fonction du repère que j'ai appelé R1. Et j'ai besoin d'exprimer ces coordonnées dans un repère quelconque à une endroit à la surface de la terre. C'est pourquoi la seule donnée que j'ai est la position du centre du repère R2 car je connais ses coordonnées GPS.

Nightmare
Membre Légendaire
Messages: 13817
Enregistré le: 19 Juil 2005, 17:30

par Nightmare » 12 Sep 2012, 17:35

A priori, tu as le dessin de tes nouveaux axe, donc tu devrais facilement pouvoir en trouver des vecteurs directeurs et suivre alors le raisonnement que je t'ai indiqué.

Pentos
Messages: 8
Enregistré le: 12 Sep 2012, 17:00

par Pentos » 12 Sep 2012, 17:48

Je n'ai pas d’énoncé ou dessin. Je pose cette question car je suis en train de réaliser une macro sur Excel qui me permet de calculer différentes distances en fonctions de coordonnées GPS que je récupère.
Et dans ce cadre j'ai besoin de me placer dans un nouveau repère qui correspondrait à une personne placée sur la surface de la terre (repère R2 que j'ai définit plus haut). Ainsi je ne connait rien de se repère et c'est pourquoi je ne vois vraiment pas comment l'exprimer en fonction du premier.

Nightmare
Membre Légendaire
Messages: 13817
Enregistré le: 19 Juil 2005, 17:30

par Nightmare » 12 Sep 2012, 17:52

Si tu n'en connais rien, ça semble difficile de trouver un changement de coordonnées, il faut au moins savoir vers quoi on change!

Tout ce qu'il nous faut, c'est savoir comment sont dirigés les nouveaux axes.

Pentos
Messages: 8
Enregistré le: 12 Sep 2012, 17:00

par Pentos » 12 Sep 2012, 17:56

ja sais juste que :
les vecteurs o1o2 et o2z2 sont colinéaires
les vecteurs o1o2 et o2x2 sont perpendiculaires
les vecteurs o1o2 et o2y2 sont perpendiculaires

mais cela ne semble pas suffisant. Ou du moins je ne vois pas comment faire

Nightmare
Membre Légendaire
Messages: 13817
Enregistré le: 19 Juil 2005, 17:30

par Nightmare » 12 Sep 2012, 18:48

C'est bien suffisant pour trouver un vecteur directeur de tes nouveaux axe.

Pentos
Messages: 8
Enregistré le: 12 Sep 2012, 17:00

par Pentos » 18 Sep 2012, 15:37

Je reviens après avoir potassé ça ce week end mais je suis un peu perdu je ne trouve vraiment pas comment exprimer les axes de la nouvelle base en fonction de ceux de l'ancienne...

Si tu pouvais m'aiguiller un peu.

Merci

Nightmare
Membre Légendaire
Messages: 13817
Enregistré le: 19 Juil 2005, 17:30

par Nightmare » 18 Sep 2012, 16:35

La première condition te dit que l'axe O2z2 est O1O2. Il suffit donc de calculer les coordonnées de O1O2 dans la première base et on aura les coordonnées d'un vecteur directeur de l'axe des z.

De la même façon, on sait que O2y2 est perpendiculaire à O1O2. Il suffit donc de trouver les coordonnées (dans la première base) d'un vecteur orthogonal à O1O2, ça nous donnera les coordonnées (dans la première base) d'un vecteur dirigeant l'axe des y. Même chose pour x.

Pentos
Messages: 8
Enregistré le: 12 Sep 2012, 17:00

par Pentos » 18 Sep 2012, 17:56

Merci pour ta réponse.
Avant de la lire j'ai pensé à autre chose

L'image ci dessous correspond à mon problème :
Image

La base 1 est représenté par les vecteurs x1,x2,x3 et la base 2 par les vecteurs y1,y2,y3.

Ne pourrait on pas considérer que pour passer de la base 1 à la base 2 on a une rotation autour de l'axe x1 puis une rotation autour de l'axe x3 puis une translation OA?

Ma solution est elle correcte et si oui quelle solution te semble la plus simple à mettre en oeuvre?

Merci

Dlzlogic
Membre Transcendant
Messages: 5273
Enregistré le: 14 Avr 2009, 12:39

par Dlzlogic » 18 Sep 2012, 19:08

Bonjour,
Pardon d'intervenir, mais si c'est une question concernant réellement la terre (la nôtre) et une surface sur la terre, par exemple votre village ou celui d'Astérix, c'est difficile, et sans mes bouquins, je serais incapable de le faire.
Par contre, il y a des logiciels qui font ça très bien.
En tout cas, je vos conseille la plus grande prudence.
Je ne me souviens pas avoir vu quelqu'un poser une question de ce genre et d'avoir répondu : ça y est j'y suis arrivé.
Mais ça ne m'empêchera pas d'essayer de vous aider.

Pentos
Messages: 8
Enregistré le: 12 Sep 2012, 17:00

par Pentos » 18 Sep 2012, 22:39

Bonsoir Dlzlogic,

Effectivement il s'agit bien d'une question concernant notre terre et un endroit à la surface de la terre que je ne connais pas spécialement.

A l'aide des coordonnées GPS je connais les coordonnées dans le référentiel géocentrique et pour mes calculs j'aimerais me placer dans un référentiel terrestre...

Le passage d'une base à l'autre ne semble pas très compliqué mais pourtant je n'en trouve pas le bout...

Dans tous les cas merci de l'aide que vous pourrez m'apporter.

Dlzlogic
Membre Transcendant
Messages: 5273
Enregistré le: 14 Avr 2009, 12:39

par Dlzlogic » 19 Sep 2012, 11:14

Pentos a écrit:Bonsoir Dlzlogic,

Effectivement il s'agit bien d'une question concernant notre terre et un endroit à la surface de la terre que je ne connais pas spécialement.

A l'aide des coordonnées GPS je connais les coordonnées dans le référentiel géocentrique et pour mes calculs j'aimerais me placer dans un référentiel terrestre...

Le passage d'une base à l'autre ne semble pas très compliqué mais pourtant je n'en trouve pas le bout...

Dans tous les cas merci de l'aide que vous pourrez m'apporter.

Je connais 2 logiciels qui font ça
1- Convers. Il est libre, je l'utilise depuis plusieurs années.
2- Circe. Il est gratuit aussi. Ce programme a été fait par l'IGN.
Mais, dans les deux cas, il ne permettent de calculer que des localisations proches, françaises, belges.
Je n'ai pas d'info pour les autres régions du monde.

Si vous me disiez plus précisément ce que vous voulez faire, éventuellement par MP, je pourrais peut-être mieux vous orienter.

Pentos
Messages: 8
Enregistré le: 12 Sep 2012, 17:00

par Pentos » 20 Sep 2012, 10:45

Je suis en train de réaliser un petit soft qui me permet de calculer plusieurs choses à partir de coordonnées GPS. Pour faciliter mes calculs j'ai besoin de me placer dans un repère terrestre.

J'ai pu obtenir un vecteur directeur à Y3.
Si j'exprimer ma matrice de passage en fonction des coordonnées des vecteurs directeurs des axes de ma nouvelle base, est ce que celle-ci sera juste? Ou faut il absolument que j'exprime la matrice de passage en fonction des coordonnées des 3 axes?

Merci

Dlzlogic
Membre Transcendant
Messages: 5273
Enregistré le: 14 Avr 2009, 12:39

par Dlzlogic » 20 Sep 2012, 12:00

Pentos a écrit:Je suis en train de réaliser un petit soft qui me permet de calculer plusieurs choses à partir de coordonnées GPS. Pour faciliter mes calculs j'ai besoin de me placer dans un repère terrestre.

J'ai pu obtenir un vecteur directeur à Y3.
Si j'exprimer ma matrice de passage en fonction des coordonnées des vecteurs directeurs des axes de ma nouvelle base, est ce que celle-ci sera juste? Ou faut il absolument que j'exprime la matrice de passage en fonction des coordonnées des 3 axes?

Merci

Bon, il y a plusieurs solutions;
Soit vous voulez calculer des choses du genre, distance entre 2 points, angle entre 2 directions, calcul d'un point par rapport à un autre, connaissant la distance et la direction etc. alors pour être sûr du résultat il vaut mieux travailler en géométrie sphérique, et encore avec certaines précautions.
Soit vous voulez calculer des éléments terrestres (distances - directions etc.) à partir de coordonnées géographiques, c'est à dire que vous voulez des "mètres terrain", alors il faut utiliser les transformations calculées par les logiciels que je vous ai indiqués.
Vous employez le terme "matrice de passage". Je voudrais préciser -au passage- que les matrices sont des outils mathématiques permettant de faciliter certains opérations du genre composition d'application. Pour l'opération que vous cherchez à faire, ce sera une série de formules. Bien sûr et si c'est possible, vous pourrez toujours mettre cela sous forme de matrice, mais ça n'apportera rien, ni à la facilité de calcul, ni à la compréhension, ni à la précision du résultat.

Je me répète, ce sont des calculs difficiles.
Petit exemple pour vous donner un ordre d'idée, dans la région de Dunkerque il faut faire une correction en distance de l'ordre de 5 mètres / km. Ce n'est en aucun une erreur (au sens "faute"), c'est dû au système de projection choisi.
Donc : casse-cou. :doh:

C.Ret
Membre Relatif
Messages: 497
Enregistré le: 02 Juil 2012, 12:33

par C.Ret » 20 Sep 2012, 14:35

Je me permets d'intervenir juste pour confirmer que si le problème concerne la conversion de coordonnées GPS vers un référentiel géographique terrestre et local, alors Dlslogic a raison, ce n'est pas un problème simple.
Les solutions absolues n'existent pas car le référentiel géographique GPS (WGS 84) n'est pas absolue. Il faut donc effectivemetn utiliser les logiciels indiqués ou tenir compte dans les calcul des approximations et projections appropriées.
Les formules sont complexes, le site de l'IGN donne pas mal d'explication et une bonne partie des solutions à utilsier en fonction des cas.

En effet, dans le cas où les référentiels R1 et R2 sont deux systèmes cartésiens définis de façon absolue (comme le cas des repères mathématiques ou en géométrie euclidienne). Alors effectivement, en tenant compte des axes de projection (ici l'axe passant par le centre de la Terre), de la géométrie (la Terre considérée comme une sphère parfaite).
Alors, dans ce cas seleument, il existe effectivement une matrice de passage, car la transformation des coorodnnées (x1,y1,z1) vers (x2,y2,z2) se fait par rotations, transposition, translation, etc...
En fait que des opérations élémentaires que le calcul matriciel permettra. Cependant, il risque d'y avoir en plus du produit par la matrice de passage (qui prend en compte la rotation), une soustraction/addition par une matrice de translation.

Dans le cas réel, un des freins est que la Terre n'est pas parfaitemetn sphèrique. En fonction de la précision souhaitée, il faudra ou non tenir compte de sa forme réelle (qui elle-même est décrite par plusieurs modèles possibles mais qui tous ne sont pas tous cohérents avec les coordonnées GPS).

Ce qui m'ammène au problème principale, le système GPS est basé sur le systeme tel qu'utilisé dans la norme WGS 84. Comment diable, peut-on avec ce système passer des coorodnnée GPS qui sont en fait le couple latitude/longitude exprimer sous forme d'angle signés (angles positfs pour l'hémisphère Nord et les coorodnnée à l'EST du méridien de Greenwich) en en système de coorodnnées cartésiennes (x1,y1,z1) lié au centre de la terre ?

Je connais la réponse, mais je la pose pour souligne le fait que cette transformation n'est peut-être pas justifiée. En effet la transformation de ces coorodnnées GPS directement dans un système (x2,y2,z2) lié au référentiel géographique (= la carte plaquée à la surface de la Terre à l'endroit exact de la postion GPS) ne serait-il pas plus simple.

P.S.: Je n'ai pas sous la main mon système informatique habituel où sont les adresse des pages expliquant cela (site de l'IGN et surtout, mais en anglais, les sites expliquant le fonctionnement du système GPS).


Conclusion: tout cela pour dire que les questions posée ci-dessus par Dlzlogic et Nightmare sont justifiées. Car en fait, il y a peut, ou pas d'applications qui justifient d'utiliser des système de coorodonnées cartésiennes telles que ces deux répère R1 et R2.
Par contre, il existe toute une armada de formules pratiques, plus simple et surtout plus juste pour calculer distance, trouver l'azimut, loxodrome, orthodromie ou le grand cercle entre deux positions terrestres, etc...
En fonction de ce que devra faire ce bout de programme, il peut être plus efficace (et surtout plus juste) de les utiliser.


P.S.: Désolé, je n'et pas l'adresse du formulaire (et je n'arrive pas à le retrouver sur Google)
Voici quelques liens qui rapèlent les notions de bases:
http://fr.wikipedia.org/wiki/Loxodromie
http://fr.wikipedia.org/wiki/Coordonn%C3%A9e_g%C3%A9ographique
http://fr.wikipedia.org/wiki/Syst%C3%A8me_de_coordonn%C3%A9es_(Cartographie)

Dlzlogic
Membre Transcendant
Messages: 5273
Enregistré le: 14 Avr 2009, 12:39

par Dlzlogic » 20 Sep 2012, 15:01

Bonjour C.Ret,
Juste une petite précision de terme concernant le géoïde.
Le géoïde est la surface de référence observée, c'est à dire visible, lorsque le seul outil d'observation est le fil à plomb.
La définition du géoïde est "la surface en tout point normale à la direction du fil à plomb".
Les mesures GPG sont faites par rapport aux satellites, c'est à dire qu'elle n'ont rien à voir avec la verticale du lieu. Les coordonnées géographiques sont dans le système WGS84, basé sur l'ellipsoïde de Clark.
Je tiens à préciser que l'article de Wiki fait effectivement référence au géoïde, mais il a tort.

C.Ret
Membre Relatif
Messages: 497
Enregistré le: 02 Juil 2012, 12:33

par C.Ret » 20 Sep 2012, 15:46

DlzLogic, merci pour cette précision, je n'avais pas remarqué. A force de lire les choses de droite et de gauche, on oublie les base.

En fait, je voulais parler non pas du géoïde, mais de systèmes géodésiques. Mais à force de zapper entre français et anglais, je fini par faire des "anglissismes" et des approximations.

D'ailleurs, l'article "système géodésique" Wikipédia est bien fait pour expliquer. Mais c'est vrai que ces articles encyclopédiques manquent souvent les bases, ou des notions fondamentales. Comme par exemple une explication claire entre ce qui est local (au sens géographique, géométrie ou géodésique) et globale (modèle globale de représentation de la planette, projections, ...).

 

Retourner vers ✯✎ Supérieur

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 20 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite