est un système qui permet de générer
automatiquement des tables relationnelles à partir des
descriptions standardisées; il est compatible avec
le système
, essentiel pour l'interprétation;
il y a également quelques fichiers contenant des informations
supplémentaires:
Quelques procédures Sybase sont utilisées pour gérer la
base locale, et relatives aux catalogues:
.
Dans les macros, les noms de table peuvent contenir des jokers;
pour les noms de colonnes, un astérisque
Il est possible qu'il faille faire des transformations sur les
fichiers avant leur inclusion dans VizieR.
La description des fichiers contenue dans le ReadMe devient alors incorrecte;
une convention particulière consiste à utiliser en priorité un fichier
de nom readme.viz – le fichier ReadMe n'est donc utilisé
que si readme.viz n'existe pas.
Par exemple pour
le CCDM (Cat. I/211) les coordonnées sont calculées, mais
le fichier public ne contient pas les coordonnées,
le fichier transformé étant décrit dans I/211/readme.viz
Bien sûr, les protections de permettent pas de lire readme.viz...
Certains détails, comme la liste des champs qui sont affichés par
défaut, ou encore comment générer des ancres particulières,
ne peuvent être décrites dans le fichier ReadMe , et se trouvent:
Les définitions relatives à VizieR dans ces fichiers commencent
géénéralement par \viz. Tout argument représentant
une liste de tables peut comprendre les jokers (wild chars)
utilisés souramment dans la désignation des fichiers Unix,
à savoir
l'astérisque (*), le point d'interrogation (?),
et les crochets ([ ... ]).
Les définitions détaillées sont les suivantes:
- \cType{ catalogue_type }
-
permet de définir la catégorie du catalogue selon
les critères définis par C. Jaschek:
- OC = Observation Catalogue
- BCC = Bibliographical Compilation Catalogue
- CCC = Critical Compilation Catalogue
- GCC = General Compilation Catalogue
- MC = Model Catalogue
- \cUsualName{ acronyms }
-
permet de définir le \nom usuel du catalogue.
On peut ainsi retrouver un catalogue directement par
ce nom. Attention, un acronyme ne peut faire qu'un
seul mot (pas de blanc)!
- \cDic{VizieR table(s)}{ comment construire }
-
permet de définir comment est construit le nom d'un objet
à partir du contenu d'une table; il s'agit de l'équivalent
du %g du dictionnaire.
Pour tester les identificateurs générés par \cDic,
il est possible de mettre en place un petit programme de test,
qui doit se terminer par .tst.
Par exemple pour XMM (IX/40/dic9040.tst)
- \cServer{ [.+*]name }
-
permet de définir à quels serveurs le catalogue est
rattaché. Il y a actuellement 3 types;
- Le serveur AladinX (ancien accès par
coordonnées). Ce serveur est désigné par le
.(point)
- La liste des Surveys, c.à.d. la liste
des catalogues qui sont listés par Aladin
(cf /usr/httpd/Pages/VizieR/AlaSurveys.tsv
indiqués par un
+(plus)
- La liste des Archives, indiqués par un
*(astérisque)
(exemple dans B/hst/.Summary)
Le fichier se trouve dans
/home/cats/bibcat/Aladin.tab
- \vizKeyword{}{keyword}
-
pour ajouter un mot-clé qui ne peut pas être mis par les
mot-clés du ReadMe (par exemple
J/A+A/376/1113/.status)
- \vizCatrole{ keyword=value }
-
(voir aussi la stored procedure correspondante)
permet de quantifier le rôle du catalogue par
rapport au keyword: 0 indique un catalogue fondamental par
rapport au keyword, et 255 un rôle anecdotique.
Les valeurs 100 et 200 sont généralement utilisées
comme quantification.
- \vizIgnoreTables{ list of tables_to_ignore }
-
donne la liste des tables qu'il ne faut pas charger.
- \vizComment{ list of tables }{ list of columns }
{Text of Comments}
-
définit un commentaire à associer à la colonne
Note: si list of columns est vide, l'explication
se rapporte à la table.
(à éditer dans la page VizieR correspondant au catalogue)
Note 2: le commentaire peut utiliser la macro
\inputViz pour inclure un texte qui se trouve dans
le répertoire /usr/httpd/Pages/VizieR
(voir par exemple pour l'USNO2
I/252/.Summary). Peut également servir pour
inclure des définitions, comme par ex. pour CoRoT dans
J/A+A/506/569/.status.
Note 3: il est possible de préciser dans quelle page mettre
le commentaire avec la macro \Vphase (qui vaut 3
pour la Search Page, 4, 5 pour les pages
résultats), et 6 pour les corrélations.
Note 4: la macro \iflay est une macro qui vaut
\iftrue lrosque le commentaire est édité dans un layer
(petite étiquette jaune qui apparait lorsqu'on passe la souris)
et \iffalse autrement. Ceci permet de mettre par exemple
des liens dans une explication en gardant un texte compréhensible
dans l'étiquette. Example pour le catalogue de naines blanches
III/210/.Summary.
Note 5: le commentaire associé à une table peut également
contenir une position par défaut, dans une macro \ignore:
par exemple pour la version obsolete de DENIS,
dans II/240/.Summary, les versions obsolètes
n'ayant plus d'index par coordonnées...
Note 6: dans le cas où le commentaire est associé
à une colonne,
celui-ci est ajouté en notes — soit une note est
créée, soit la note est complétée avec le commentaire.
Il est suggéré d'utiliser
la couleur DarkGreen pour les commentaires, voir
exemple dans le GCVS II/214A/.Summary.
Il est possible éventuellement d'insérer des images contenues
dans le Service Catalogues (les images sont des fichiers
.gif, .jpg ou .png).
Il y a en fait plusieurs macros:
- \Vimage{@{@cat}/file} correspond à une
simple insertion d'image existant dans le service catalogue
(utiliser
\image{url} pour une image quelconque);
-
\Vimg{@{@cat}/file}{texte_étiquette}
insère l'image avec une étiquette qui apparaît
quand la souris passe sur l'image
(utiliser
\img{url}{texte_étiquette}
pour une image quelconque);
-
\VIMG{@{@cat}/file}{texte_étiquette}{HTML options}
permet d'ajouter des options pour le positionnement etc de l'image
dans son 3ème argument (utiliser
\IMG{url}{texte_étiquette}{HTML options}
pour une image quelconque).
Enfin il est possible de faire des liens vers des sites externes
par les macros de lien général:
- \A{url}{texte}:
lien cliquable, s'ouvre dans la même fenêtre;
- \W{nom_fenêtre}{url}{texte}
lien cliquable, s'ouvre dans une fenêtre dont le nom est spécifié
(mettre un nom vide pour que chaque clic utilise
une nouvelle fenêtre)
- \Alay{texte_étiquette}{url}{texte}:
similaire à \A, mais avec une étiquette qui permet d'ajouter
une explication lorsque la souris se trouve sur le texte du lien
- \Wlay{nom_fenêtre}{texte_étiquette}{url}{texte}:
le lien s'ouvre dans une fenêtre dédiée.
- \vizMerge{ list of tables }{ name }
{Explanation text for the merged table }
-
[Attention à l'ordre, une liste table*
fera que table10 précède table2]
permet la réunion (fusion) de plusieurs tables en une seule
dont le nom est donnée par name —
il faut que les tables mentionnées aient la même structure.
Exemple dans J/A+A/401/959/.status.
Il est possible de rajouter une colonne qui marque d'une
façon particulière quelle est la table origine de chaque ligne
— voir ci-dessous
\vizAddColumn avec alternatives.
- \vizPaste{ list of tables }{ name }
{Explanation text for the pasted table }
-
[Attention, la liste des tables doit être explicite
l'écriture table[12] peut poser des problèmes,
il faut écrire table1 table2]
permet le collage (fusion de colonnes) de plusieurs
tables en une seule qui s'appellera name —
il faut que les tables mentionnées aient le même nombre
de lignes, et que chaque ligne des tables originale
représente le même objet. De plus, les colonnes ayant le même
nom dans les tables avant collage doivent avoir un contenu
identique – par exemple si les 2 tables à coller possèdent
toutes les 2 une colonne Name, cette colonne doit
contenir la même chose dans les 2 tables pour chaque ligne.
Exemples dans B/fuse/.Summary, ou bien dans
J/A+A/430/549/.status.
Si les ordres des tables diffèrent, il est possible de
demander un tri par la macro \vizConvert comme
par exemple dans J/ApJ/538/493/.status
ou plus simplement à l'aide de taborder comme dans
J/ApJ/703/1511/.status.
Pour faire les 2 opérations (\vizPaste et \vizMerge)
il est possible de concaténer des tables par \vizConvert,
et d'utiliser \vizPaste, comme dans
J/ApJS/169/401/.status.
Mais quand il faut en plus réordonner des tables, ça devient
compliqué, il faut supprimer la variable $theFile
(qui devrait prendre les valeurs correspondant aux différents
fichiers mergés): un exemple est dans J/ApJS/206/13/.status.
- \vizNote{ list of tables }{ Note_id note_line }
{Text of additional note}
-
permet de rajouter du texte dans une note, par exemple pour
rajouter des indications de \begin{noteasatable}
ou autres macros qui ne sont pas dans la note originale.
Note_id note indique quelle est la note (par exemple
(2)), et note_line précise la ligne de la note en donnant:
- (rien): le texte est ajoute à la première ligne de la note;
- +: le texte est ajouté à la fin de la note;
- texte: indique une partie du texte qui se trouve
dans la ligne à modifier.
- ^texte: la note doit commencer par le texte spécifié
(précédé par un nombre de blancs quelconque)
Le text of additional note commence par
- + si le texte est à ajouter
à la fin de la ligne,
- = si le texte doit remplacer la ligne
- ! si le texte doit remplacer toute la note
(depuis la ligne courante jusqu'à la fin)
- & si le texte doit remplacer le texte note_line
par défaut le texte est ajouté en début de ligne.
Exemples dans J/A+A/462/553/.status (toute la note),
J/A+A/427/107/.status,
ou J/ApJ/602/264/.status; indication de la fin de la
table dans J/A+A/428/1043/.status.
Ou bien decoupage de la table en 2 morceaux dans
III/250/.status.
Ou encore a la fois table et texte pre-formatte, dans
J/A+A/463/1227/.status.
Egalement ajout de liste \begin{itemize} dans
J/A+A/471/1069/.status
De plus, le text of additional note peut contenir
des substitutions de noms de catalogues, tables, etc...
(${$cat}, ${$table}, et ${} qui représente le
texte défini dans text of additional note).
Ceci permet facilement de transformer des textes pour
mettre en gras ou en couleurs... (exemple dans
J/MNRAS/376/1251/.status) ou de rajouter
une image (par ex. J/A+A/509/A61/.status).
Le texte, s'il est absent, demande d'insérer un
\begin{noteasatable}
- \vizDB{ list of tables }{ [tablename_in_DB]
[login_into_DB] [-norecno] [catid=catid]
[dbaid=dbaid]}
-
définit
- soit les caractéristiques Sybase: nom facultatif de
la table dans la base de données (un tilde ~ indique
de conserver la partie du nom de la table dérivé du nom de
catalogue), et dans quelle
base de données la table se trouve
(permet éventuellement de se connecter
à des bases extérieures).
L'option -norecno demande que la table ne contienne pas
la colonne recno, compteur de tuple.
Dans ce cas, la table doit posséder une clé primaire
pour pouvoir retrouver les informations complètes relatives à
un tuple (exemple pour le log CFHT: B/cfht/.Summary)
L'option catid= permet de fixer un numéro de catalogue
(exemple pour les comètes: B/comets/.Summary).
L'option dbaid= permet de fixer un numéro de data-base
(exemple pour le log XMM: B/xmm/.Summary).
Note 1: si [tablename_in_DB]
est remplacé par *, le nom standard est adopté.
Voir par ex. I/141/.Summary (YZC)
Note 2: si [tablename_in_DB]
commence par | les tables mentionnées
dans le premier argument sont
fusionnées horizontalement (pasted);
cela suppose des tables ayant le même nombre de lignes,
et les noms de colonnes dupliqués n'apparaissent qu'une fois
dans la table fusionnée.
Exemple dans III/106/.Summary
(voir \vizPaste)
Problème à voir dans J/AJ/126/3007/.status
semble ne pas marcher (metalink problem)
Note 3: si [tablename_in_DB]
ne commence ni par * ni par | ni par -,
les tables mentionnées dans le premier argument sont
fusionnées
(merge).
Exemple:
I/246/.Summary (ACT), formé de au départ
de 48 fichiers, concaténés en un seul, ou encore
I/250/.Summary (TRC).
(voir \vizMerge)
Note 4: le tilde ~ peut être utilisé
dans le nom pour désigner le nom de catalogue standard; par
exemple ~catal appliqué au catalogue 2345 va assigner
le nom c2345catal à la table.
Note 5: cette macro
permet également de demander de ne pas inclure ce catalogue
dans VizieR, en codant
\vizDB{ — }{ — }
(cf
J/ApJS/100/125/.status)
Ou encore pour les tables non arrivées, on y rajoute
en plus le commentaire standard
\vizComment{}{}{{\bf\fg{red3}(data not received)}}
par exemple dans J/A+A/441/181/.status.
Dans ces commentaires, il peut être utile de rajouter
les objets étudiés, comme par exemple dans
J/A+A/469/L43/.status:
\vizComment{}{}{{\bf\fg{red3}(RV data of \object{Gl 581} never mailed by the authors)}}
- soit la méthode pour lancer une interrogation
externe si tablename_in_DB commence par !
(le point d'exclamation).
Voir exemple pour USNO Catalogue,
dont les définitions se trouvent dans
I/252/.Summary
La commande a exécuter contient des [ ] pour indiquer
les paramètres facultatifs,
et les accolades { ... | ... } pour indiquer les
alternatives dont l'une est obligatoire
(par exemple [-m ${Vmag}]
ne sera présent que si la colonne Vmag
a une contrainte).
Les noms des colonnes entre ${ }[] sont remplaces par
les contraintes specifiees. Il est possible de rajouter
une contrainte sur un intervalle de la forme
low,high (par exemple dans l'USNO à
I/252/.Summary) en commençant le nom
de la colonne par ,, par exemple
[-lB ${,Bmag}]
En plus des noms de colonne, les
paramètres entre ${ } peuvent utiliser les arguments
de ASU,
par exemple ${-c} pour les coordonnées du centre,
${-c.rm} pour le rayon en arcmin (-c.rs pour arcsec),
etc ...
- \vizObj{ Comment générer le lien }
-
utile lorsque le ReadMe contient des objets,
et que l'on veut faire un lien de ces objets
(comme par exemple J/A+A/428/877/.status,
J/A+A/450/39/.status,
ou bien J/AZh/81/925/.status).
Dans ces liens ${} représente la colonne texto
de la table METAobj, et peut être découpée
(${$1} est le 1er mot, ${$=2} est la
partie entre le 1er et le 2ème signe =,
${$(1)} est le texte dans la 1ère paire de parenthèses
etc...)
Autre exemple de choix d'abondances à editer:
J/AJ/129/1607/.status.
Ou encore tracé de transit de planete
(J/A+A/476/1347/.status)
ou de variables avec les périodes données entre parenthèses dans
J/A+A/463/981/.status
Note: lorsque la dernière colonne de la section Objects
est mise entre parenthèses pour représenter un nom de
fichier (J/A+A/417/515/.status dans J/A+A/417/515),
de table accessible dans vizier (J/MNRAS/377/300/.status
dans J/MNRAS/377/300)
ou de colonne (J/A+A/440/1153/.status dans
J/A+A/440/1153), on peut
- \vizQbox{ list of boxes }
-
précise, pour les gros catalogues, la répartition des
objets sur la sphère céleste. Les conventions suivantes
sont utilisées:
- Une valeur 0 indique toute la sphère, 9 à 15 les faces
Nord, RA=6h, RA=0h, RA=12h, RA=18h, Sud.
Exemple pour le GSC (I/220/.Summary)
- Il est possible de donner une liste de tables
qu'il ne faut pas inclure dans l'index par position.
Exemple pour la table9 de
J/A+A/425/367/.status
- Le signe - seul \viQbox{-} demande de ne
pas inclure le catalogue dans l'index par positions
- Un texte \vizQbox{myfile}
indique que la liste des qboxes se trouvent dans
le fichier myfile
Exemple pour DENIS (B/denis/.Summary)
- \vizFoot{ list of options }
-
peut contenir d'éventuelles options pour la génération
du footprint du catalogue. Par exemple pour utiliser
une échelle log si de très forts contrastes existent,
par exemple le catalogue VSX dans
B/vsx/.Summary
- \vizConvert{ list of files_to_convert }
{shell program a exécuter}
-
demande de filtrer le fichier d'entrée par un
programme. Permet de convertir 'on the fly' un fichier
pour qu'il puisse etre interprété correctement.
2 méthodes:
- Le code est inclus dans \vizConvert,
exemple pour convertir les références en CSV dans
VII/64/.Summary,
ou simplement un tri nécessaire pour un \vizPaste
comme dans J/ApJ/538/493/.status
(tip: utiliser "fcat" pour indiquer que la commande
gère elle-même les données – sans quoi le fichier
correspondant à la table est injecté en standard input
de la commande de conversion).
Exemple dans II/262/.Summary.
A noter le programme taborder pour mettre
la 2ème table dans le même ordre que la 1ère,
exemple dans J/ApJ/703/1511/.status
- Le code est inclus dans un fichier externe,
lorsque le code commence par un . –
exemple pour OGLE qui se concatène les fichiers
d'un sous-directory
J/MNRAS/348/1439/.status;
de meme concatenation des plaques de Fresneau:
J/AJ/130/2701/.status.
Note: Si plusieurs fichiers doivent
être concaténés, ça peut poser des problèmes;
dans le cas des plaques de Fresneau
(J/A+A/469/1221/.status), il faut un fichier
readme.viz qui ne décrive qu'un seul fichier.
Note: le code peut être inclus dans
make_viz pour les cas où il faut concaténer
des fichiers, voir (J/ApJS/170/251/.status);
un autre exemple avec les vitesses radiales dans une
table mal foutue par Guillout et al.,
(J/A+A/504/829/.status).
Les variables d'environnement suivantes sont accessibles:
- $theTab = nom de la table dans la base de données
- $theFile = nom du fichier contenant les données.
- \vizIndex{ list of tables } { list of columns }
-
indique les colonnes qui doivent être indexées dans
Sybase. Par défaut, seules les tables de plus de 50.000
entrées sont indexées, par leur recno, et
par leurs coordonnées (α,δ) si elles existent.
Seules les colonnes d'emploi fréquent pour les requêtes
dans les grandes tables sont vraiment nécesssaires.
- \vizIgnoreColumns{ list of tables } { list of columns }
-
donne la liste des colonnes à ignorer (par exemple
des coordonnées dans une 2ème équinoxe...)
(rappel: un astérisque * indique que les noms
qui suivent peuvent contenir des jokers, et le tiret - demande
toutes les colonnes sauf celles indiquées)
- \vizAddColumn{ list of tables } { Name }
{ Value }
{ Unit | type=... dbtype=... fmt=... ... }
{ ±colOrder }
{ explain text }
-
définit une nouvelle colonne constante
qui peut être utile par exemple pour rajouter une année
dans II/190/.Summary
C'est très utile aussi pour mettre en place des liens qu'on peut activer
ou désactiver – dans le B/chandra log, les liens vers l'Archive
sont créés comme colonnes constantes, puis modifiées en fonction
de la date de release – voir B/chandra/.Summary
Le contenu Unit peut contenir ou bien l'unité, ou
bien des spécifications concernant la colonne ainsi créée,
telles que le type de données type, le type dans la
base dbtype, le format d'affichage fmt,
les unités unit et dbunit
(voir ces spécifications dans la macro \vizSet ).
Ainsi, {km/s} est équivalent à
{unit=km/s}.
Lorsque colOrder est blanc (non spécifié), la colonne est
ajoutée à la fin (dernière colonne).
Note 1: le texte explain peut contenir
la macro \ucd{UCD} pour le choix de l'UCD
(UCD1 ou UCD1+).
Note 2: Value peut contenir des
alternatives si Value commence par une virgule , .
Ces alternatives sont affectées successivement aux tables
contenues dans la liste. Ceci permet d'ajouter une
colonne dont le contenu indique la table en cas de
fusion de tables.
Voir exemple dans J/AJ/128/544/.status
Note 3: Value peut indiquer un
fichier ou une procédure qui permet de remplir cette colonne,
si Value commence par un point . .
Le nom qui suit le point (par exemple .myFile)
indique que myFile contient les données de cette
nouvelle colonne (à raison d'une donnée par ligne, les lignes
commençant par % ou # étant ignorées.
A noter:
si le fichier myFile est exécutable,
myFile représente alors un script à exécuter
(la variable theFile est définie à l'intérieur
du script et contient le nom du fichier à traiter, et
theCol contient de nom de la colonne).
Si le . est suivi d'un pipe (|) il s'agit d'une
commande qui contient en entrée la table
(équivalent à la commande fcat table | ...)
Enfin,
si le . est suivi d'un blanc, il s'agit d'une commande
à exécuter, par exemple
. grep '^[0-9]' mydata.
Examples:
Example avec cross-match
(utiliser plutôt la macro \vizAddXcount):
pour faire le lien entre
2 tables sur la base de positions, il est possible d'utiliser
le script AWK /home/cats/lib/X2.awk qui a pour
arguments tab1 (table primaire, en principe la plus grosse),
tab2 (table secondaire), col (colonne qui
indique le cross-match), val (contenu de la colonne qui
indique un cross-match), et r (distance maximale du
cross-match en arcmin, ou bien rs en arcsec).
Exemple dans J/A+A/455/453/.status.
Calcul de mouvements propres: pour calculer les
mouvements propres dans le repère equatorial à partir des
mouvements propres en coordonnées galactiques: utilisation
de astropos, voir J/AJ/134/1432/.status:
#!/bin/sh
##############################################
# Compute proper motion in Equatorial
# (from Galactic proper motion)
# Arg: 1=RA, 2=Dec
###############################################
# Arg#1 = 1 or 2
fcat table3.dat | astropos -c7-27 I G | astropos -6d -c72-92,44-58 -pmas G J | acut -d, -f2 | gawk -v c="$1" '{print $c}'
- \vizAddFKflag{ list of tables }
{ column_name } { Value } { Unit }
{ ±colOrder }
{ explain text }
-
définit une nouvelle colonne destinée à contenir
un flag mis à non-blanc qui permet de faire le lien
clé primaire ==> clé externe.
Cette colonne sera mise à blanc pour les lignes
d'une table qui ne référencées dans aucune autre table.
Exemple dans
J/AJ/108/1256/.status
- \vizAddCount{ list of tables }
{ column_name } { table_cible condition(s) }
{ Unit }
{ ±colOrder }
{ explain text }
-
définit une nouvelle colonne destinée à contenir
un nombre d'objets qui satisfont à une ou plusieurs
conditions – typiquement pour indiquer un nombre
d'étoiles dans un amas ou un nombre d'observations qui
se trouvent dans une autre table.
- table_cible est le nom de la table
(extérieure ou intérieure)
(peut être composé de plusieurs tables séparées
par des virgules – non testé). On peut utiliser
= (signe égal) ou * (astérisque)
pour la table elle-même (self-count);
ou encore *FK=name pour désigner les
tables qui ont name pour clé externe
(ex. J/ApJS/206/17/.status
- condition spécifie comment faire le comptage,
sous la forme col2=@{col1}, où
col2 désigne la colonne de la
table_cible et col1 celle de
la table concernée. Si les noms sont indentiques
dans les 2 tables, on écrira par exemple
Cluster=@{Cluster}
Le lien vers la table_cible est fait si le nombre est
positif (\ifnum@{}>0) (ou
\ifnum@{}>1 dans le cas de self-count,
c.à.d le cas où la
table_cible inclut la table d'entrée). Exemple dans
J/MNRAS/414/28/.status
Note 1: dans les explications, citer correctement les
auteurs, par ex.
Borucki et al. 2014 (J/ApJ/736/19)
plutôt que Cat. J/ApJ/736/19
Note 2: le texte explain peut contenir
la macro \use{vRef} pour le choix de
la fenêtre dans laquelle se fait le lien.
- \vizAddXcount{ list of tables }
{ column_name } { table_cible rs=..
[autres_conditions] } { Unit }
{ ±colOrder }
{ explain text }
-
définit une nouvelle colonne destinée à contenir
un nombre d'objets qui existe dans une autre table dans
une recherche par position:
- table_cible est le nom de la table
(extérieure ou intérieure)
(peut être composé de plusieurs tables séparées
par des virgules, par ex. J/ApJ/700/103/.status)
On peut utiliser
= (signe égal) ou \* (astérisque)
pour la table elle-même (self-count);
ou encore FK=name pour désigner les
tables qui ont name pour clé externe
- rs= spécifie le rayon de recherche, en
secondes de degré.
- éventuellement d'autres conditions pour la recherche
(par exemple mode=1 pour le SDSS)
Le lien vers la table_cible est fait si le nombre est
positif. Exemple dans
J/AJ/131/375/.status
Note 1: dans les explications, citer correctement les
auteurs, par ex.
Borucki et al. 2014 (J/ApJ/736/19)
plutôt que Cat. J/ApJ/736/19
Note 2: le texte explain peut contenir
la macro \use{vRef} pour le choix de
la fenêtre dans laquelle se fait le lien.
- \vizOrder{ list of tables } { Name }
{ ±colOrder }
-
- changement de l'ordre des tables:
si Name et ±colOrder sont vides
(comme dans J/ApJS/145/83/.status)
l'ordre des tables dans VizieR est delui donné dans
list of tables
- sinon, on place la colonne Name juste avant ou juste
après une colonne spécifiée par colOrder.
Note 1: On peut utiliser une astérisque pour
demander que par exemple toutes les erreurs suivent les valeurs
auxquelles elles se rapportent: exemple dans
J/MNRAS/372/1259/.status
Note2: On peut préciser les colonnes
avec des wildchars (* [] ?) si l'on précède le(s)
nom(s) de colonnes par un *. Exemple dans
J/AJ/145/31/.status
- \vizParam{ list of tables }
{ Name } { Value } { Unit }
{ group }
{ explain text }
-
définit un paramètre qui apparait dans une sortie VOTable.
Si aucun nom de table n'apparait, il s'agit d'un paramètre
associé à la ressource.
Exemple pour les précisions de la position
I/283A/.Summary.
- \vizProj{projection_name}{ large_table }
{ list of columns to keep in the projection }
-
permet de séparer une grosse table en tables plus petites
(lorsqu'il y a trop de colonnes).
Exemple pour le 2MASS-Extended sources
VII/233/.Summary.
Attention, il ne doit pas y avoir de blanc dans
les accolades définissant projection_name!
- \vizDisplayColumns{ list of tables }
{ list of columns }
-
donne la liste des colonnes à afficher par défaut
par VizieR. Par défaut, les colonnes les plus à gauche
(sans connotation politique!) sont affichées.
Rappel: un astérisque * indique que les noms
qui suivent peuvent contenir des jokers, et le tiret - demande
toutes les colonnes sauf celles indiquées.
Remarque: la colonne recno peut très bien
être indiquée — par exemple dans J/A+A/451/1159/.status,
ou bien le catalog NLTT (I/98A/.Summary).
- \vizCSV{ list of tables }{ list of columns }
-
indique des colonnes qui contiennent une liste de
comma-separated-values – par exemple des références
non-numériques.
- \vizHTML{ list of tables }{ list of columns }
-
indique des colonnes qui contiennent du texte HTML
- \vizTeX{ list of tables }{ list of columns }
-
indique des colonnes qui contiennent du texte en LaTeX.
Attention, s'il s'agit d'interpréter de formules mathématiques,
il faut rajouter le $ en début et fin; 2 solutions:
- agrandir la colonne et ajouter les $...
Voir vizSQL
- sans doute préférable, ne ajouter qu'au moment de l'edition
les $ à l'aide de \vizMore, par exemple dans
J/A+A/350/955/.status
- \vizSoft{ list of tables }{ list of columns }
-
indique des colonnes qui contiennent du texte en "soft-tex"
(LaTeX simplifié utilisé conjointement avec NED, par exemple
dans les Abstracts de A&A)
- \vizExplain{ list of tables }{ list of columns }
{ text of explanation }
-
permet de remplacer le texte d'explication d'une ou plusieurs
colonnes par un autre texte.
Voir par exemple II/59B/.Summary,
ou bien Sky2000 V/102/.Summary.
Voir encore les définitions de pas mal de colonnes dans
III/2132/.Summary.
Note 1:
si list of columns est vide, l'explication
se rapporte à la table. Par exemple, pour ancrer une
courbe de lumière à une table, voir
J/A+A/374/204/.status
Note 2:
si une colonne a une note associée, la note est
supprimée à moins que le texte ne commence par *
qui indique de conserver la note
(ex. I/268/.Summary)
Note 3:
si le texte commence par un +, il s'agit d'un
rajout à l'explication existante, comme pour ancrer une
courbe de lumière dans J/A+AS/101/87/.status.
ou encore dans J/A+A/394/505/.status.
Note 4:
des substitutions de texte sont permises, comme pour la macro
\vizObj:
@{@1} est le premier mot,
@{@2-4} est le texte formé des mots
numéro 2 à 4, @{@(2)} le contenu de
la 2ème paire de parenthèses, etc (le @ peut être
remplacé par un $).
Par exemple pour mettre un nom d'objet dans un \objS
pour crééer un lien Simbad,
dans J/A+A/534/A58/.status.
Note 5:
macro \vizQual est une macro permet de donner une
qualification par défaut (valeur de sélection par défaut).
Exemple dans le log ISO
VI/111/.Summary.
Note 6:
macro \linkRole{texte} permet de rajouter
un texte d'explication sur le rôle du lien dans
les résultats de cette colonne, de la même façon
que \vizPKlink ou \vizFKlink.
Par exemple
\vizExplain{+\linkRole{spectroscopic observations}}
Note 7: comme pour \vizComment,
il est possible d'utiliser la macro \iflay
(qui vaut true si le texte est présenté dans
une étiquette) pour des légendes différentes selon
qu'elles sont présentées dans une étiquette (en-tête de
colonne d'une page résultats) ou en explication (page de
présentation d'une table). Exemple pour
J/AJ/135/1766/.status
Note 8: [17-Feb-2014] il est possible
(voire recommandé...) de marquer les noms originaux des
colonnes. La convention est que ce nom original est mis entre
parenthèses dans le ReadMe à la fin des
explications (juste avant la note s'il y en a une), et
de mettre la macro \originalcolumnnames dans les
explications de la table, par exemple
\vizExplain{ * }{ }{+ (\originalcolumnnames) }
Exemple dans J/ApJS/209/22/.status
- \vizSet{ list of tables }
{ list of columns }
{ fmt=... precoo=... decimals=...
pic=...
fm2=...
unit=...
dbunit=... dbtype=...
err=...[arcsec] Ep=... Eq=...
type=... flags... flags&=...
}
-
permet de forcer certaines définitions dans VizieR:
- les formats d'affichage
des résultats dans VizieR sont redéfinis par
fmt=
(extensions existantes
pour le sexagésimal et les chiffres romains).
(les chiffres romains peuvent être interprétés,
exemple dans VII/103/.Summary).
A noter: pour les coordonnées, plutôt que de donner les
formats, il est possible d'utiliser les conventions
de precoo= pour changer la précision d'édition des
coordonnées: par exemple valeur precoo=5 edite
l'ascension droite en 0.1s (format % 011.1A)
et la déclinaison en arcsec (format %+ 09.0a).
- on peut diminuer le nombre décimales par decimals=:
le format (fmt) est alors ajusté en conséquence.
- une picture, essentiellement pour les dates,
lorsque le format dans le ReadMe ne peut pas etre
suffisamment precis: exemple avec des dates
ayant 6 décimales dans le jour dans
J/MNRAS/376/1707/.status
- un format d'interprétation particulier
peut être précisé pour réaligner proprement le
contenu d'une colonne avant interrogation;
ce format précisé par fm2= est stocké dans
la table METAcol, séparé du format par \=.
Par exemple pour une interpretation du numéro Tycho:
voir I/239/.Summary,
attributs des colonnes dans
détails de la colonne TYC;
ou encore le catalogue d'étoiles variables dans
II/250/.Summary.
- les unités utilisées pour
l'affichage (unit) et pour
le stockage des données dans la base
de données (dbunit). Par exemple, si une erreur
est donnée en degres alors que la valeur maximale est
de quelques secondes de degré, on pourra avantageusement
écrire unit=arcsec.
- les types de stockage des données
dans la base de données par dbtype=:
- In pour les entiers:
I1 (nombre sur 1octet) est uniquement positif de 0 a 255;
I2 (nombre sur 2octets) peut prendre toutes les
valeurs entières entre -32768 et +32767;
I4 (nombre sur 4 octets) peut prendre toutes les valeurs
entières entre environ -2,147milliards et +2,147milliards;
I8 (nombre sur 8 octets) pour des valeurs encore
plus grandes.
- Rn pour les valeurs flottantes:
E ou R4 pour les réels 4 bytes
(précision de 6 chiffres significatits),
D ou R8 pour les réels 8 bytes
(précision de 16 chiffres)
- A pour les chaînes de caractères
de longueur fixe,
et a pour les chaînes e caractères
de longueur variable; un suffixe l
indique la caractéristique left-adjusted —
si elle est spéficiée (comme dans
J/A+A/530/A93/.status) les colonnes
correspondantes sont ajustées à gauche
(suppression des blancs précédant le texte).
Un suffixe ! peut également être ajouté pour
tronquer à la longueur spécifiée
(par exemple A1! ne conserve que le 1er
caractère de la chaîne)
A noter l'existence du point d'exclamation (!)
pour désigner une troncature. Plus précisemment:
- i2! (ou i2t)
désigne un short int qui est tronqué
automatiquement: soit il est mis à null (si la
colonne accepte ces valeurs null), soit il est
tronqué à 32767. Cela peut etre utile pour les
magnitudes, par exemple J/ApJS/178/339/.status.
- i4! désigne un entier qui est mis à null
(si la colonne accepte le null) ou à la valeur maximale
admissible 231–1 (par ex. dans le cas de dates qui
sont lointaines dans le futur).
- le type de donnée dans le fichier d'entree peut
être modifié par type=, utilisé typiquement pour
convertir des tableaux de nombre en une chaîne de
caractères; exemple dans I/226/.Summary
où un type 22I1 est converti en A22.
- Cas particulier des date/time:
par défaut, les dates sont stockées de la façon suivante:
- dates simples: en jours juliens (format d'édition:
%10J; les unités sont le jour)
- date/heure avec une précision de l'heure, la minute
ou la seconde: secondes écoulées depuis le 1er
janvier 2000
(format d'édition: %T;
les unités sont la seconde; période couverte:
1940–2060)
- avec une précision supérieure à la seconde:
en jours juliens stockés en double précision
(format d'édition %j, par exemple
%23.9j pour une édition à la
milliseconde)
Ce format par défaut des dates et heures peut être
modifié par exemple par fmt=19t
(date Unix en secondes depuis le 1er janvier 1970),
période couverte 1910–2030;
format d'édition %t, ou bien
par un %19.6j (par exemple pour
exprimer une date en-dehors de la période couverte
par les formats %t et %T).
- les spécifications des positions principales:
- precoo= précision sur les coordonnées:
valeurs 1=degré (°), 3=arcmin (10–2°),
5=arcsec (10–4°), 6=0.1arcsec (10–5°)
7=10mas (10–6°), 8=1mas.
- Ep= (époque de la position)
- Eq= (équinoxe de la position)
- err= (erreur sur la position, peut être
suivie de son unité)
- les
flags des colonnes, qui peuvent être indiqués en
hexadécimal si la valeur commence par 0x;
Par exemple, 0x8000 pour
mettre en couleur les colonnes de
coordonnées du CCDM, voir I/211/.Summary
Les valeurs VO_ définies dans
/home/francois/src/vizier/asu.h
sont également utilisables.
- les champs devant être plutôt à la fin sont indiqués par
atEnd, comme par exemple les liens qui
ne doivent pas être présentés par défault
(exemple dans le GSC, I/220/.Summary
Ce qui suit le signe = peut être mis entre quotes
si nécessaire (lorsqu'il y a des blancs dans la définition).
Un petit problème particulier pour les caractères %
et "
qui doivent toujours être précédés d'un backslash
(\)
Exemple d'un catalogue avec une telle définition:
III/135A/.Summary (HD)
ou bien V/69/.Summary
Exemple pour les conversions de nombres trop grands
(les nombres supérieurs à 1030 posent des problèmes!!):
J/ApJS/92/53/.status
Exemple de nombreuses redéfinitions de formats dans
le IRAS Minor Planets, VII/91/.Summary
Note: \vizSet peut s'appliquer à une colonne
calculée (par exemple un lien). C'est même la seule méthode
pour forcer ou inhiber l'affichage d'un lien: exemple dans
VI/103/.Summary.
La colonne peut également être plus ou moins complètement
redéfinie – voir à cet égard le log Chandra,
B/chandra/.Summary
- \vizSQL{ list of tables }{SQL instructions}
-
indique des opérations particulières à effectuer
pour le chargement des tables dans VizieR. Par exemple, dans
II/59B/.Summary, une colonne contient un
facteur d'échelle pour la valeur des flux:
cette opération de mise à l'échelle
est faite au moment du chargement.
Exemple avec des changements sur de nombreux noms:
J/A+A/409/933/.status
Les conventions d'écriture de ces instructions sont:
- plusieurs instructions SQL sont séparées par le point-virgule
(;)
- l'instruction Update suivie du nom de
la table est ajoutée ou non suivant que le 1er mot
de l'instruction est:
- entièrement en minuscule: ajout de Update
suivi du nom de la table (exemple: set X=0)
- 1ère lettre en Majuscule: le nom de la table est
ajouté (exemple: Delete where X=0)
- entièrement en MAJUSCULES: rien n'est ajouté
(exemple: DUMP TRANSACTION)
- pour désigner les noms de table, utiliser
${.table} qui remplace le nom de table (par ex.
table1) par son nom Sybase (par exemple c1234t1).
${.} représente la table indiquée dans la
macro \\vizSQL. On peut désigner une table d'un autre
catalogue, par ex. ${.I/239/hip_main}
(exemple pour NLTT, I/98A/.Summary)
- pour désigner les noms de colonne, utiliser
${:col} qui remplace le nom de colonne
(par ex. 2MASS) par son nom Sybase
(qui est _MASS). Le nom de colonne d'une
autre table est spécifié par
${:table:col}, par ex.
II/286/.Summary)
- on peut utiliser les backquotes (accent grave `)
pour générer des listes, par ex.
- `list-errata` pour générer une liste
à partir du fichier errata.htx
(ex.: J/MNRAS/418/863/.status)
- `list-col` pour générer une liste
à partir d'une colonne d'une table.
Note 1:
Les % doivent etre précédés par un backslash
(sinon ils sont interprétés comme caractère de commentaire
dans le fichier .status).
Note 2:
L'interprétation de formules mathématiques en TeX
dans les colonnes impose de rajouter les $ manquants.
Pour ce faire, il faut également élargir la largeur de
la colonne par avec \vizSet en ajustant le
paramètre dbtype=.
Exemple J/AZh/81/33/.status.
Note 3: si la commande SQL commence par une
Majuscule, la commande SQL est supposée complète;
sinon, le texte 'Update table_name est
introduit en tête de la commande SQL.
Note 4: il est possible d'inclure un fichier (dans le
cas de commandes nombreuses) en commençant par un point .
(qui n'est pas compris dans le nom du fichier)
par exemple \vizSQL{table}{.file_to_include.sql}
(exemple dans J/ApJS/141/23/.status).
A noter:
- si le fichier mentionné est exécutable,
c'est le résultat de l'exécution de ce fichier qui contient
les commandes SQL à exécuter, comme pour le log FUSE
(B/fuse/.Summary), ou bien l'ajout de liens
vers des postscripts dans J/A+A/438/1163/.status,
ou bien J/A+A/444/365/.status
- si le fichier designé
commence par une esperluette (&) il s'agit
d'un fichier de commande, c.à.d. un
programme script (programme awk
si le fichier se termine par .awk,
sed si le fichier se termine par
.sed, etc...
- si le point est suivi d'un blanc (par exemple
J/A+AS/126/479/.status)
il s'agit d'une commande shell a executer.
Autre exemple où le même script peut être utilisé par
plusieurs tables dans J/AJ/131/2722/.status
Les variables d'environnement suivantes sont accessibles dans
le script:
$tabname (par ex. J/ApJS/141/23/table1),
$theTab (par ex. table1),
et $dbname (par ex. c21410023t1)
- \vizFK{ list of tables }{ list of columns }
-
donne une liste de colonnes qui représentent chacune une
clé externe (foreign key). Cette information permet
à VizieR de transformer cette colonne en ancre sur une
\vizPK.
Note: \vizFK peut également
être utilisé pour indiquer qu'une colonne contient une référence
explicitée dans une table refs.dat, tout comme si le
nom de la colonne était r_label. La seule contrainte
est que le nom de la colonne commence par ref ou Ref.
Exemple dans J/ApJS/155/421/.status
- \vizPK{ list of tables }{ list of columns }
-
donne une liste de colonnes qui représentent chacune une
clé primaire (primary key). Cette information permet
à VizieR de savoir vers quoi diriger les ancres indiquées par
\vizFK
- \vizPFK{ list of tables }{ list of columns }
-
donne une liste de colonnes qui représentent à la fois une
clé primaire et secondaire. Dans ce cas, les liens générés
automatiquement recherchent les tables ayant cette colonne
en clé primaire ou secondaire.
- \vizFKlink{ list of tables }{ list of columns }{ rôle du lien }
-
similaire à \vizFK, mais donne en plus une explication du rôle
du lien (qui n'apparaît que dans les pages de résultat).
- \vizPKlink{ list of tables }{ list of columns }{ rôle du lien }
-
similaire à \PK, mais créé un lien vers les tables ayant
la colonne indiquée en clé externe. Ça créé donc un
lien clé primaire -> clé externe. C'est préférable
à la macro \vizPFK qui ne donne aucune explication.
Example dans J/A+A/476/217/.status
- \vizPFKlink{ list of tables }{ list of columns }{ rôle du lien }
-
similaire à \PK, mais créé un lien vers les tables ayant
la colonne indiquée en clé primaire ou externe. Ça créé donc un
lien clé primaire -> clé primaire+externe
(on a donc un lien sur au moins 2 tables).
Example dans J/ApJ/743/76/.status
Utilitaires pour la vérification des clés:
les 2 scripts colstat et mismatch
permettent de générer une liste des valeurs uniques et
de les vérifier:
- colstat [-o] colonne[s] table...
génère la liste des valeurs uniques d'une table, par ex.
colstat Name,m_Name table1.dat | less
va donner la liste des noms uniques formés par la
concaténation des colonnes [Name et
m_Name], chaque nom étant précédé
de son nombre d'occurences (1 si le nom n'apparait
qu'1 fois dans la table1). Avec l'option –o,
un fichier est créé pour chaque table, par ex.
colstat -o Name,m_Name table*dat*
va créer un fichier pour chaque table (1 pour
table1.dat, 2 pour table2.dat, etc) avec la
liste des contenus des colonnes Name et
m_Name.
- mismatch liste_1 liste_2 | less
compare les 2 listes générées par colstat,
en indiquant les lignes de chacune des listes qui n'est pas
dans l'autre, par exemple
mismatch 1 2
- \vizSimK{ list of tables }{ list of columns }
-
indique les colonnes utilisées pour le lien vers Simbad.
Note: si plusieurs colonnes sont utilisées,
elles sont concaténées.
Exemple dans J/PAZh/24/443/.status.
Avec également des liens vers des catalogues:
J/PASP/109/998/.status.
- \vizCatK{ list of tables }{ list of columns }
-
indique les colonnes utilisées pour un lien vers des autres
catalogues – par exemple J/A+AS/139/69/.status .
Egalement un exemple avec plusieurs liens, incluant Simbad,
dans J/PASP/109/998/.status.
Les définitions des acronymes qui se réfèrent à des
catalogues existant dans VizieR se trouvent dans le fichier
(de format parfile)
/home/cats/bibcat/Dic.par
- \vizMore{ list of tables }{ list of columns }
{ what to generate }
-
permet la génération d'un texte quelconque (et donc d'une
ancre) pour une colonne. Le contenu du 3ème paramètre
utilise un petit langage codé dans
/home/francois/src/vizier/vizout.c. Ce language
contient du texte, et des références possibles aux élements
de la table ou du catalogue sous la forme générale
${[=][*|**|***]désignation_colonne[subfield_spec]}.
- le signe = demande d'écrire la colonne sous la forme:
\htarg{arg=valeur}
(voir par exemple pour NTT, dans
I/98A/.Summary)
- l'astérisque * demande un squeeze des blancs
(remplacement des blancs multiples par 1 seul blanc,
suppression des blancs initiaux et finaux; par exemple
' 123 4 ' devient
'123 4'
- le double astérisque ** demande de supprimer les blancs
finaux uniquement (TAIL TRIM); par exemple
' 123 4 ' devient
' 123 4'
- le triple astérisque *** demande de supprimer tous
les blancs; par exemple
' 123 4 ' devient
'1234'
- Les valeurs de désignation_colonne sont:
- soit rien, qui représente le
contenu de la colonne courante:
${}.
La colonne courante avec squeeze des blancs
sera indiquée par ${*},
sans ses blancs finaux (TAIL TRIM)
sera indiquée par ${**},
et sans aucun blanc par ${***},
La colonne éditée en nombre décimal
sera indiquée par ${%d}.
- soit le nom d'une colonne existante dans la
table, par exemple
${Vmag}
qui représente le contenu de la colonne
de label Vmag
- soit $col pour indiquer le nom
de la colonne courante
- soit ...$col... qui représente le
contenu de la colonne dont le nom est la
concaténation d'un préfixe, du nom de la
colonne courante, et d'un suffixe.
Par exemple ${l_$col}
exprime le contenu de la colonne l_mag
si la colonne courante est mag.
Ainsi si la colonne courante est mag,
l'expression l_${$col}
contient l_mag,
tandis que ${l_$col}
contient le contenu de la colonne
l_mag. Attention, il faut alors prendre
soin d'indiquer que la colonne
${l_$col} doit être
sélectionnée avec un
\vizSet{...}{...}{... flags|=VO_OSELECT}
- soit $more pour indiquer le lien associé
à la colonne courante
- soit $notid pour indiquer le numéro de note
associée (0 quand il n'y a pas de note)
- soit $note pour le lien vers la note associée;
ça peut servir pour les cas où on veut
contrôler les cas où le lien vers la note
doit être fait, par ex. I/315/.Summary
- soit $ucd pour indiquer l'UCD de
la colonne courante; $ucdx désigne
l'explication de l'UCD
- soit $fam pour indiquer l'UCD dont le
numéro se trouve en contenu de la colonne
courante; $famx désigne
l'explication relative à l'UCD
- soit $cat pour indiquer le nom
du catalogue courant
- soit $tab pour indiquer le nom complet
de la table courante, par ex. J/A+A/371/579/table1
- soit $dbtab pour indiquer le nom système
de la table courante, par ex. c33710579t1
- soit $catab pour indiquer le nom avec /./
de la table courante, par ex.
J/A+A/371/579/./table1
(le /./ sépare le catalogue de la table)
- soit $file pour indiquer le nom de fichier
associé aux objects (cf vizObj)
- soit $table pour indiquer le nom
de la table courante (e.g. table2)
- soit $catid pour indiquer le numéro
du catalogue courant
- soit $tabid pour indiquer le numéro
de la table courante dans le catalogue
- soit $pos pour récupérer la position
(α,δ en degrés)
- soit $posglu pour récupérer la position
et son type, suivant les conventions GLU;
- soit $poseq pour récupérer la position
et son équinoxe, suivant les conventions
ASU.
- soit #n pour désigner un numéro de
colonne (la colonne numéro 0 est en principe le
recno); les opérations arithmétiques sont
possibles. Exemple dans
J/A+A/412/495/.status, ou
J/AJ/146/39/.status. Attention, le #
a un statut particulier dans le protocole http, il
faut qu'il soit converti en argument, ce qui
nécessite de l'écrire \htarg{#}
- soit $PK pour indiquer la colonne qui contient
la primary key de la table courante
- soit enfin le nom d'une variable d'environment
sous la forme ${$=nom_var}.
L'utilité est de permettre de rajouter dans une
ancre des paramètres complémentaires,
par exemple pour SPECFIND (VIII/85/.Summary)
qui permet de rajouter des points supplémentaires sur le
tracé du SED: voir exemple des GPS,
J/A+A/489/49/.status.
- le subfield_spec permet de prendre des extraits
d'une colonne, sous la forme
$[sep_char]n1–[n2][z]
- le $, obligatoire, indique le début du
subfield_spec
- le sep_char est un caractère (qui ne
peut pas être numérique) utilisé comme
séparateur dans la recherche de sous-champs.
Si aucun séparateur n'est spécifié,
l'extrait est fait en prenant les bytes.
À noter:
- si le sep_char est l'un des
caractères de parenthèse ou crochet
ouvrant (([{<>}])), on prend le texte
jusqu'à la parenthèse fermante correspondante.
- si le sep_char est ? (point
d'interrogation) il s'agit d'un menu de substitution
sous la forme
?text=remplacement
par exemple
?C=Cluster?F=field?unknown
c.à.d. si le contenu du champ est C celui-ci
est remplacé par Cluster, par field
s'il est F, ou bien remplacé par unknown
si le champ n'est ni C ni F.
- n1–[n2] indique les limites du sous-champ.
- z est une lettre qui indique certaines
transformations possibles, qui peuvent etre:
z demande de transformer les blancs en zéros
b demande de transformer les zéros non
significatifs (les zeros situés à gauche)
en blancs.
Par exemple, ${Vmag$2-}
représente la colonne Vmag, en sautant son
premier caractère.
Note 0: le $ peut être remplacé par un @
ou un accent grave `, pour améliorer la
lisibilité dans les éditeurs vim.
Note 1: quand le 3ème argument
what to generate commence par un –,
il représente le paramètre de l'ancre, i.e.
\vMore{what to generate}{${}}
Note 2: la macro peut s'appliquer sur la table
(colonne vide)
comme dans J/A+A/415/123/.status – elle indique
alors comment générer l'ancre vers les données
détaillées de chaque ligne.
Note 3: la macro peut s'appliquer sur le catalogue
lorsque la liste des tables et des colonnes est vide. Dans ce
cas, il s'agit d'une association entre un fichier décrit dans la
liste des Objects: et un programme de visualisation –
comme dans J/A+A/417/515/.status
Note 4: la macro peut s'appliquer de façon conditionnelle,
par exemple avec la macro \Vphase (qui vaut
4, 5 ou 6 pour les pages résultats),
exemple avec des images qui peuvent être présentées dans
J/A+A/461/11/.status
Un certain nombre de macros peuvent être utiles en conjonction
avec ces générations d'ancres:
- liste de references même alphanumériques,
sont interprétables grâce à par =, (si le
séparateur est une virgule), voir par exemple
J/ApJS/126/133/.status
- \htarg{ } : convertir un argument aux normes
HTML (remplacement des blancs et caractères particuliers
par %xx)
- \sed{s/reg-exp/remplacement/[g]}
{argument_à_convertir}
Permet des substitutions de textes en utilisant les conventions
de sed:
- dans la 1ère accolade, le caractère /
peut être remplacé par un autre caractère qui
n'apparait pas le texte, par exemple le !
- la reg-exp peut contenir du texte à
"mettre en mémoire" à l'aide des marqueurs
\( et \); ainsi
\([1-9][0-9]*\) "isole" un nombre,
qui peut être référencé dans la 2ème accolade
par \1, \2 ... (il peut y avoir
jusqu'à 9 "mémoires")
- dans le remplacement, le backslash doit être
doublé (\\).
- le g facultatif indique un remplacement
"global" (toutes les occurences trouvées); par défaut
seule la 1ère est effectuée.
Permet par exemple de convertir les références entre
entre parenthèses (numériques ou non)
dans un texte en liens sur les références par
\sed{s!(\([^()]*\))![\\vRef{-source=@{@cat}/refs\&Ref=\1}{(\1)}!g}{@{}}
Voir exemples dans
II/219/.Summary (référence entre crochets),
ou bien dans les références de
J/A+AS/139/277/.status.
Egalement la transformation du R dans les notes
en un lien vers les remarques dans
III/227/.Summary
Exemples de catalogue avec une telle définition:
- Macro \vizContent qui sert à préciser
le type de données que l'on peut se récupérer
par le lien — typiquement
vizContent{image/fits}, HST achive dans
B/hst/.Summary
Les types actuellement acceptés sont
- cube: cube/fits
- image: image/fits, image/gif, etc
- spectrum: spectrum, spectrum/fits
- profile: profils de galaxies, radiosources
- timeSerie: timeSerie, timeSerie/fits
- model: evolutionary tracks, etc
- filter: filter characteristics
À noter: \tabContent peut être utilisé
à la place de \vizContent si le lien
ne fonctionne pas (c'est une simple info).
- Macro \vizTitle qui sert de label pour le
titre du bouton correspondant dans Aladin,
typiquement pour les archives d'images.
Exemples dans le log HST ou Chandra,
B/hst/.Summary ou
B/chandra/.Summary;
pour des images associées au catalogue, par ex. SCUBA
J/ApJS/175/277/.status.
- Macro \vizText qui permet de donner un
texte au lien (utilise dans VOTable et asu-xml).
Est utilisé typiquement pour des indications de copyright,
mais pas uniquement pour ça.
Exemple dans
B/hst/.Summary
pour les Associations WFPC2.
A noter que cette macro peut inclure un \inputViz
si le texte est long, tout comme la macro \vizComment.
- Macro \W{name}{url}{texte}
qui va ouvrir une ancre dans une fenêtre de nom name
(dans une nouvelle fenêtre si le nom est vide ou
réduit à l'underscore (_), ou
dans une pop-up si name est écrit
_ξxη où ξ et
η représentent une taille en pixels de la
fenêtre à ouvrir, par ex.
_640x480)
Quelques conventions utilisées pour les names:
- image pour une image
(FITS par exemple)
- archive pour l'interrogation
d'une archive distante
- ext pour l'interrogation
d'une base de données extérieure
- LC pour la présentation d'une courbe
de lumière
- Macro \aW{name}{url}{texte}
qui permet d'accéder à une ancre extérieure dans une
fenêtre auxiliaire de nom name.
A noter que la hauteur de la fenêtre extérieure peut
être précisée par la syntaxe de name qui
s'écrit (nom)_(larg)x(haut)
(underscore suivi des dimensions de la fenêtre en pixels).
Une nouvelle fenêtre est choisie si name est vide
ou commence par un underscore pour préciser les
dimensions de la fenêtre pop-up.
L'écriture dans la fenêtre pop-up des notes
se fait par
\aW{wNote}{url}{texte}.
Si l'on veut par exemple ajouter les traits entre les
colonnes pour une table de notes, on peut utiliser cette
macro au lieu de \vNote, cf
J/A+A/473/995/.status: il faut remplacer
\vNote{...} par
\aW{wNote}{VizieR?-6N&...}
Exemple d'utilisation: visualisation des images png
associées à un catalogue dans des pop-ups,
J/A+A/474/891/.status.
On peut également utiliser la macro \vPop
\vPop{asu-params}{texte}
qui fait une interrogation dans une nouvelle
fenêtre pop-up; méthode utile pour pouvoir comparer
des résultats qui viennent de lignes différentes,
exemple dans J/ApJ/665/369/.status
- Macro \vPop{asu_qualification}{texte}
Ecriture dans une fenêtre pop-up d'une interrogation
à VizieR. L'URL commence en principe par
-source=... qui choisit le type d'interrogation
-6N (related data). Ce choix par défaut
peut être modifié, en commençant la qualification
par -5N (affichage détaillé) ou autre.
- Macro \yCom permet d'afficher des commentaires
quand on passe la souris sur le texte. La macro s'écrit
\yCom{commentaire}{${}}
Exemple d'utilisation: valeurs particulières de redshift
donnent lieu à une explication dans
J/AJ/117/102/.status
- La macro \Ion{@{}} donne une explication des
colonnes contenant des noms d'ions entre les formes
numériques et ``astronomique'' – par exemple le
fer ionisé une fois s'écrit FeII pour les
astronomes, et 26.01 sous forme numérique,
par ex. J/A+A/489/1255/.status.
La macro \ionZ permet la transformation des noms
des ions entre ces écritures ``astronomique'' et
``numérique'' (mais sans transformation en lien).
Exemple de l'utilité d'unbe telle transformation
dans J/A+A/480/79/.status, ou une table
contient l'écriture ``astronomique'' et l'autre
l'écriture ``numérique''; autre exemple dans
dans J/AZh/84/997/.status.
- Macro \object ou \objS pour un lien vers
Simbad. Par exemple
\object{${}}
pour un lien vers Simbad si la colonne contient
un nom interprétable par Simbad, ou bien
\objS{HD${}}{${}}
si une colonne contient un numéro HD.
- Macro \showFlag qui permet d'expliquer un
flag (défini par des puissances de 2).
Par exemple l'explication d'un flag de Sextractor
se fait par
\showFlag{Sextractor}{@{}}
(par ex. J/A+A/488/533/.status)
qui va chercher l'explication des flags dans
le fichier /usr/httpd/Pages/VizieR/js/Sextractor.htx.
Des définitions peuvent également se trouver
dans un répertoire de catalogue si le 1er argument
indique un catalogue, par ex.
IX/1/.Summary qui appelle les définitions
de IX/1/flags.htx; avec les flags en hexa:
II/253A/.Summary qui appelle les définitions
de II/253A/phflags.htx
Il est même possible d'associer des flags (ou ensembles
de flags) à une fonction Javascript: exemple de
GLIMPSE qui récupère le code qualité 2MASS,
cf II/293/qflags.htx.
Il y a 3 variantes de \showFlag suivant la façon
dont le flag est édité:
- \showFlag qui suppose
une édition décimale
- \showXflag qui suppose une
édition hexadécimale
- \showSflag qui suppose une
édition en string hexadécimale
(pour les flags en 64 bits, comme SDSS)
- Macro
\Aglu{tag_glu paramètres...}{texte}
permet d'appeler des services (extérieurs ou intérieurs) définis dans le GLU
(les tag_glu possibles sont décrits dans le fichier
/home/cds/glu/glu.dic; une façon plus conviviale
de retrouver ces tags consiste à utiliser le
GLU Browser).
Attention, si un paramètre contient un ou des blancs,
il faut le mettre entre quotes, par ex.
\Aglu{WEBDA.cl "NGC @{*NGC}"}{@{}}
Pour une ouverture dans une pop-up, il existe la macro
\Wglu{_dim_xxdim_y}{tag_glu paramètres...}{texte}
Pour le lien SDSS par position, utiliser
\Aglu{SDSS.pos @{@posglu}}{@{}}
(exemple dans J/AJ/130/1097/.status);
pour le lien SDSS par plate-MJD-fiber, utiliser
\Aglu{SDSS.sp3,w @{plate} @{MJD} @{Fiber}}{@{}}
(exemple dans J/ApJ/662/15/.status);
et pour le lien par objID, utiliser
\Aglu{SDSS.id,w @{objID}}{@{}}
(exemple dans J/ApJS/196/11/.status).
- Macro \SPECFIND pour un tracé radio de SED.
Pour le trace d'un point sur le
spectre radio de SPECFIND (Cat. VIII/85), utiliser
\SPECFIND{-c=${$pos},rs=..}{nu=..&S=..+/-..}{${}}
(exemple dans le VLSS VIII/79A/.Summary).
Autre exemple des GPS dans J/A+A/489/49/.status,
dans J/AZh/84/227/.status;
on peut préciser l'unité (GHz
pour la fréquence au lieu du défaut (MHz);
on peut préciser l'unité (Jy au lieu
du défaut (mJy), cf
J/ApJS/170/108/.status.
Avec \SPECFIND on peut utiliser un script qui va
rechercher des fréquences et des flux, par exemple
- Macro
\vExec{program}{${$cat}}{
arguments_à_program}{{${}}}
permet d'exécuter le programme program,
situé dans le directory du catalogue.
Pour présenter le résultat dans une fenêtre auxiliaire,
utiliser la macro
\xW{window_name}{program}{cat}{
args}{{${}}}
(pour le tracé de graphes, des macros simplifiées
existent: \vGraph équivalent à \vExec{Vgraph}
et \wGraph pour un tracé dans une pop-up).
Pour une présentation dans la fenêtre des notes, utiliser
wNote comme valeur de name,
ou bien utiliser directement \xNote
à la place de \vExec.
Quelques exemples:
- lien vers la page Images+Spectres
du MASH dans J/MNRAS/412/223/.status
- édition d'un nombre hexadécimal représentant
une chaîne de bits pour IRIS
(J/A+A/390/717/.status), pour
DENIS (B/denis/.Summary),
pour OGLE (J/AcA/52/129/.status);
dans ces exemples, utilisation d'un script Perl .xnote
(gawk ne connait pas les opérateurs logiques), exemple
J/AcA/52/129/.xnote
- autre exemple, calcul de variables d'un modèle
de temperature/ionisation dans J/A+A/466/771/.status;
- édition des notes+références dans
Cedarabad VII/231/.Summary.
- des explications de type d'objets (Perl) dans
V/113/.Summary et
- les types d'interactions
de galaxies dans VV (VII/236/.Summary,
- les flags particuliers de UCAC3
(I/315/.Summary,
script dans I/315/.catflg).
- l'utilisation
de nombres premiers pour définir un flag dans
J/ApJS/144/47/.status – mais si, ça existe!
- liste de spectrophotométrie dans
III/201/.Summary
(Pulkovo Spectrophotometry),
avec le programme qui liste les flux en
fonction de la longueur d'onde dans
III/201/getsp .
- d'autres catalogues de spectrophotométrie
utilisent la même méthode, par exemple
III/208/.Summary (programme
III/208/getsp) ou
J/A+AS/92/1/.status ((programme
J/A+AS/92/1/getsp)
De même dans III/40/.Summary,
ou TD1 spectrophotometrie dans II/86/.Summary,
qui utilise le recno.
- Listage des flux dans un modèle d'atmosphères:
voir J/A+AS/125/229/.status
- Listage de coefficients de limb-darkening dans
J/A+AS/135/555/.status, avec le programme
J/A+AS/135/555/getmod.
- Exemple de récupération de références dans
I/226/.Summary.
- Exemple de tracé de CMD (color-magnitude diagram)
pour des tables: un simple programme de 2 lignes
J/A+A/500/1027/.show
- Exemple de lister des images GIFs représentant l'introduction
du catalogue AC2000.2:
I/275/.Summary qui utilise
le programme I/275/.show
- Exemple de recherce des spectres de 2QZ en Australie
pour les tracer dans une table, avec liens vers les
fichiers PostScript et FITS.
Note: si le nom du programme contient
nph- l'execution est immediate,
comme pour les scripts apache. Exemple du script
qui permet de récupérer des gros fichiers avec traduction
de FITS en ASCII, dans
VI/120/.nph-list
- Il est également possible de tracer des graphes,
par exemple les Low Resolution Plots d'IRAS.
Ainsi, pour
LRS de IRAS 00001+4826:
Une méthode systématique pour le tracé de plots
consiste à créer un fichier .graph dans
le directory du catalogue – voir
détails sur la méthode .graph
, avec une
liste d'exemples.
- Macro
\vExec{Vgrep}{${$cat}}{
arguments_à_Vgrep}{{${}}}
qui permet d'exécuter le programme
/usr/httpd/bin/Vgrep, qui extrait des lignes ou
des paragraphes d'un fichier, ou ajoute un marqueur
pour indiquer à quelle position le fichier doit
se positionner.
sh: 1: Vgrep: not found
Voir exemple dans
IX/15/.Summary (EMSS)
pour l'édition de paragraphes,
ou encore l'édition immédiate d'un fichier
de notes en LaTeX dans
J/A+AS/126/479/.status,
ou l'édition des lignes indentées dans le
catalogue CO, VII/139/.Summary.
Autre exemple (recherche dans le ReadMe) pour
J/A+A/489/217/.status.
Peut être bien utile pour l'édition de notes écrites
en latex ou en HTX; voir par exemple le catalogue III/170:
Noter dans le fichier III/170B/notes.htx
le test sur \env{PATH_INFO} qui permet se savoir
dans qeual cas on se trouve – pour mettre ou pas un
lien sur l'étoile ayant une note.
Le programme Vgrep est lui-même appelable à partir
d'un script: voir exemple de
J/A+A/412/707/.get2 (défini dans
J/A+A/412/707/.status), qui transforme
les références entre crochets par une ancre vers
une fenêtre Javascript avec les bibcodes etc.
Faut-il envisager de mettre
systématiquement les définitions de \vRef
dans la sortie de \vExec ?
- Macro
\aFile{nom_du_fichier}{texte}:
ancre vers un fichier du service Catalogues.
Contrairement à \vFile, aucune
transformation n'est possible; la seule opération
est une décompression si le fichier est
compressé (utilisation de nph-Cat)
Note: nph-Cat permet de retrouver
un fichier extérieur au service catalogue, s'il existe dans le
répertoire du catalogue un fichier exécutable .url
qui fournit sur son standard output l'url du
fichier à partir de son nom. Exemple pour récupérer des images de
spectre sur le web: J/ApJS/193/28/.url.
- Macro
\pFile{dim}{nom_du_fichier}{texte}:
similaire à \aFile, mais le résultat est mis
dans une fenêtre pop-up dont le nom ou la dimension est
mis en 1er argument. Exemple dans
J/ApJS/193/28/.status
- Macro
\yFile{texte_étiquette}{nom_du_fichier}{texte}:
ancre vers un fichier du service Catalogues,
avec étiquette explicative.
Cette macro est similaire à \aFile,
elle a seulement cette possibilité d'étiquetage
du lien.
- Macro
\vFile{[-source=]nom_du_fichier}{{${}}}:
ancre vers ftp://cdsarc.cds.unistra.fr/pub/cats/fichier.
Par exemple: J/ApJS/110/213/.status.
Le lien peut se faire par le biais d'un programme
de $Vroot/cgi/link si le nom de fichier commence
par link/, par exemple
\vFile{link/elodie\&-fits\&HD225097}
(voir dans J/MNRAS/371/879/.status,
ou encore dans J/A+A/480/91/.status).
Elodie peut égalemnt tracer des spectres,
avec l'option-plot, cf J/A+A/489/923/.status.
Un /./ peut être nécessaire
pour séparer le catalogue du nom de fichier, par
exemple dans
J/A+A/363/1051/.status
-source= est facultatif; quand il
est présent, le fichier doit être décrit
dans le ReadMe, l'édition se faisant alors
en fonction de la description du catalogue.
\vFile convertit le Postscript pour
les fichiers *.ps. La conversion se fait par
ghostscript, mais certains postscripts
(en particulier celui généré par IDL)
ne sont pas interprétables par ghostscript.
Dans ce cas, utiliser un 2àme argument badPS,
comme dans J/A+A/376/982/.status
\vFile peut également générer des
extraits de fichiers postscript, comme par
example dans J/A+A/383/188/.status:
il faut faire suivre le nom de fichier de : avec la
page, éventuellement suivi d'un autre : qui indique
un offset de page (par exemple conversion de numero de figure
en numéro de page).
\vFile peut également avoir un 2ème
argument -c= qui précise la position sur le
ciel de l'image: ceci permet de générer une ancre vers
AladinJava, comme c'est le cas pour
J/A+A/378/30/.status
\vFile peut également avoir un 2ème
argument -rot= qui donne une rotation éventuelle
de l'image (exemple pour catalog of open cluster data
J/A+A/438/1163/.status) et pour des images png:
J/A+A/493/1099/.status.
\vFile génère des spectres
dans le cas de fichiers FITS: exemple dans
le III/217/.Summary.
Les paramètres utilisés sont ceux du programme graph.
Pour avoir les options de Adapt Plot
(pouvoir changer les axes et les tailles), utiliser
un argument graph, exemple dans
J/A+AS/117/93/.status
Exemple typique:
\vizMore{ table1 }{ FITSfile }{ \vizContent{spectrum/fits}\vFile{${$cat}/./sp/${*}\&graph\&-X '\*l [\oA]'}{${}}}
\vFile génère aussi des spectres pour des
fichiers .dat, il suffit de rajouter un 2ème argument
\&graph, exemple dans
III/143/.Summary
\wFile est une macro similaire, mais
qui présente le résultat dans une petit fenêtre auxiliaire;
elle a 3 arguments:
\wFile{
window_name}{nom_du_fichier}{text}
(voir paramètres de fenêtres)
À titre d'exemple, edition des courbes des occultations
des satellites de Jupiter dans
J/A+A/493/1099/.status
- Macro
\vMore{arguments_à_VizieR}{{${}}}:
par exemple dans VI/90/.Summary,
ou encore lien CCDM->annex1 dans HIC,
I/196/.Summary;
l'exemple du NTT dans I/98A/.Summary.
Un lien conditionnel d'une table sur elle-même existe
également dans un catalogue de Reed, voir
J/ApJS/115/271/.status
Noter que \wMore existe également, qui met le résultat
dans une fenêtre de nom More.
Enfin il existe \yMore et \yMORE qui présentent
en plus une "étiquette" quand on passe la souris dessus;
\yMore a 3 arguments, le 1er étant le texte qui
apparait lorsque la souris passe sur le lien, le 2eme
et le 3eme étant les mêmes que les 1er et 2eme arguments
de \vMore ou \wMore. Par exemple dans
J/AJ/131/2274/.status.
\yNote existe également, elle est utilisée
pour tous les titres des colonnes dans les résultats de
VizieR, mais attention l'ordre des arguments est différent:
\yMore{condition}{${}}{texte-étiquette};
voir exemple combiné note vers une table / note vers une
footnote dans B/wds/.Summary.
Note: pour faire un lien vers plusieurs
objets de VizieR par position, \vMore peut inclure
une liste de positions — par exemple des paires
de galaxies su SDSS dans J/MNRAS/390/383/.status.
- Macro
\vSim{arguments_à_VizieR}{{${}}}:
pour un lien vers un catalogue similaire
\CatK (appel de VizieR-S). \wSim
a une action similaire, mais met le résultat dans une
fenêtre de nom More.
- Macro
\vRef{arguments_à_VizieR}{{${}}}:
similaire a \vMore, mais pour une édition de
référence (dans une petite fenêtre auxiliaire).
Même possibilité avec \vNote pour d'édition
d'une note.
- Avec un lien sur le catalogue des PNe V/84
dans J/A+AS/125/289/.status
- Avec un lien glu pour le catalogue FIRST:
VIII/48/.Summary
- Macro
\vMORE{arguments_à_VizieR}{{${}}}:
à la différence de \vMore, \vMORE
donne une page détaillée, avec tous les parameètres
(appel de VizieR-5).
Exemple d'un lien sur le HR dans
III/77/.Summary;
autre exemple d'un lien sur
une étoile Hipparcos dans un papier de M.O. Menessier
J/A+A/326/722/.status.
Ou encore un lien sur IRAS à partir d'un sous-ensemble
de la colonne IRAS dans J/A+AS/104/315/.status
Et, pourquoi pas, un lien vers le catalogue d'étoiles C
de Stephenson dans J/A+A/332/L53/.status
Le lien vers Hipparcos du TCR (Tycho Reference Catalog)
dans I/250/.Summary est un autre exemple.
Il peut être nécessaire d'utiliser l'option -corr
pour choisir les tables pour lesquelles la colonne
existe (-corr=name=...), voir par exemple dans
J/ApJ/760/86
ou J/A+AS/132/13/.status.
- Avec une execution distante pour trouver si un
numéro Hipparcos se trouve dans la liste des Errata:
utilisation de \exec{! wwwget -strip ...}
Devrait pouvoir avantageusement être remplacé dans le futur
par \include{http://...}
(exemple dans I/239/.Summary) –
utiliser l'étoile HIP 114110 .
- arguments_à_VizieR suit les
règles asu, qui sont détaillées dans la
notice d'interrogation de vizier
vizquery.
- \vizPosition{ Table }{ }
{ name=... *name=...
*vizSim...
source=
fmt=... error=...
precoo=... precRA=... precDE=...
null=... |
proj=... scale=... CD=...
c=... x=... y=...
mag=...
PA= Eq=... Ep=...
x0=... y0=...
c.r=...
refmag=... refcat=...
ref*=
WCS= }
{ Explanations }
-
permet de spécifier l'erreur (σ) sur la position, et/ou
de calculer des positions _RA et _DE,
ou simplement de préciser la precision (en arcsec par défault)
des positions.
(Voir liste des catalogues à problèmes
pour lesquels le calcul des positions n'a pas pu être fait).
- soit à partir de SIMBAD si l'option
*vizSimbad ou
*name est présente.
- *name:
la position équatoriale
(degrés décimaux ou sexagésimal)
ou bien un nom
compréhensibles par Simbad,
se trouvent dans un fichier dont le nom est donné
(par exemple *name=table1.sim).
Le nombre de lignes de ce fichier doit normalement
égaler celui du fichier à charger; il est toutefois
possible de mettre des lignes de commentaires
commençant par #, et d'ajouter un commentaire dans
chaque ligne en le faisant précéder du point-virgule ;
Exemple dans
J/ApJ/504/27/.status
ou J/AZh/78/675/.status
Note 1: nom générique possible pour le
fichier, par exemple *.pos comme dans
J/ApJS/142/153/.status
Note 2: si le fichier designé
commence par une esperluette (&) il s'agit
d'un fichier de commande, c.à.d. un
programme script (programme awk
si le fichier se termine par .awk,
sed si le fichier se termine par
.sed, etc...
Note 3: si le fichier designé est
exécutable
(comme dans J/ApJ/619/270/.status,
script de calcul des positions dans
/ftp/cats/J/ApJ/619/270/compute_pos,
ou J/ApJ/647/13/.status ou
J/ApJS/190/203/.status)
alors le fichier est exécuté pour obtenir les
positions (Remarque: les variables
d'environnement catid,
theCat, theTab
et theFile
sont définies avant d'appeler les programmes)
Autre exemple: utilisation d'une table de VizieR
pour mettre les positions à l'aide du programme
asu et d'un script awk, cf
J/A+A/446/19/.status, ou encore
J/A+A/478/507/.status.
C'est également plus efficace que l'option
source=... dans le cas des
gros catalogues (exemple avec findkic dans
J/ApJS/199/30/.getKIC).
Exemple d'un script de calcul de
position à partir d'une position et d'un
offset:
#!/bin/sh
# Calcul des coordonnees a partir de
# $1 = nom IRAS dont la position est dans la table1
# (coordonnees en bytes 12-33 de la table1)
# $2 = multiplicity component
# $3 = oRA, offset en arcsec
# $4 = oDE, offset en arcsec
cat $theTab | gawk 'BEGIN{ PI=4.*atan2(1.,1.0);
cmd = "fcat table1.dat | astropos -c12-33 -4d J J " ;
while((cmd | getline)>0) {
i=index($0, ";"); split(substr($0,i+1), a);
RA[$1] = a[1]; DE[$1] = a[2]
}}
{
dra = $3/cos(DE[$1]*PI/180.)/3600.;
dde = $4/3600.;
printf "%8.4f %+08.4f ; %s %+d %+d\n", RA[$1]+dra, DE[$1]+dde, $1, $3, $4;
}'
Script J/ApJS/122/51:
#!/bin/sh
# How to compute
test -z "$theFile" && theFile="$1"
tabmap -data -tsv "Cl oRA oDE" $theFile | gawk -f /usr/local/too/coolib.awk --source 'BEGIN{FS = "\t";
get_cl = "fcat table2.dat | acut -c2-11 -c40-59";
print "#..." get_cl;
while ((get_cl|getline)>0) P[substr($0,1,10)] = substr($0,11)}
{ radec(P[$1], o); s[1]=o[1]; s[2]=o[2]; osep(o,$2,$3);
printf "%08.4f%+08.4f ; %s %s%s%s\n", o[1],o[2], $1,P[$1],$2,$3}'
- *vizSimbad:
Il faut dans ce cas que la façon de construire
un nom compréhensible par Simbad soit précisé par
\vizSimbad (ou à la rigueur par \vizSimK)
Exemple dans J/A+A/363/239/.status
ou dans J/AJ/120/2638/.status.
L'option null= permet d'accepter les cas d'etoiles
sans position – en mettant a NULL les positions
dont la précision est inférieure à la limite (échelle
de 1 à 8 pour degré ⟶ mas, en passant par 5 pour arcsec)
Note: Si certaines identifications
ne sont pas compréhensibles par simbad, il est possible
d'en corriger quelques-unes en faisant
suivre *vizSimbad par un =, qui précise les noms
à changer:
- soit dans un fichier avec
*vizSimbad=file_name
- soit directement si *vizSimbad= est à la fin
d'une ligne.
Exemple dans J/A+A/417/651/.status.
Le paramètre precoo= précise la précision
des coordonnées à conserver (défault = 6 = 0.1arcsec);
les paramètres precRA= et precDE=
permettent de spécifier les précisions individuellement
sur RA et Dec.
- soit à partir de NED avec l'option *vizNED
(semblable à l'option *vizSimbad)
- soit à partir d'une table de VizieR avec l'option
source= qui indique la table de VizieR qui contient
les coordonnees. Il faut en plus préciser quel est
l'identifiant dans cette table qui permet de retrouver les
positions.
Exemple dans J/MNRAS/345/1/.status
ou dans J/A+A/423/469/.status
Note: pour les gros catalogues ça risque
d'être lent; pour convertir numero objID du SDSS en
position, c'est plus rapide avec le programme findsdss7,
par ex. J/ApJS/196/11/.status qui récupère les
positions avec le script
J/ApJS/196/11/sdss7pos
Ou bien à partir des identifications spectroscopic SDSS
(plate-MJD-fiber) avec findsdss-sp, par ex.
pour J/ApJS/186/427 (version SDSS-DR7):
tabmap -map '@{*spID}' table2.dat | findsdss-sp -7 -f -
Pour la version la plus récente, ne pas spécifier de
version, par ex.
tabmap -data "P-M-F" table.dat | findsdss-sp -
si la table contient une colonne intitulée P-M-F
avec l'identification spectro, ou encore
tabmap -data -map '@{*Plate}-@{MJD}-@{*Fiber}' table.dat | findsdss-sp -
si la table contient les 3 colonnes intitulées
Plate, MJD et Fiber.
- soit à partir d'un nom UAI, si l'option
name=colonne_name est présente,
exemple dans
J/A+A/363/62/.status
(à noter que le format n'est pas obligatoire,
il est recherché dans les explications de la colonne
désignée par name= sinon).
L'option null= est également applicable.
(exemple dans J/A+A/370/78/.status).
Dans le format, la lettre f
indique une fraction, par exemple HHMMf
pour des dixièmes de minutes.
Exemple aussi pour le WDS:
J/A+A/396/933/.status.
Note 1: marche aussi avec les coordonnées galactiques,
par exemple J/A+A/417/107/.status.
Note 2: un nom commençant par B ou J
implique une équinoxe, et la précession correspondante
est appliquée. Ceci permet de convertir des noms en position
lorsque les noms peuvent impliquer les 2 équinoxes
(exemple dans J/AJ/123/2402/.status
pour la table4)
Note 3: la colonne nom UAI doit exister
(i.e. ne peut être une colonne calculée).
Il est toutefois possible d'utiliser le même fichier
pour ajouter à la fois une colonne contenant un nom UAI
et les coordonnees, cf J/ApJS/201/23/.status,
et le fichier sdsst3 qui contient les noms.
- soit à partir d'étoiles de référence,
si l'option ref*= est présente, exemple dans
J/A+A/371/908/.status ou
J/A+A/381/884/.status.
Les étoiles utilisables pour la calibration astrométrique
doivent être données à raison d'une par ligne, avec
un signe = pour séparer la position (α,δ)
de la donnée (x,y); la ligne peut contenir des
commentaires précédés de % ou # ou ;
Un nombre minimal de 8 étoiles
de référence est nécessaire.
Les étoiles de référence peuvent être contenues dans un
fichiers si ref*= est suivi d'un nom de fichier.
A noter le programme getxy qui permet
de transformer une liste du type
ID: RA Dec
dans le format RA Dec = Xpos Ypos .
Pour l'utilisation de getxy, il faut préciser
les colonnes contenant l'ID, et les colonnes positions
x et y:
getxy
table [ID=Seq] [x=Xpos] [y=Ypos] [Eq=J2000] [file]
- soit à partir d'une recherche automatisée
d'étoiles de référence dans un catalogue astrométrique fiable
(UCAC2 = Cat. I/289 dans l'optique,
2MASS = Cat. II/246 dans l'infra-rouge proche).
Les informations nécessaires doivent comprendre
le centre (c=...),
le rayon ou la boîte de recherche (c.r=...),
les colonnes contenant les
(x,y) (x=... y=...) et les
magnitudes (mag=...),
la colonne de magnitudes à utiliser dans le catalogue standard
(tabmag=...),
et enfin le nom du catalogue de référence (refcat=...).
La méthode cherche
maximaliser le nombre de coïncidences entre les
objets de la table et ceux du catalogue de référence,
il est donc important que les objets de la
table et du catalogue de référence possèdent des magnitudes,
de préférence dans le même domaine de longueur d'onde.
Un exemple est donné dans
J/ApJ/628/729/.status.
Les valeurs par défaut des paramètres sont
c.rm=7.5,
refmag=*PHOT*
(soit UCmag dans l'UCAC2, Jmag dans 2MASS).
Ces calculs peuvent aussi être exécutés par le programme
xypos:
Usage: xypos ucac2|ucac4|2mass|tycho2|usnoa|usnob|gsc2.3|ppm..|refcat=..
[-dc] [-p] c=centre [scale=...] [x=Xcol] [y=Ycol] mag=[Mcol] [ep=Epoch]
[score=min] [sigma=...] [discard=...] [-f-] [-filter program] table|file
Defauts are x=Xpos|1 y=Ypos|2 mag=Vmag|3 refmag=*PHOT*
-dc: use c as delimiter in input file (TSV or CSV input)
-p: print the correspondances ( RA Dec = x y)
discard: retry after removing the outliers at ...sigma (e.g. 5)
-f-: data are given in standard input, structured as 'table'
-filter: filter out the (x,y) input list, e.g. via a grep
table: name of the table described in ReadMe;
|file: input is a TSV or CSV (delimiter required with -d)
Usage: ccd [-v] [-p] [-t=#] [-f RaDec_file | refcat=... refmag=... ]
[scale=min,max] [score=min] [sigma=min,max] [-c=...] [-c.r[b]=...]
[-ep=...] [-mag[=2]] [-discard[=...]] [asu-constraints...] [xy_file]
Find the position of sources defined by (x,y) pairs. 2 modes of reduction:
1. From a list of reference sources, i.e. sources having RA, Dec, X and Y.
This is the default mode (neither '-f' nor 'refcat' argument.
The reference stars are specified as a list:
RA Dec = x y ; mag and comments
in the 'xy_file' (default is the standard input)
Lines missing the '=' sign are assumed to contain only X and Y --
the positions are computed for these lines.
2. From a list of positions (RA,Dec), either given in a file specified by the
-f argument (-f - indicates the standard input), or retrieved from some
reference catalog (refcat specified, e.g. refcat=I/322 for UCAC4).
The list of (x,y) pairs for which the position
is given in the
input file (-f argument, default=stdin); this list is separated from the
(RA,Dec) list by a blank line. A header line may precede the (x,y) list,
to specify the columns (X Y mag and Vmag, Rmag, etc are recognized).
In this option:
- the (x,y) pairs are assumed to be ordered by increasing magnitude;
(only when the header line is not given in the input)
- refmag specifies which magnitude to use in refcat (leftmost mag)
- the center of the field (-c=) is required.
- the optional scale or scale range is in arcsec/pix.
- the optional score gives the minimal score expected
- the optional sigma gives the maximal sigma expected, in arcsec/pix
- t specifies the number of reference positions and (x,y) pairs to examine
- the other options represent ASU constraints to specify the radius (-c.r)
or box (-c.b), the equinox (-c.eq=), the max. number of reference stars
(-out.max), or catalog-specific constraints (otype='*')
Options:
-v: verbose option (details of tentative identifications)
-f: the list of corresponding sources is in a file (default stdin).
-p: print out the correspondances ( RA Dec = x y)
-t: maximal number of points to use in the test phase (default 36)
-mag: specifies the column with a magnitude, if any (separator=semi-colon)
-discard: specifies threshold (in sigma) of points to discard (4.5)
If the -f option is absent, the list of reference positions is given in the
standard input, and is terminated by a blank line. Lines following this blank
line are assumed to contain just (x,y) pairs for which positions are computed
Example of a full program to compare a table with the UCAC2 (I/289) catalog:
tabmap -ascii -data -map 'Xpos Ypos ; Vmag' table.dat | sort -n -t -k 2 | ccd refcat=I/289 -c=236.51433-37.78614
- soit
à partir de colonnes donnant un x et un y,
d'un centre specifié par c=,
avec
- soit la matrice CD (par exemple dans
V/27/.Summary, qui exprime les transformations
de pixels en angles exprimés en radians
— diffère donc du WCS qui utilise les
degrés)
- soit une échelle scale (en radians/pix
par défaut; écrire l'unité sinon, par ex.
scale=0.346arcsec/pix)
et un angle de rotation PA qui indique la position
de l'axe y par rapport au Nord
(par défaut égal à zéro, c.à.d. x croissant vers
l'Est et y croissant vers le Nord)
- soit encore l'utilisation des paramètres WCS
comme dans J/A+A/351/526/.status;
les paramètres WCS sont ceux qui peuvent être obtenus par
Aladin.
Example avec concaténation de plusieurs tables,
chacune faisant partie d'un amas:
if faut individualiser chaque table par un make_viz
(exemple pour J/MNRAS/417/1559), puis préciser les CDs
de chaque table (J/MNRAS/417/1559/.status)
- si des colonnes
donnent un x et un y à partir d'un centre
qui peut être défini pour chaque ligne, il devient possible de
calculer les positions. Exemple typique: offsets de SNe par rapport au
centre d'une galaxie, qand le nom ou la position de la galaxie
est donnée dans une colonne.
La façon de spécifier ce centre variable se fait par *c= qui
utilise des conventions similaires à la macro \vizAddColumn:
- soit en précisant le nom de la colonne contenant la
position du centre (ou son nom, alors résolu par Simbad);
par exemple si la colonne Galaxy contient le nom
de la galaxie centrale, on pourra écrire:
*c=Galaxy x=oRA y=oDE Eq=J2000
- soit la position du centre se trouve dans une autre table
(du même catalogue ou d'un catalogue existant
dans VizieR): il faut alors préciser ce centre sous
la forme *c=table:colonne,
par exemple les clumps dans des nuages
J/ApJ/698/324/.status.
Pour un centre donné par un numéro Hipparcos,
il est possible d'écrire *c=I/311/hip2:HIP
- soit la position du centre est donnée sous forme
d'une liste d'alternatives, lorsque
les positions commencent par une virgule ,
(exemple dans J/A+A/532/A147/.status)
- soit la position du centre est donnée dans une liste
provenant d'un fichier ou d'une commande
si les positions commencent par un point .
- soit un choix d'une position alternative
avec
\vizPosition{ Table }{ colonnes_position }
{ }{ }
comme par exemple le choix de la coordonnée galactique plutôt
que la coordinnée équatoriale dans II/190/.Summary
Noter que la deuxième accolade doit être vide,
et que la 4ème accolade peut être vide – un texte par
défaut est alors pris.
Mais attention, le paramètre Eq=
doit être présent!!
Exemple pour J/AJ/116/1757/.status, ou bien encore
dans J/ApJ/505/50/.status
Exemple avec x0 et y0 précisés dans
J/AJ/117/1313
Par défaut, proj= prend la valeur tan. Les
autres valeurs possibles sont tan2 (stg)
sin sin2 zea arc (schmidt)
aitoff gls mercator lambert
tsc qsc
Le label peut être négatif, auquel cas la direction est
changée de sens (voir par exemple VII/42A/.Summary)
TODO: "Merge" de tables avec chacune
une solution différente pour calculer les positions ne
fonctionne pas; par exemple il faudrait pouvoir fusionner
les tables donnant la photométrie dans J/A+A/507/1375
(J/A+A/507/1375/.status)
- \vizSimbadName{ Table }
{[±colOrder] Fichier ou Script }
-
Permet de rajouter dans la table une colonne qui contient
une identification compréhensible par Simbad.
Contrairement à la macro \vizSimbad,
\vizSimbadName créé une colonne de plus dans la table,
et la remplit avec l'aide d'un vizSimbadName.
L'argument facultatif ±colOrder permet de préciser où
installer le lien (juste avant ou juste après la colonne
colOrder).
Exemple dans J/AJ/123/3356/.status.
Pour l'installation à partir d'un script awk, qui transforme
les identifications, voir dans
J/ApJ/365/471/.status –
le caractère | situé en début indique que la commande
s'applique sur le fichier courant.
A noter que la variable theTab est
remplie avant l'appel au script, ce qui est une autre méthode
pour utiliser la table courante – exemple dans
J/ApJ/620/1010/.status
Pour ne remplacer que quelques identifications incorrectes,
à l'aide d'un petit script J/AJ/128/1177/.status
Note 1: le signe égal (=) peut être
utilisé pour séparer dans chaque ligne le nom à garder
de commentaires éventuels, ex.
J/AJ/133/2222/.status (fichier table1.sim)
Note 2: il est possible de modifier l'affichage
du lien Simbad par la macro \vizMore:
par exemple si certains objets ne sont pas encore dans
Simbad les éditer en grisé (colour grey50) comme pour
J/AJ/133/715/.status.
Note 3: il est possible de fixer la taille
de la colonne SimbadName par \vizSet si la taille
par défaut de la colonne n'est pas correcte (la taille est
estimée à celle de l'identificateur le plus long).
Exemple dans J/A+A/528/A48/.status.
- \vizLink{ Table }{ column_label [+/-column]}{ column_contents }
{ Link_generation }
{Explanations }
-
permet de générer des liens quelconques,
en créant une colonne ``virtuelle'' de nom column_label,
placée juste avant ou juste après column (à la fin par défaut),
dont le contenu est constant et vaut ``column_contents''.
Le titre de la colonne peut aussi être donné par le
premier mot des explications (si ce premier mot se termine
par un double-point) s'il n'est pas défini (lorsque la
deuxième accolade est vide); par défaut le titre vaut ``Link''.
Exemple pour liens vers les images de l'archive HST, voir
B/hst/.Summary
Voir exemple lien vers catalogue externe de Green
VII/211/.Summary
ou bien la récupération de la table de spectrophotométrie
dans III/126/.Summary.
Lien vers ACT dans J/A+AS/136/531/.status
Egalement lien vers les observations des mesures de Tobins,
dans J/MNRAS/304/733/.status
Lien vers Simbad dans J/A+AS/137/113/.status
Lien vers WDS dans J/A+AS/139/69/.status
Lien vers FIRST dans J/AJ/118/1435/.status
Lien vers TASS dans II/230/.Summary
Tracé de spectres synthétiques:
J/A+AS/126/267/.status
Insertion d'images:
Dans la "Detailed page" (phase 5), il est possible
d'insérer des images ou le résultat de plot, avec l'aide
de la macro \ignore{-5=.3c \img{...}{...}},
qui permet d'afficher une page 5 particulière.
Les conventions sont les suivantes:
- le premier mot (.3c dans l'exemple)
indique que les 4 colonnes de l'édition détaillée
sont remplacées ainsi: la colonne de gauche (représentée
par le point) reste inchangée, les 3 colonnes suivantes
sont regroupées avec centrage.
Note: une couleur peut éventuellement
être ajoutée, par ex.
\ignore{-5=.3C\bgmore ...}
- le 2eme mot indique ce qu'il faut mettre dans ces
colonnes regroupées, ici une image (macro \img)
avec comme arguments la source de l'image et le
texte de remplacement.
Dans l'exemple de J/A+A/474/891/.status,
la source de l'image est ${$more${2}},
ce qui demande de prendre le 2ème argument entre accolades
du lien associé a la colonne. Un exemple similaire dans
J/A+A/501/539/.status avec des images radio.
Encore plus fort: dans ce catalogue la combinaison
\Vimg{@{@cat}/\sed{s/.*,//}{@{@more@{3}}}}
pour ne conserver que la 2eme image de celles données dans
la 3eme accolade du more.
Autre exemple d'une image pop-up en page4, et image insérée
dans la page 5: J/AJ/136/2136/.status.
À noter l'utilisation de \pFile pour l'image
en pop-up.
Si les images sont petites, il est possible de les
insérer dans la page de résultats (macros \image
ou \Vimage) par exemple
J/A+A/481/123/.status.
3 macros sont utilisables pour la génération d'images
reliées à VizieR:
- \Vimage{ ... } (1 seul argument): ... doit être
remplacé par le fichier complet de l'image
- \Vimg{ ... }{ alt} (2 arguments);
le 2ème alt argument est le texte
qui remplace éventuellement l'image
et qui apparaît dans une bulle
- \VIMG{ ... }{ alt}{opt} (3 arguments);
le 3ème argument opt optien des options
éventuelles (cadrages, épaisseur des bords, etc)
Exemple de présentation de 2 images par un click dans
J/A+A/501/539/.status, qui appelle
J/A+A/501/539/show_images.
Création d'icônes: pour mise dans une table,
il est suggéré de créer des icônes pour illustrer,
sans les axes, et en images suffisament petites
(40pix de hauteur). Pour réaliser une telle icône à partir
du programme graph, prendre les arguments
plotarg=" -f 0.05 -g 0 -h 1.0 -w 1.0 -u 0.0 -r 0.0 -m 1"
(pour un trait continu).
Comme exemples:
- \vizLinkToNote{ Table } { list of columns }
-
Demande de construire un lien depuis la colonne vers la note
associée, pour pouvoir présenter les explications relatives
à une note ou un flag.
Ce lien est fait automatiquement
à partir des colonnes représentant une référence (r_xxx),
ou un flag (f_xxx), et il n'est donc pas nécessaire
de l'indiquer dans ce cas. Ce lien est également généré
lorsque le texte de la note contient le mot ``magique''
follow, suivi d'une énumération de cas.
Exemple dans J/A+A/427/107/.status,
Règle pour le lien:
- si la colonne est alphabétique, le lien
n'est fait que si la colonne n'est pas vide
(forcément!)
- si la colonne est numérique, le lien est
fait pour les valeurs non nulles (donc le
0 n'a pas de lien). Si toutefois une
valeur null est permise (avec un ?)
le lien de la valeur 0 est bien fait.
(par exemple J/A+A/534/A110/.status)
- \vizNoLink{ Table } { list of columns }
-
Demande de ne pas construire de lien depuis la colonne
vers la note associée.
- \vizSimbad{ Table }
{[±colOrder] Comment Construire }
-
Permet d'utiliser des champs quelconques dans une table,
exemple dans J/A+AS/139/29/.status,
ou bien dans II/227/.Summary.
Avec des transformations d'expressions régulières, voir
J/A+A/369/527/.status.
L'argument facultatif ±colOrder permet de préciser où
installer le lien (juste avant ou juste après la colonne
colOrder).
- \vizNED{ Table }
{[±colOrder] Comment Construire }
-
Permet d'utiliser des champs quelconques dans une table
pour construire un lien vers NED.
Exemple dans J/A+A/422/941/.status.
L'argument facultatif ±colOrder permet de préciser où
installer le lien.
- \vizNEDname{ Table }
{[±colOrder] Fichier ou Script }
-
Permet de rajouter une colonne contnant un nom compréhensible par
NED. Similaire à \vizSimbadName.
- \vizLEDA{ Table }
{[±colOrder] Comment Construire }
-
Permet d'utiliser des champs quelconques dans une table
pour construire un lien vers la base LEDA.
Exemple dans J/A+A/422/941/.status.
L'argument facultatif ±colOrder permet de préciser où
installer le lien.
- \vizVizier{ Table } { [±colOrder]
Comment Construire }
-
Permet d'utiliser des champs quelconques dans une table,
pour générer un lien vers les données originales contenues
dans VizieR à partir d'un identificateur (appel à
VizieR-S). Exemple (IRAS) dans
J/A+AS/129/87/.status
Autre exemple, lien amas Abell dans
J/ApJS/130/237/.status
- \vizUCD{ list of tables }{ list of columns }
{ Additions for UCDs}
-
Permet d'assigner correctement les UCDs (UCD1 et UCD1+)
(Unified Column Descriptors) calculé à partir
du contenu en label, unité et explications.
Les possibilités pour les additions sont:
- soit un UCD (UCD1 ou UCD1+) assigné directement si
précédé par un =, par exemple =ID_MAIN ou
=meta.bib. A noter que dans l'écriture
des UCD1, on peut remplacer l'underscore (_)
par un point (.) pour avoir des textes plus lisibles.
- soit par un texte qui est pris en compte pour l'assignation
de l'UCD, au même titre que les explications du
ReadMe – par exemple en ajoutant
Johnson ou
notspecific
pour précisier le système de magnitudes.
- il est possible de supprimer ou remplacer la prise en compte de
l'unité (!u) ou du label (!l):
- suppression: par exemple
\vizUCD{table}{col}{!l Absolute magnitude}
supprime l'utilisation du label pour assigner l'UCD,
et ajoute les mots Absolute magnitude
pour aider à l'assignation
- remplacement: par exemple
\vizUCD{table}{col}{!l=f_data}
indique que le label pourrait être plutôt
désigné sous le nom f_data pour
son classement.
Par exemple VIII/64/.Summary
- \vizFilter{ list of tables }{ list of columns }
{[ photometric system:filter | *wavelength_column | - - - ]}
-
La définition du système photométrique
et éventuellement le filtre dans ce système
peut être indiqué par cette macro
(le : sépare le système du filter)
par ex. pour le système EIS
(J/A+A/379/740/.status)
Pour indiquer qu'un flux (ou magnitude) correspond à une
longueur d'onde (ou une fréquence): indiquer le nom de la
colonne correspondante par * suivi du nom de colonne.
Par exemple: J/PASJ/62/273/.status.
Les tirets --- indiquent que la colonne doit être
ignorée pour le tracé de SED (exemple dans
J/ApJS/206/10/.status, où la magnitude
limite est malencontreusement considérée comme un flux
possible)
La liste des systèmes photométriques et filtres
se trouve dans la table
METAphot.
- \viztime{ table }{ column }{ system=... | frame=... | scale=... | offset=... | uncertainty=... | flags=... }
-
La définition s'applique à une colonne de temps:
- system: le nom du système tel qu'il existe dans la table METAtimeSystem. Le système regroupe frame+scale. (Lorsque le frame ou le scale n'est pas présent, l'incertitude liée à l'absence du le système est exprimée par une erreur systèmatique).
- frame: la position de référence telle qu'elle existe dans la table METAtimeFrameRef(ex: BARYCENTER, HELIOCENTER, GEOCENTER, ...)
Le programme vérifie lors de l'ingestion la compatibilité scale+frame.
- scale: le nom de l'echelle de temps telle qu'elle existe dans la table METAtimeScaleRef (ex: TT, TAI, TDB, UTC, ...).
Le programme vérifie lors de l'ingestion la compatibilité scale+frame.
- offset: offset exprimé en jours depuis la date de référence.
- uncertainty: erreur de mesure général sur la table (en secondes)
- flags: flag additionel - ex: START , END
- rep: itime representation (ex: JD,ISO)
Exemple: I/345 META
, I/345 .Summary
Détection automatique à partir de la description des colonnes dans le ReadMe :
- détection d'une colonne temps de temps à partir du nom de la colonne
(Date, Time, Epoch, *JD*) et si l'unité est de type 'd' ou 's' ou 'JD' ou 'datime' ou 'Y-M-D,h:m:s'
- détection de l'offset et du scale dans la description de la colonne ou dans des parentheèses dans la description de la colonne.
Exemple:
- colonne name BJD (scale=BARYCENTRIC, representation JD)
- HJD-2400000 (scale=HELIOCENTRIC, representation JD, offset=2400000)
- MJD (representation=MJD)
- etc
Exemple J/AJ/155/119
- \viztimeRel{ table }{ column }{ table }{ column }
-
La définition s'applique aux colonnes qui sont liées à une colonne de temps (définie avec la macro \viztime).
L'idée est d'indiquer l'axe des ordonnés dans un plot de séries temporelles.
Les premiers paramètres table column définissent la colonne qui peut être utilisée pour l'axe des ordonnés.
Les paramètres table column suivant définissent la colonne temporelle.
Exemple: I/345 META
, I/345 .Summary
- \vizEpncore{granule_gid=.. | target_name=.. | target_region=.. | target_class=.. | ...}
-
Voir EPN description.
Exemple:
J/ApJ/775/121 .status
Permet de créer un nouveau catalogue: créer son répertoire, et
mettre en place les fichiers associés:
Avant d'insérer le catalogue dans vizier, il faut le mettre public.
Ça se fait avec la commande
qui met dans vizier le catalogue
correspondant au répertoire dans lequel on se trouve.
par ex. si l'on se trouve dans le répertoire du vieux
catalogue, utiliser
make_obsolete . nouveau_catalogue
L'arborescence de ce sous-directory est similaire à ce qui se trouve
sur la machine vizier, dans le répertoire /usr/httpd. Il y a toutefois
un certain nombre de fichiers inportants à configurer:
Ce répertoire permet de cloner les fichiers modifiés depuis l'appel
précédent; son ossature se trouve dans /usr/clones/skel.tar.gz.
Pour générer un nouveau répertoire de clone:
Ce répertoire est destiné a sauvaegarder les logs d'exécution
des requêtes sur le clone. Copier les fichiers d'un autre répertoire
semblable, et faire les petites modifications qui s'imposent.