SQLITE_NOTICE(283): recovered 5 frames from WAL file /data/mtt.fossil-wal
File mttroot/mtt/bin/trans/dat2gdat artifact 11ab5c7503 part of check-in 366fd14505
#! /bin/sh ###################################### ##### Model Transformation Tools ##### ###################################### # Bourne shell script: dat2gdat # Converts a data file in data format to gplot data format # Copyright (c) P.J.Gawthrop, 1997. ############################################################### ## Version control history ############################################################### ## $Id$ ## $Log$ ## Revision 1.2 2002/04/16 11:36:03 gawthrop ## These were flagged with M on cvs update ## ## Revision 1.1 2000/12/28 12:26:15 peterg ## Put under RCS ## ## Revision 1.8 1998/09/29 20:01:27 peterg ## 4th argument for nyquist style files - ie differnt x for each y ## ## Revision 1.7 1997/12/04 22:10:32 peterg ## Handles argument list - variable names. ## ## Revision 1.6 1997/05/22 10:34:05 peterg ## Changed argument structure. ## ## Revision 1.5 1997/05/22 10:11:19 peterg ## Fixed parametetr bug ## # Revision 1.4 1997/05/16 13:03:10 peterg # Now selects variables to display. # # Revision 1.3 1996/08/26 13:02:58 peterg # Cahged awk to awk. # # Revision 1.2 1996/08/15 11:49:11 peter # Puts a blank line at the end of the file: # this allows user to cat files for use in gnuplot. # ## Revision 1.1 1996/08/14 09:13:52 peter ## Initial revision ## ############################################################### echo Creating $1_$2.gdat rm -f $1_$2.gdat DifferentX=$4; # Convert multi-columns into gnuplot format - # ie stack two columns vertically separated by blank lines #Get the desired data index which=`name2index $1 "$3"` echo $1 $3 $which if [ -z "$DifferentX" ]; then gawk ' BEGIN{ row=0; col=0; } { if (row==0) { N=split(which,Which,","); } row++; j=1; if (Which[1]==0) { x[row] = $1; for (i=1; i<NF; i++) { ycol = i+1; y[row,j++] = $ycol; } } else { xcol = Which[1]; x[row] = $xcol for (i=1; i<N; i++) { ycol = Which[i+1]; y[row,j++] = $ycol; } } cols=j-1; } END { rows = row; for (col = 1; col <= cols; col++) { for (row = 1; row <= rows; row++) { print x[row], y[row,col] }; if (col<=cols) { printf("\n") } } }' which="$which" <$1_$2.dat > $1_$2.gdat else gawk ' BEGIN{ row=0; col=0; } { row++; cols=NF/2 for (i=1; i<=cols; i++) { ycol=2*i; xcol=ycol-1; x[row,i] = $xcol y[row,i] = $ycol; } } END { rows = row; for (col = 1; col <= cols; col++) { for (row = 1; row <= rows; row++) { print x[row,col], y[row,col] }; if (col<=cols) { printf("\n") } } }' <$1_$2.dat > $1_$2.gdat fi