Lister un en-tête seg-d au format sps S et X.

segd_sx

Accueil

Journal de mission
Course à pied
Ski de randonnée
Alpinisme
Voile
Ecrits
Diaporamas

Programmation

Carnet des invités

Accueil > Programmation > segd_sx.

Lister un en-tête seg-d au format sps S et X.

But

Problème connu au Géoland : les fichiers SPS ou RAW du labo sont manquants, perdus ou indisponibles. Voici comment retirer les informations S et X directement des en-tête de fichier seg-d.

Note : Programme implémenté pour moins de 10,000 canaux seulement à ce jour (version 1.0).

Méthode

Spécifier en arguments un nom de fichier seg-d et (balise -f), accessoirement, un degré de verbosité (balise -v). Exemple;

lxuser@nasstor01:/mnt/data1/SEGD> segd_sx.pl
Usage: /usr/local/bin/segd_sx.pl -f tape/record.segd [ -v verboselevel ]
lxuser@nasstor01:/mnt/data1/SEGD> segd_sx.pl -f tape7010/00203149.segd -v 1

Principe

On éditera d'abord et une fois pour toute la durée de la mission, les paramètres de longueur d'enregistrement (rl) et échantillonnage (si) dans l'en-tête du programme;

my ( $rl, $si ) = ( 6000, 2 );

Exemples d'exécution

Niveau 0 ; L'information de base seule est présentée;

lxuser@nasstor01:/mnt/data1/SEGD> segd_sx.pl -f tape7010/00208982.segd -v 0
tape 7010, record 208982, line 5207.00, point 2336.00, index 2, nb X lines 47, nb traces 3734

Niveau 1 ; Idem, avec une présentation des S et X. Le record de cet exemple, enregistré sur 18 lignes réceptrices, présente de multiples passages de mono à dual-sensor et inversement.

lxuser@nasstor01:/mnt/data1/SEGD> segd_sx.pl -f 00208982.segd -v 1
tape 7010, record 208982, line 5207.00, point 2336.00, index 2, nb X lines 47, nb traces 3734
S   5207.00   2336.00  2                                               269022959
X  7010  20898211   5207.00   2336.002    1  1551   5150.00   2217.00   2371.001
X  7010  20898211   5207.00   2336.002  156  1852   5150.00   2372.00   2386.001
X  7010  20898211   5207.00   2336.002  186  2231   5150.00   2387.00   2424.001
X  7010  20898211   5207.00   2336.002  224  3781   5166.00   2217.00   2371.001
X  7010  20898211   5207.00   2336.002  379  4082   5166.00   2372.00   2386.001
X  7010  20898211   5207.00   2336.002  409  4441   5166.00   2387.00   2422.001
X  7010  20898211   5207.00   2336.002  445  4562   5166.00   2423.00   2428.001
X  7010  20898211   5207.00   2336.002  457  6111   5182.00   2217.00   2371.001
X  7010  20898211   5207.00   2336.002  612  6412   5182.00   2372.00   2386.001
X  7010  20898211   5207.00   2336.002  642  6771   5182.00   2387.00   2422.001
X  7010  20898211   5207.00   2336.002  678  6992   5182.00   2423.00   2433.001
X  7010  20898211   5207.00   2336.002  700  8061   5198.00   2217.00   2323.001
X  7010  20898211   5207.00   2336.002  807  9262   5198.00   2324.00   2383.001
X  7010  20898211   5207.00   2336.002  927  9691   5198.00   2384.00   2426.001
X  7010  20898211   5207.00   2336.002  970  9912   5198.00   2427.00   2437.001
X  7010  20898211   5207.00   2336.002  992 10891   5214.00   2217.00   2314.001
X  7010  20898211   5207.00   2336.002 1090 12212   5214.00   2315.00   2380.001
X  7010  20898211   5207.00   2336.002 1222 12671   5214.00   2381.00   2426.001
X  7010  20898211   5207.00   2336.002 1268 12992   5214.00   2427.00   2442.001
X  7010  20898211   5207.00   2336.002 1300 13851   5230.00   2217.00   2302.001
X  7010  20898211   5207.00   2336.002 1386 15352   5230.00   2303.00   2377.001
X  7010  20898211   5207.00   2336.002 1536 15841   5230.00   2378.00   2426.001
X  7010  20898211   5207.00   2336.002 1585 16242   5230.00   2427.00   2446.001
X  7010  20898211   5207.00   2336.002 1625 17071   5246.00   2217.00   2299.001
X  7010  20898211   5207.00   2336.002 1708 18872   5246.00   2300.00   2389.001
X  7010  20898211   5207.00   2336.002 1888 19281   5246.00   2390.00   2430.001
X  7010  20898211   5207.00   2336.002 1929 19722   5246.00   2431.00   2452.001
X  7010  20898211   5207.00   2336.002 1973 20551   5262.00   2217.00   2299.001
X  7010  20898211   5207.00   2336.002 2056 22352   5262.00   2300.00   2389.001
X  7010  20898211   5207.00   2336.002 2236 22771   5262.00   2390.00   2431.001
X  7010  20898211   5207.00   2336.002 2278 23252   5262.00   2432.00   2455.001
X  7010  20898211   5207.00   2336.002 2326 24081   5278.00   2217.00   2299.001
X  7010  20898211   5207.00   2336.002 2409 25882   5278.00   2300.00   2389.001
X  7010  20898211   5207.00   2336.002 2589 26331   5278.00   2390.00   2434.001
X  7010  20898211   5207.00   2336.002 2634 26772   5278.00   2435.00   2456.001
X  7010  20898211   5207.00   2336.002 2678 27601   5294.00   2217.00   2299.001
X  7010  20898211   5207.00   2336.002 2761 29402   5294.00   2300.00   2389.001
X  7010  20898211   5207.00   2336.002 2941 29891   5294.00   2390.00   2438.001
X  7010  20898211   5207.00   2336.002 2990 30252   5294.00   2439.00   2456.001
X  7010  20898211   5207.00   2336.002 3026 31081   5310.00   2217.00   2299.001
X  7010  20898211   5207.00   2336.002 3109 32882   5310.00   2300.00   2389.001
X  7010  20898211   5207.00   2336.002 3289 33371   5310.00   2390.00   2438.001
X  7010  20898211   5207.00   2336.002 3338 33732   5310.00   2439.00   2456.001
X  7010  20898211   5207.00   2336.002 3374 34411   5326.00   2217.00   2284.001
X  7010  20898211   5207.00   2336.002 3442 36512   5326.00   2285.00   2389.001
X  7010  20898211   5207.00   2336.002 3652 37051   5326.00   2390.00   2443.001
X  7010  20898211   5207.00   2336.002 3706 37312   5326.00   2444.00   2456.001

Niveau 2 ; idem, mais avec en plus l'information de numéro boitier pour chacun des récepteurs. Ceci peut être très utile pour qui enquête sur un éventuel décalage de canaux terrains (boitier détour soudainement inséré dans le spread, déroulage en trop soudainement supprimé, etc).

lxuser@nasstor01:/mnt/data1/SEGD> segd_sx.pl -f 00208982.segd -v 1
....(etc)
     ChNb     RlNb     RpNb     Rdex     SuSn
        1     5150     2217        1  2183547
        2     5150     2218        1  2190926
        3     5150     2219        1  1620718
        4     5150     2220        1  2197128
        5     5150     2221        1  2161848
        6     5150     2222        1  1632108
        7     5150     2223        1  2178687
        8     5150     2224        1  1718358
        9     5150     2225        1  1702026
       10     5150     2226        1  1721765
       11     5150     2227        1  1713878
       12     5150     2228        1  1606915
...(etc)

Téléchargement

  • segd_sx.pl : Clic droit, "save as", sauvegarder ainsi la cible du lien en tant que segd_sx.pl, rendre exécutable et placer dans le $path, typiquement sous /usr/local/bin, sur une machine de type nasstor ou xw84ptN. Licence: GPL.

    Suggestions

  • Insérer la commande à l'intérieur d'une boucle pour obtenir les S et X de multiples records. On peut écrire par exemple, pour les records entre 203985 et 203999 du répertoire courant;
    #!/bin/bash
    while [ $rec -lt 204000 ] ; do
       segd=`printf "%08d.segd" $rec`
       segd_sx.pl -f $segd -v2 | awk '/^[SX]/' >> file.sx01
       printf "%s\n" $segd
       rec=$[rec+1]
    done
    awk '/^S/' file.sx01 > file.s01
    awk '/^X/' file.sx01 > file.x01

    A faire

  • Retirer le numéro de canal depuis l'extended header, de façon à pouvoir traiter les fichiers de plus de 10,000 canaux.
  •  

    Haut de page

    Tous droits réservés © 2003-2006 Gaétan Martineau