patry

limite de constellation

Messages recommandés

Est-ce qu'il existe quelque part une base de données indiquant les limites (AD/DEC) de chaque constellation ?

 

Bien sur une constellation n'est pas "un rectangle" sur le ciel mais une forme plus complexe mais elle est fermée par un ensemble de points ... que j'aimerais bien avoir.

Histoire que, à partir d'une coordonnée Ad/Dec, je puisse en déduire dans quelle constellation se trouve mon objet ?

 

J'imagine que c'est "normalisé" mais où ?

 

Marc

Partager ce message


Lien à poster
Partager sur d’autres sites

J'ai fini par trouver là : https://www.iau.org/public/themes/constellations/

Sous la dénomination : Constellation boudary. Cela donne exactement ce que je voulais à savoir un fichier texte avec les limites de la constellation:

Exemple pour And:

 

22 57 51.6729| 35.1682358|AND 
22 57 22.2843| 53.1680298|AND 
23 25 48.6945| 53.1870041|AND 
23 25 51.7638| 50.6870193|AND 
23 41 04.9337| 50.6929131|AND 
23 41 06.2589| 48.6929169|AND 
00 16 35.1282| 48.6949348|AND 
00 16 34.3869| 46.6949348|AND 
00 59 06.2585| 46.6757545|AND 
00 59 09.3282| 48.6757393|AND 
01 14 21.2179| 48.6632690|AND 
01 14 25.4169| 50.6632347|AND 
01 29 37.9047| 50.6478767|AND 
01 47 52.4457| 50.6257439|AND 
01 47 43.5455| 47.6258430|AND 
02 10 29.1579| 47.5927505|AND 
02 10 41.7123| 51.0925827|AND 
02 39 32.5149| 51.0423737|AND 
02 38 43.0419| 37.2931557|AND 
02 07 29.0619| 37.3470840|AND 
02 07 25.0201| 35.5971375|AND 
01 31 38.6004| 35.6453362|AND 
01 31 35.3823| 33.6453705|AND 
00 49 46.3353| 33.6818962|AND 
00 49 39.2379| 24.4319324|AND 
00 57 41.7755| 24.4266243|AND 
00 57 39.5557| 21.6766376|AND 
00 14 57.5811| 21.6951923|AND 
00 14 57.7547| 22.6951923|AND 
00 10 26.4039| 22.6957588|AND 
00 10 27.0822| 28.6957588|AND 
00 06 25.4919| 28.6960354|AND 
00 06 25.6745| 32.0293655|AND 
23 51 18.8979| 32.0285034|AND 
23 51 18.7398| 32.7785072|AND 
23 36 11.7979| 32.7746468|AND 
23 36 10.6031| 35.1913109|AND
 

Marc

  • J'aime 3
  • Merci 2

Partager ce message


Lien à poster
Partager sur d’autres sites
Le 27/07/2022 à 16:26, patry a dit :

Bien sur une constellation n'est pas "un rectangle"

 

Bien sûr B|

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites

En effet, mais avec la liste des sommets du polygone, identifier si une coordonnée fait partie ou non d'une constellation est un jeu d'enfants !

Avec une macro Excel ou quelques lignes de python je vais m'en sortir.

 

Marc

 

  • J'aime 1

Partager ce message


Lien à poster
Partager sur d’autres sites

La définition précise des limites de constellations existe. C'est un ensemble de points qui délimitent des segments parallèles aux méridiens ou aux parallèles. Elle n'est pas pratique à utiliser car elle s'exprime en coordonnées B1875 et il faut donc (quand on n'utilise pas ces coordonnées) faire d'abord une conversion. D'autant qu'après conversion les limites ne sont plus parallèles aux méridiens et parallèles.

 

Ici on peut trouver un programme Fortran et un programme C qui calculent la constellation à partir de coordonnées J2000. Le programme utilise un fichier qui contient ces limites précises et on voit qu'il commence par faire la conversion de coordonnées : https://cdsarc.u-strasbg.fr/viz-bin/VizieR?-meta.foot&-source=VI/42

 

En pratique, par exemple pour faire des cartes qui montrent les limites de constellations, on utilise un fichier dans lequel on a pré-calculé (en coords J2000) un assez grand nombre de point situés sur ces limites, qu'on joint par des segments. Les fichiers que tu as trouvés sont de cette catégorie (*). On en trouve un ici qui regroupe tout le monde : https://cdsarc.u-strasbg.fr/viz-bin/VizieR?-meta.foot&-source=VI/49 . Je serais toi, j'utiliserais ce fichier uniquement pour tracer des cartes. Pour déterminer une constellation à partir des coordonnées, j'utiliserais le VI/42, surtout que tu sais programmer. (C'est ce que je fais et je ne m'embête pas : j'ai recopié bêtement leur programme que j'ai transformé en sous-programme. Il faut juste ne pas oublier de trimballer le petit fichier "data.dat".) En tout cas ça ne me paraît pas du tout être un jeu d'enfant de déterminer la constellation à partir des points du fichier pré-calculé, parce que les limites ne sont pas parallèles aux méridiens et parallèles. (C'est sans doute pour ça que ceux qui ont écrit le programme de VI/42 reviennent aux coordonnées B1875.)

 

-----

(*) Le fichier issu de la définition, dans VI/42, contient 357 points. Le fichier avec les points pré-calculé, dans VI/49, en contient 13.039.

Modifié par Bruno-
  • J'aime 1

Partager ce message


Lien à poster
Partager sur d’autres sites
Il y a 2 heures, Bruno- a dit :

En tout cas ça ne me paraît pas du tout être un jeu d'enfant de déterminer la constellation à partir des points du fichier pré-calculé, parce que les limites ne sont pas parallèles aux méridiens et parallèles.

 

En fait pour savoir est dans un polygone, tu a plusieurs méthodes.

  • L'une, que j'ai utilisé mais dont je ne me souviens plus trop met en jeu des produits vectoriels entre le point et chaque sommet consécutif. Il y a une histoire de signe du produit mais bon on oublie (surtout il y a plus simple).
  • L'idée consiste à partir du point et de tirer une demi droite (celle que l'on veut) puis de déterminer combien de fois on va couper chaque segment (orienté) du polygone. Pour faire simple il suffit par exemple de prolonger en AD (positivement) notre point. A partir de là, si les deux sommets d'un segment ont une DEC supérieure (ou inférieure) à la DEC du point => pas d'intersection. Sinon, (la dec "enjambe" le segment) il faut s'intéresser à l'AD des sommets du segment et si les deux sont supérieures (ou inférieures si on prolonge la 1/2 droite dans l'autre sens) alors il y a intersection. Reste le cas où on "enjambe" en AD et en DEC (i.e. les sommets ne sont pas sur la même AD ou DEC), et là il faut calculer réellement le point d'intersection et vérifier s'il est sur le segment ou pas. Le nombre d'intersection (impair) dira que le point est dans la forme, ou (pair) s'il est extérieur.
  • Si on veut bien faire, la somme des angles de chaque segment "vus" depuis le point vaut 0 si le point est dehors, et +/- 2PI si le point est dedans. Ca marche aussi mais le temps de calcul d'une fonction trigonométrique inverse est sans commune mesure avec quelques multiplications (produit vectoriels) ou quelques comparaisons et de temps en temps une résolution (méthode de l'intersection).

Marc

Partager ce message


Lien à poster
Partager sur d’autres sites

Ce n'est donc pas si simple ! :) Ces algorithmes peuvent servir si on utilise le fichier qui délimite Andromède et si on veut savoir si les coordonnées désignent un point dans Andromède. Mais pour savoir dans quelle constellation on se trouve, c'est plus compliqué (on pourrait tester chaque constellation une à une jusqu'à tomber dans la bonne...)

 

Je préfère l'approche de VI/42 : on se met en coordonnées B1875 (ça demande du calcul), et alors les limites sont toujours parallèles aux méridiens et parallèles, ce qui donne un algorithme tout simple.

Modifié par Bruno-

Partager ce message


Lien à poster
Partager sur d’autres sites

Tu chipote, mais en effet, pour savoir dans quelle constellation est tel ou tel objet effectivement, il faut tester tous les segments de chaque constellation. Mais cela va prendre quelques millisecondes de seconde de traitement en testant toutes les constellations (quelques centaines de segments).

Mais effectivement avec des limites toujours // en AD ou en DEC, la dernière étape (on enjambe de partout) devient inutile et la méthode accélère. Ce qui est important c'est que les segments soient orientés surtout.

Tout dépends du niveau de précision que l'on recherche. Dans mon cas, je récupère un fichier du WDS, et une fois purgé des éléments "impossibles", j'aimerais savoir pour chaque élement (des centaines, voire quelques milliers) dans quelle constellations ils se trouvent. Quelques dizaines de lignes de code et une à deux secondes plus tard si j'ai mon résultat je suis content !

 

Marc

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant