Go to the list of seismic processes.      Go to SIOSEIS introduction.
                   SIOSEIS LANGUAGE AND LANGUAGE SYNTAX

DOCUMENT DATE:  January 1988, updated March 1997

SIOSEIS applies seismic processes in the order specified via the PROCS 
command (see the PROCS document for the list of processes available).  
The list of processes must start with an "input" process and terminate
with an "output" process.  As with all SIOSEIS parameters, each process
name in the PROCS list must be separated by at least one blank and must
be terminated with the word END.  The PROCS list should be the first 
thing given to SIOSEIS mainly because it clearly documents what the job
is doing.  e.g. procs input filter agc plot end

It is usually simplest to run SIOSEIS out of a command file or shell 
script, where the first line or lines are the operating system commands
to execute the program.  So, the command file might look like:
          SIOSEIS << eof
          procs input filter agc plot end
which would execute the program SIOSEIS and process the data in the order
specified.

SIOSEIS must be told to stop reading from the command file by terminating
the command file with the word END.
          SIOSEIS << eof
          procs input filter agc plot end
          end
***  SIOSEIS is case insensitive, i.e. either upper or lower or both 
     cases may be used.
***  SIOSEIS uses a line length of 200 characters.
***  SIOSEIS uses a blank or tab as delimiters to separate variables.
***  Multiple consecutive blanks are treated the same as a single blank.

The variables or parameters for each process described in the PROCS list
must be specified before the final END.  The parameters for each process
must start with the name of the process and must terminate with the word
END.  For clarity, it is wise to start and end with separate lines.
e.g.      SIOSEIS << eof
          procs input filter agc plot end
             input

             end
             filter
  
             end
             agc

             end
             plot

             end
          end
The order in which the process parameters appear doesn't matter, e.g. 
          SIOSEIS << eof
          procs input filter agc plot end
             input

             end
             plot

             end
             agc

             end
             filter
  
             end
          end
 
  
The variables for each process are given in parameter lists governing a
set of shots (or rps).  Each parameter list must be terminated by the 
word END.  A parameter list is similar to a "FOR loop" in many other
computer languages, but SIOSEIS has preset values for the initial loop
value (SIOSEIS parameter name FNO) and the terminal loop vaule (LNO).  e.g.
          SIOSEIS << eof
          procs input filter agc plot end
             input
                end
             end                   
             filter
               end
             end
             agc
                end
             end
             plot
                end
             end
          end

The individual parameters are always a parameter name followed by a value,
where the value may be a number or a group of letters.
e.g   fis 1   addwb yes

The parameters within each parameter list apply to all shots/rps within
a first/last set.  e.g FNO 101 LNO 200 pass 10 100 end
means shot 101 through shot 200 will have that same filter passband.

SIOSEIS assumes that shot numbers are monotonically increasing.  
i.e. each shot number must be larger that the previous shot number.

Multiple parameter lists may given in order to change parameter values
on different shots.  Using the "FOR" loop mentioned above, SIOSEIS permits
many loops within each process's parameters (nested loops are NOT permitted).
e.g.      nmo
              FNO 100 vtp 2000 5 2200 6.0  2600 6.7 end
              FNO 110 vtp 1950 5.1 2250 6.1 2620 6.8 end
          end
describes different velocity functions for shot 100 and 110.


***  The order in which parameters within each list is not important.  
          e.g.   fis 1 lis 5  is the same as    lis 5 fis 1
***  Parameters and values must be separated by at least one blank or tab.
***  A single parameter list may be on more than one line.
***  Every parameter list must be terminated with the word END.
***  A single parameter line may not contain more than 200 characters.
***  Most parameters have default or preset values and do not have to be
     given unless the value needs to be changed.  A default value is 
     reset to the program value on each parameter list, whereas a preset
     value does not change from list to list unless reset by the user.
***  SIOSEIS converts parameter values to the proper type so that decimal
     points on whole numbers are irrelevant.
     e.g.   values 1 = 1. = 1.0 = 1.00
***  A duplicate parameter (mistakenly given twice in the same list) is
     not an error;  the value associated with the last one is used.
***  In line comments are useful to document the SIOSEIS job.  A
     parameter line is terminated by the normal carriage return or by 
     the characters !, {, or #.  Anything after these characters will be
     ignored.
               
e.g  In order to skip a shot on tape, multiple INPUT parameter lists are used.
     i.e. Use multiple "FOR" loops, with each loop terminated with END.
          SIOSEIS << eof
             procs input filter agc plot end
                input
                   fis 1 lis 10 iunit 1 end
                   fis 12 lis 20 end
                end
                filter
                   pass 20 80 end
                end
                agc           # this is a comment
                   winlen .5 end   ! anything after !, {, # is ignored
                end
                plot
                   end
                end
                 end


It is often convenient to spatially vary a parameter between shots/rps.
The shots/rps on which the user defines the parameter may be called a
"control point".  Shots/rps between control points will receive 
parameters that are interpolated values of the control points, based on
the number of shots/rps between the control points and the current shot.
Shots/rps outside ALL controls points will receive parameters that are
held constant from the end control points.

e.g. In order to vary the velocity function along the seismic line, the 
velocity function (parameter VTP) is given at defined rps.
          nmo
              FNO 10 vtp 1450 4.5 2200 9.0 end
              FNO 20 vtp 1400 4.0 2200 9.0 end
          end

In this case, rps 1-10 will receive the vtp associated with rp 10. 
Rps 11-19 receive interpolated velocity functions based on the distance
the rp is from rp 10 and rp 20.  Rps 20 and larger get the velocity 
defined at rp 20.
Go to the list of seismic processes.      Go to SIOSEIS introduction.