Ground Penetrating Radar <=> Seismic Unix

(an idea?)

by Luca Baradello


Index - Indice

  1. Introduction - Introduzione
  1. Import Ramac data - Importare dati Ramac
  1. Setting common offset geometry - Creare una geometria common offset
  2. Setting cdp geometry - Creare una geometria su cdp
  3. Setting warr geometry - Creare una geometria su warr
  4. Geometry check - Controllo sulla geometria

Introduction - Introduzione

    Introduction

Seismic Unix is a big software! Why? Because behind SU there is a very strong scientific staff! Another little thing that SU is: it's FREE!!!! SU is not only a seismic package, it can be usefull to process a lot of kind of data. Why not georadar? In these pages you can find the little examples.

To obtain and install SU go to web site of CWP (Center for Wave Phenomena) and follow the link.

I use SU on Linux system (Mandrake).

I shall wait for your notes.

Thanks to SU community (especially John Stockwell).

    Introduzione

Seismic Unix è un grande software!. Perchè? Semplicemente perchè è fatto e testato da un validissimo staff di specialisti. Ma la cosa più importante è che è assolutamente GRATIS!!!! SU non è solo sismico, ma può essere usato anche per elaborare altri tipi di dati. E perchè non georadar? In queste pagine puoi trovare degli esempi.

Per scaricare SU e capire come installarlo (non è difficile) vai al sito della CWP (Center for Wave Phenomena) e segui il link.

Io lo uso su piattaforma linux (Mandrake).

Aspetto contributi e commenti.

Ringrazio la comunità SU ..speriamo che non molli mai!

 

Back to index - Ritorna all'indice

Import Ramac data - Importare dati Ramac

    Import Ramac data

Principally Ramac data are composed by two file:

Data are 16 integer little endian format. If you use a Linux-PC you can import them with a bash script like this:

FILEi=$1

if [ ! -f $FILEi".rd3" ] ;

    then echo "$FILE: no data file"

    exit 1

fi

if [ ! -f $FILEi".rad" ] ;

    then echo "$FILE: no headers file"

    exit 1

fi

echo "I will import file "$FILEi".rd3"

ns=`awk -F: ' NR==1 {print $NF } ' $FILEi".rad" `

echo " Samples = " $ns

freq=`awk -F: ' NR==2 {print $NF} ' $FILEi".rad" `

sr=` echo $freq | awk ' {print 1000 / ($1)}'`

dt=` echo $freq | awk ' {print 1000000 / ($1)}'`

echo " Sample rate = " $sr "nanosec"

recast in=short out=float < $FILEi".rd3" | suaddhead ns=$ns | sushw key=dt a=$dt >$FILEi".su"

echo "I created " $FILEi".su" "from " $FILEi".rd3"

When have run this job you'll have a new SU file.

If you use a big endian machine (es. Sun) before recast command you MUST swap data with swapbytes <$FILEi".rd3" in=short

You need AWK.

    Importare dati Ramac

I dati Ramac sono composti da due file:

I dati sono nel formato a 16 bit interi little endian. Se usi un PC con Linux (altamente consigliato) tu puoi importarli facilmente con uno script su una shell bash di questo tipo:

FILEi=$1

if [ ! -f $FILEi".rd3" ] ;

    then echo "$FILE: nessun file di dati"

    exit 1

fi

if [ ! -f $FILEi".rad" ] ;

    then echo "$FILE: nessun file di headers"

    exit 1

fi

echo "Ti importerò il  file "$FILEi".rd3"

ns=`awk -F: ' NR==1 {print $NF } ' $FILEi".rad" `

echo " Campioni = " $ns

freq=`awk -F: ' NR==2 {print $NF} ' $FILEi".rad" `

sr=` echo $freq | awk ' {print 1000 / ($1)}'`

dt=` echo $freq | awk ' {print 1000000 / ($1)}'`

echo " Campionamento = " $sr "nanosec"

recast in=short out=float < $FILEi".rd3" | suaddhead ns=$ns | sushw key=dt a=$dt >$FILEi".su"

echo "Ho creato " $FILEi".su" "da " $FILEi".rd3"

Dopo ti trovi nella stessa directory un nuovo file SU.

Se tu usi una macchina a big endian (es. Sun) prima del recast DEVI girare i dati con swapbytes <$FILEi".rd3" in=short

Il tutto funziona con AWK installato.

 

Back to index - Ritorna all'indice

Setting common offset geometry - Geometria in dati common offset 

    Setting common offset geometry

The first processing step must be setting data geometry. Setting geometry means to allot every traces the information (transmitter and receiver position, offset, cdp number, ...). Usually we have singlefold profile. In this case we know only the offset and transmitter position, then we can run a SU job like this (example with offset=70cm and transmitter position=100cm with increment=10cm):

#! /bin/sh

sushw <$1 key=offset,sx,tracr a=70,100,1 b=0,10,1 | suchw key1=gx,cdp key2=offset,sx key3=sx,gx a=0,0 b=1,1 c=1,1 d=1,2 > $2

use job file.su file_geo.su

When have run this job you'll have a new SU file with this geometry:

  offset sx gx cdp tracr
1° trace 70 100 170 135 1
n trace 70 100+(n-1)10 170+(n-1)10 135+(n-1)10 n

We can verify it with suxedit.

    Crea la geometria nei dati

La prima cosa da fare nei dati è creare la geometria, cioè applicare i parametri spaziali (posizione del trasmettitore e del ricevitore, ...) alle singole tracce. Di solito si hanno sezioni a singlefold. In questo caso un job SU job di questo tipo può andare bene (esempio con offset=70cm e posizione della sorgente=100cm con incremento di=10cm):

#! /bin/sh

sushw <$1 key=offset,sx,tracr a=70,100,1 b=0,10,1 | suchw key1=gx,cdp key2=offset,sx key3=sx,gx a=0,0 b=1,1 c=1,1 d=1,2 > $2

usa job file.su file_geo.su

Dopo aver lanciato questo job si avrà un nuovo file SU con questa geometria:

  offset sx gx cdp tracr
1° trace 70 100 170 135 1
n trace 70 100+(n-1)10 170+(n-1)10 135+(n-1)10 n

Si verifica il tutto con suxedit.

 

Back to index - Ritorna all'indice

Setting cdp geometry - Geometria su cdp

    Setting cdp geometry

If you collect cdp data you know only cdp and offset headers. You can run a SU job like this (example with minimum offset=20cm with increment=10cm and cdp=100):

#! /bin/sh

sushw <$1 key=offset,cdp,tracr a=20,100,1 b=10,0,1 | suchw key1=gx,sx key2=cdp,cdp key3=offset,offset a=0,0 b=1,1 c=-0.5,0.5 d=1,1  > $2

use job file.su file_geo.su

When have run this job you'll have a new SU file with this geometry:

  offset sx gx cdp tracr
1° trace 20 90 110 100 1
n trace 20+(n-1)*10 100-(n+1)*5 100+(n+1)*5 100 n

We can verify it with suxedit.

    Crea la geometria nei dati cdp

Se acquisisci dati cdp conosci solo i valori dei cdp e degli offset. Puoi usare un job SU di questo tipo (esempio con offset minimo=20cm ed incremento di=10cm e cdp=100):

#! /bin/sh

sushw <$1 key=offset,cdp,tracr a=20,100,1 b=10,0,1 | suchw key1=gx,sx key2=cdp,cdp key3=offset,offset a=0,0 b=1,1 c=-0.5,0.5 d=1,1  > $2

digita job file.su file_geo.su

Dopo ti troverai con un nuovo file SU con una geometria di questo tipo:

  offset sx gx cdp tracr
1° trace 20 90 110 100 1
n trace 20+(n-1)*10 100-(n+1)*5 100+(n+1)*5 100 n

Verifica il tutto con suxedit.

 

Back to index - Ritorna all'indice

Setting warr geometry - Geometria su dati warr

    Setting warr geometry

If you collect warr data you know only transmitter position and offset headers. You can run a SU job like this (example with minimum offset=60cm with increment=10cm and sx=100):

#! /bin/sh

sushw <$1 key=offset,sx,tracr a=60,100,1 b=10,0,1 | suchw key1=gx,cdp key2=sx,gx key3=offset,sx a=0,0 b=1,1 c=1,1 d=1,2 > $2

use job file.su file_geo.su

When have run this job you'll have a new SU file with this geometry:

  offset sx gx cdp tracr
1° trace 60 100 160 130 1
n trace 60+(n-1)*10 100 160+(n-1)*10 130+(n-1)*5 n

We can verify it with suxedit.

    Crea la geometria nei dati warr

Se acquisisci dati warr conosci solo i valori della posizione del trasmettitore e gli offset. Puoi usare un job SU di questo tipo (esempio con offset minimo=60cm ed incremento di=10cm e sx=100):

#! /bin/sh

sushw <$1 key=offset,sx,tracr a=60,100,1 b=10,0,1 | suchw key1=gx,cdp key2=sx,gx key3=offset,sx a=0,0 b=1,1 c=1,1 d=1,2 > $2

digita job file.su file_geo.su

Il nuovo SU file avrà la seguente geometria:

  offset sx gx cdp tracr
1° trace 60 100 160 130 1
n trace 60+(n-1)*10 100 160+(n-1)*10 130+(n-1)*5 n

Verifica con suxedit.

 

Back to index - Ritorna all'indice

Geometry check - Controllo della geometria

    Geometry check

After setting data geometry you can simply verify it with:

suchart < file_geo.su outpar=pfile | xgraph par=pfile title "CMP" linewidth=0 marksize=1 mark=5

Or send to ps_file:

suchart < file_geo.su outpar=pfile | psgraph par=pfile title "CMP" linewidth=0 marksize=1 mark=5 >ps_file

And then see it with gv.

    Controllare la geometria

Dopo aver creato la geometria, puoi semplicemente controllarla con:

suchart < file_geo.su outpar=pfile | xgraph par=pfile title "CMP" linewidth=0 marksize=1 mark=5

O spedirla su un ps_file:

suchart < file_geo.su outpar=pfile | psgraph par=pfile title "CMP" linewidth=0 marksize=1 mark=5 >ps_file

e vederla con gv.

 

Back to index - Ritorna all'indice

Author Luca Baradello, corso italia 56/1 ronchis 33050 udine italy
All rights not reserved!
Revised: aprile 02, 2012 .... -4