| [3907] | 1 | 
 | 
|---|
 | 2 | # Script pour lire un fichier FITS avec les donnees FITS FFT_SHRINK et faire des plots de 
 | 
|---|
 | 3 | # controle
 | 
|---|
 | 4 | #  Appel : ckshrink.pic Directory NumeroFITS 
 | 
|---|
 | 5 | delobjs *
 | 
|---|
 | 6 | set DIR $1
 | 
|---|
 | 7 | set OSIG signal$2
 | 
|---|
 | 8 | set file $DIR/$OSIG.fits
 | 
|---|
 | 9 | echo '----> ckshrink: Opening file ' $file
 | 
|---|
 | 10 | readfits $file
 | 
|---|
 | 11 | 
 | 
|---|
 | 12 | listobjs 
 | 
|---|
 | 13 | newh2d C1ri -128.5 128.5 257 -128.5 128.5 257
 | 
|---|
 | 14 | newh2d C2ri -128.5 128.5 257 -128.5 128.5 257
 | 
|---|
 | 15 | newh1d C1exp -128.5 128.5 257
 | 
|---|
 | 16 | newh1d C2exp -128.5 128.5 257
 | 
|---|
 | 17 | newh1d C1val -128.5 128.5 257
 | 
|---|
 | 18 | newh1d C2val -128.5 128.5 257
 | 
|---|
 | 19 | 
 | 
|---|
 | 20 | newvec specC1 1024 
 | 
|---|
 | 21 | newvec specC2 1024 
 | 
|---|
 | 22 | 
 | 
|---|
 | 23 | rename $OSIG sigdum
 | 
|---|
 | 24 | 
 | 
|---|
 | 25 | c++exec \
 | 
|---|
 | 26 |   int C1OFFSET=24;  \
 | 
|---|
 | 27 |   int C2OFFSET=2072; \
 | 
|---|
 | 28 |   cout << " ===== Signal Analysis ===== START " << C1OFFSET << " , " << C2OFFSET << endl; \
 | 
|---|
 | 29 |   for(int j=0; j<sigdum.NRows(); j++)  \
 | 
|---|
 | 30 |     for(int i=0; i<sigdum.NCols(); i++)  \
 | 
|---|
 | 31 |       sigdum(j,i) = (sigdum(j,i)<127.5)?sigdum(j,i):sigdum(j,i)-256.; \
 | 
|---|
 | 32 |   for(int j=0; j<sigdum.NRows(); j++) { \
 | 
|---|
 | 33 |     C1exp.Add(sigdum(j,C1OFFSET+2046)); \
 | 
|---|
 | 34 |     C2exp.Add(sigdum(j,C2OFFSET+2046)); \
 | 
|---|
 | 35 |     for(int i=C1OFFSET; i<C1OFFSET+2042; i+=2) { \
 | 
|---|
 | 36 |         specC1((i-C1OFFSET)/2) += sqrt(sigdum(j,i)*sigdum(j,i)+sigdum(j,i+1)*sigdum(j,i+1));  \
 | 
|---|
 | 37 |         C1ri.Add(sigdum(j,i),sigdum(j,i+1));  \
 | 
|---|
 | 38 |         C1val.Add(sigdum(j,i));  C1val.Add(sigdum(j,i+1));  \ 
 | 
|---|
 | 39 |     }  \
 | 
|---|
 | 40 |     for(int i=C2OFFSET; i<C2OFFSET+2042; i+=2) { \
 | 
|---|
 | 41 |         specC2((i-C2OFFSET)/2) += sqrt(sigdum(j,i)*sigdum(j,i)+sigdum(j,i+1)*sigdum(j,i+1));  \
 | 
|---|
 | 42 |         C2ri.Add(sigdum(j,i),sigdum(j,i+1));  \
 | 
|---|
 | 43 |         C2val.Add(sigdum(j,i));  C2val.Add(sigdum(j,i+1));  \ 
 | 
|---|
 | 44 |     }  \
 | 
|---|
 | 45 |   }  \
 | 
|---|
 | 46 |   specC1 /= (double)sigdum.NRows();  \
 | 
|---|
 | 47 |   specC2 /= (double)sigdum.NRows();  
 | 
|---|
 | 48 | #
 | 
|---|
 | 49 | #       
 | 
|---|
 | 50 | echo ' --- processing done, start plotting ... '
 | 
|---|
 | 51 | 
 | 
|---|
 | 52 | mv sigdum $OSIG
 | 
|---|
 | 53 | 
 | 
|---|
 | 54 | setaxesatt 'font=helvetica,bold,16 fixedfontsize minorticks'
 | 
|---|
 | 55 | zone 3 2 
 | 
|---|
 | 56 | disp C1exp 'font=helvetica,roman,14 blue' 
 | 
|---|
 | 57 | disp C1val 'font=helvetica,roman,14 blue' 
 | 
|---|
 | 58 | #disp C1ri 'font=helvetica,roman,14 blue'  
 | 
|---|
 | 59 | plot2d C1ri x y val>0 "notit nsta blue"
 | 
|---|
 | 60 | disp C2exp 'font=helvetica,roman,14 red' 
 | 
|---|
 | 61 | disp C2val 'font=helvetica,roman,14 red' 
 | 
|---|
 | 62 | #disp C2ri 'font=helvetica,roman,14 red' 
 | 
|---|
 | 63 | plot2d C2ri x y val>0 "notit nsta red"
 | 
|---|
 | 64 | 
 | 
|---|
 | 65 | newwin 
 | 
|---|
 | 66 | zone 1 2 
 | 
|---|
 | 67 | plot2d specC1 n*250/4096+125 val 1 'blue cpts font=helvetica,roman,14 nsta notit'
 | 
|---|
 | 68 | settitle 'Spec Voie 1 ' ' ' ' blue font=helvetica,bold,16 '
 | 
|---|
 | 69 | plot2d specC2 n*250/4096+125 val 1 'red cpts font=helvetica,roman,14 nsta notit'
 | 
|---|
 | 70 | settitle 'Spec Voie 2 ' ' ' ' red font=helvetica,bold,16 '
 | 
|---|
 | 71 | 
 | 
|---|
 | 72 | 
 | 
|---|
 | 73 | 
 | 
|---|