-
MACRO
-
Macros are text files holding regular Gifa commands. Loops, tests,
controls, input/output and variables are available within macro.
Macros are called form the user interface exactly as native
commands. Parameters can be passed to macros. Macro are called by
typing their name (case sensitive). It is also possible to force for
a macro call by prefixing the name with @. Permitting thus to have
macros having the same name as native commands.
Arguments are passed to macro simply by putting the desired arguments on
the same calling line. The arguments are then evaluated within the macro
with the $_ context which pops each argument at a time. $ARG tells the
macro whether arguments are left on the calling line or not.
When called, macro files are first searched in a list of
directories, held in an internal path context (The GifaPath). By
default the path consists in the current working directory (as given
by pwd), then in the user macro directory : $HOME/macro, and finally
in the global macro directory : /usr/local/gifa/macro. This PATH can
be changed with the SETPATH command, and examined with the $GIFAPATH
context.
All the macros in the standard distribution are in the
/usr/local/gifa/macro directory, some other macro can be found on
the ftp server.
related contexts : $GIFAPATH $VAR_MAX $HOME $ARG $_
see also : BUTTONBOX
CONTEXTS
CONTROLS
DIALOGBOX
FORMBOX
FUNCTIONS
OPEN
SETPATH
SETPROMPT
VARIABLES
vim
vip
-
MAX
-
Finds the maximum and minimum points of the current data-set. Load
the values used by MINIMAX.
related contexts : $MAX[1] $MAX[2]
see also : ABSMAX
MAX
-
MAXDATA
-
Compare the content of the current buffer with the content of the
DATA buffer, and leave in memory the largest of the 2 values.
Usefull for projections or symetrisation macros.
see also : ADDDATA
MINDATA
MULTDATA
PUT
SYM
-
MAXENT
-
MAXENT SI1 { SI2 }
Start Maximum Entropy iteration. The user is prompted for the size
of the reconstructed image.
related contexts : $ITERDONE $CHI2 $ALGO
see also : ALGO
conjg
gad
gifa
INVLAP
INVTLAP
ITER
MAXENTCONT
NDISP
-
MAXENTCONT
-
Continue Maximum Entropy iteration. All the parameters may be
modified before CONTinuing, but the current spectrum as hold in the
working buffer should not be modified.
related contexts : $ITERDONE $CHI2
see also : INVLAPCONT
INVTLAPCONT
ITER
MAXENT
-
mdfamb
-
mdfamb interactive
this macro permits to interactively and graphically
modify a peak amoeba by selecting one-by-one pixels.
two possibilities are available.
"add": add the selected pixel to the pic amoeba.
"erase": remove the selected pixel from the pic amoeba.
If the pixel is in another peak amoeba, the program ask
information to user.
see also : INTEG
MSKINTEG
saveamb
setamb
-
MEDIAN
-
MEDIAN { y } x index
Executes a median filter on the data-set (1D or 2D).a window of x
points (or y by x in 2D) is moved along the data set, the point are
ordered, and the indexth point is taken as the new point for the
data set.
see also : SMOOTH
-
MEMORY
-
The GIFA program holds all the data in one single large memory
buffer. This buffer is used for several purposes, and may be divided
into smaller pieces. The size of this buffer is displayed when
entering the program, or with the CONFIG command. There is no way to
use a larger data-set than this memory size but recompiling. This
buffer is used for 1D as well as 2D and 3D operations. In all cases
the whole buffer is available. However, when moving back and forth
between 1D, 2D or 3D mode, or when using memory intensive commands,
only partial regions of the buffers are protected. The size of these
protected regions are given with CONFIG command. The idea is that
you can eat-up all the available memory for a single data-set if you
which, but that certain operations will be forbidden on it.
For instance, you can handle a full memory 2D data-set if you do
not wish to do 3D. However, when working in 3D, if you zero-fill a
2D plane extracted from the 3D, over the protected area size for 2D,
you will destroy a part of the 3D buffer. You will sometime get the
question : 'This will overflow the xx buffer, Ok?' when there is any
risk of destroying one of the buffer. This question is not asked in
macro execution, where you are supposed to know what you are doing.
See documentation for a more detailed description of the memory set-up.
related contexts : $MEM_MAX $MEM_PRO_1D $MEM_PRO_2D $MEM_PRO_3D $VAR_MAX
see also : CONFIG
GET
PUT
VARIABLES
-
MESSAGE
-
message text
This command ermits to build interactive macros. If no argument
is present on the calling line when MESSAGE is executed, the text
will be issued to the user when the next data entry will be needed;
if an argument is present, nothing will happend.
If the macro is called from a menu button, then the text will
appear in the data entry dialog box.
related contexts : $ARG
see also : ALERT
PRINT
SETPROMPT
VARIABLES
-
METH
-
METH 0/1/2
When set to 0, indicates that the current build-up curve is taken
from 2 simple hydrogens, when set to 1, indicates that there is 1
methyle group, when set to 2, 2 methyle groups. Used by DIST
see also : CALIBDI
DIST
RELAXRATE
-
MINDATA
-
Compare the content of the current buffer with the content of the
DATA buffer, and leave in memory the smallest of the 2 values.
Usefull for projections or symetrisation macros.
see also : ADDDATA
MAXDATA
MULTDATA
PUT
SYM
-
MINIMAX
-
MINIMAX n1 n2
Load the value of the minimum and the maximum points that will be
used for peak-picking. These value are loaded by the MAX command.
see also : MAX
PEAK
-
MINIMIZE
-
MINIMIZE 'expression to minimize' num_of_param
This command calls the generic minimizer and permits to compute the
value and the location of the minimimum of a given function.
'expression to minimize' is the function, given in Gifa language
that will be minimized. The free (adaptable) parameters will
be called $Pi with i ranging from 1 to num_of_par.
num_of_par is the number of parameters to adapt in the previous
expression
The adapted parameter are stored in the global user variables
$P1..$Pn, if the variables do not exist before the call they
will created with initial value of 1.0, if they exists, their value
will be taken as initial value for the minimization
The algorithm used is the Powell method, which does not
require any derivative. The number of iterations is controled by ITER
and MINITER.
eg :
MINIMIZE 'sin($p1)*sin($p2)' 2
will find the minimum to be -1.0
and the optimum to be : 1.57064 and -1.57122
stored in $p1 and $p2
related contexts : $CHI2
see also : FITGENE
ITER
LINEFIT
LINEFITD
MINITER
-
MINITER
-
Secondary iteration number for two steps minimisation in GIFA.
Number of iterations used for the line-minimization during one step
of the MaxEnt iteration.
In a MaxEnt run, the number of FT's per iteration is MINITER + 2
Also used by other iterative process LINEFIT AUTOPHASE
related contexts : $MINITER
see also : ITER
-
MINUS
-
Sets to zero the positive parts of the signal
see also : ABS
ONE
PLUS
ZERO
ZEROING
-
mkdbppm
-
Macro to generate a ppm DBM file from a ppm ascii file
mkdbppm dbm_ppm_filename ascii_ppm_filename
the ascii ppm file has the following free-format:
PPM residu_name residu_number atom_name ppm_value linewidth_value
see also : DBOPEN
SimSpect2D
SIMUN
-
MODIFYSIZE
-
MODIFYSIZE si1 si2 {si3}
Used mostly for hacking
Permits to modify the leading sizes of a 2D or a 3D data-set,
provided the product of the sizes : si1*si2{*si3} is equal to the
product of the old ones.
Does not actually modify the data.
related contexts : $SI1_1D $SI1_2D $SI1_3D $SI2_2D $SI2_3D $SI3_3D
see also : CHSIZE
size
-
module
-
obsolote, use MODULUS instead
-
MODULUS
-
MODULUS is used to calculates the modulus of the spectrum.
In 2D, will only works for fully Hypercomplex data-sets (itype ==
3) or for data-sets complex in F2 (itype == 1) not for data-set
complex in F2 (itype == 2). In this last case, you should use FLOP
before doing MODULUS.
related contexts : $ITYPE_1D $ITYPE_2D $ITYPE_3D
see also : ABS
FLIP
FLOP
REAL
-
MONOPOINT
-
Permits to click once on the data-set. The top value on the point
stak : context variables, $POINTX[1], $POINTY[1] and $BUTTON are set
accordingly. If $NPOINT is zero (after a POINT_CLEAR) it is set to
1, unchanged otherwise.
Useful for macros.
related contexts : $NPOINT $POINTX[1] $POINTY[1] $BUTTON
see also : point
POINT_PUSH
ZM
-
more
-
as in unix
see also : CD
ls
pwd
rm
SH
vi
vim
vip
-
MORPHOB
-
internal value for BCORR 3 algorithm
see also : BCORR
BCORRP?
-
MORPHOS
-
internal value for BCORR 3 algorithm
see also : BCORR
BCORRP?
-
MSKCONC
-
MSKCONC previous_peak new_peak
Reasigns all the points of the amoeba associated to previous_peak
with the amoeba of the peak new_peak. After this operation,
previous_peak does not have any amoeba left.
see also : INTEG
MSKINTEG
MSKMODIF
mskread
mskwrite
-
MSKINTEG
-
integrates the current 2D data buffer using the last defined amoeba mask.
The results are put into the peak list.
related contexts : $PK1D_A[i] $PK2D_A[i] $PK2D_ERR[i] $PK3D_A[i]
see also : GET
INTEG
mdfamb
MSKCONC
MSKMODIF
mskread
mskwrite
PUT
saveamb
setamb
SIGN_PEAK
ZERO_QU
-
MSKMODIF
-
MSKMODIF crdf1 crdf2 nopeak
Assign the pixel at coordinates crdf1 crdf2 to the amoeba of the
peak nopeak. The pixel coordinates crdf1 and crdf2 are given in index.
Setting a nopeak of zero removes that pixel from the amoeba
definition.
see also : INTEG
MSKCONC
MSKINTEG
mskread
mskwrite
SETVAL
-
mskread
-
mskread file_name
read the peak table and the amoeba written with mskwrite
for integration with mskinteg
appends extensions .pek and .amb to file_name
see also : MSKINTEG
mskwrite
PKREAD
PKWRITE
-
mskwrite
-
mskwrite file_name
write the peak table and the amoeba for latter integration
with mskread and mskinteg
appends extensions .pek and .amb to file_name
see also : MSKINTEG
mskread
PKREAD
PKWRITE
-
MULT
-
MULT x
Multiply data-set by a scalar.
see also : ADD
ADDDATA
MULTDATA
-
MULTDATA
-
Multiplies point by point, the content of the current working buffer
with the content of the DATA buffer. Permits to realize convolution
product. Works in 1D, 2D, in real, complex and hypercomplex modes.
see also : ADDDATA
MAXDATA
MINDATA
MULT
PUT
-
MULTIPOINT
-
Permits to click several time on the data-set. Similar to POINT, but
no output is generated. The values of the pseudo-variables $NPOINT,
$POINTX[1], $POINTY[1] and $BUTTON are set accordingly. Useful for
macros.
related contexts : $NPOINT $POINTX[1] $POINTY[1] $BUTTON
see also : MONOPOINT
-
multi_zoom
-
multi_zoom
creates a tool which permits to handle several zoom box on a data-set.
you can define zoom regions
jump to a given window
store and load a set of zoom definitions (stored as macro commands)
draw the zoom definitions on screen
when loaded, the zoom definition are stored in an associative array called
zmem[]
related contexts : $ZOOM $ZOOM_1D[1..2] $ZOOM_2D[1..4] $ZOOM_3D[1..6]
related variable : $ZMEM[]
see also : center
point
rzoom
ZM
zoom3di
-
MUNSET
-
munset list_of_variable_name *
Removes all the variables which names are found in
list_of_variable_name from the variable table. The list is
terminated by a * sign. Note that no $ sign are needed.
see also : SET
tunset
UNSET
VARIABLES