En  |  Pyc

Description of control file

Some of the control parameters of the surfer are contained in the contlol file, others may be set interactivelly in the course of graphic analysis. There is a number of default values for those parameters, which are defined in the control file. In order to provide the initial plot just after starting the program, two parameters must be present obligatoryly: the name of data file and dimension of matrix. Otherwise the user will be asked about them and after additional correction of control file he will be able to continue job by clicking the Read button and one of "perform" buttons: 3d, Contour or Topo .

Besides a user may currently correct the control and data files without exit the program surfer . He may also change the names of both files with consequtive clicking the Read button. While the Read button is pushed the new control file and corresponding data-file are read. After renewing the data in a program memory a user may continue the graphic analysis of the different forms of image.

The example of the control file is demonstrated below.

output plot/func1.ps
file /home/lap/snda/sun4/ssa/aog.sd.1
dimension 41 41
note Power is a function of frequency and slowness$ 220 30 4
note This is a second comment x=240 y=60 font=3$ 240 60 3
note This is a third comment x=280 y=90 font 2 $ 280 90 2
note This is a 4-th. comment on the plot $ 300 120 1
note This is a 5-th. comment on the plot $ 320 150 1
note This is a 6-th. comment on the plot$ 320 510 1
xlabel X Frequency, Hz
ylabel Slowness, sec/km
zlabel POWER
inverse y
exchange x y
axes 0.1 50 100 200

Explanations of the commands


defines the name of PostScript file. If this line is skipped then default name "surfer.ps" is set. Actually the creation of Postscript file is initiated by the user click of the Create PS button in main graphic menu


defines the name of the data file. The structure of the data file is the same as for routine "contour" i.e.: data file have to contain only values of a function to be plotted, the increments of the arguments are supposed to be constant. Every raw of the data matrix is written as one ASCII string with an arbitrary format and ended by the "return" character. The disintegration of a long string into several short ones is permitted, but one must take into account that every new row of the matrix must be started as a new record in the data file. This command is obligatory for the control file.


defines the size of data matrix along the X (first number) and Y (second number) axes. This command is also obligatory.


defines a user's comment, that has to be inserted into the plot. The operand of this command consists of two part. First is a text, (up to 79 characters) that must be ended by $ (signature of dollar). Second in turn consist of X,Y-coordinates (in integer pixels) of the first text letter on the plot and font size 1-4 (from small to great). The coordinates are adequate to the initial image; while resizing the position of the note is automatically changed. The amounts of notes in the file must not exceed 10. These note commands are optional and may be skipped.

label, ylabel, zlabel

label, ylabel, zlabel are the titles of the axes. These commands are optional and may be skipped.

inverse x

(if present) causes the inversion of rows of the matrix during the reading of data file i.e. data[i,j] = data [kpX-i, j]

inverse y

(if present) causes the inversion of rows of the matrix during the reading of data file i.e. data[i,j] = data [i, kpY-j]

inverse x y

(if present) causes the inversion of both rows and columns as it is shown above

exchange x y

(if present) causes the transformation of the image, so the X and Y axes are exchanged with their data, limits and notations.


defines the limits of argument values along the X (Xmin, Xmax) and Y (Ymin, Ymax) axes. This command is optional.

The order of lines in the control file can be arbitrary. One or several spaces serves as the separators of numbers. The empty lines are permitted. # character (or space) in the first position defines a comment line, which is not processed by the program.

Your are here: