HOME GUIDE OPERATIONS DOCS FAQ TECHNIQUES FORMATS INSTALL NEW TIPS WEB LINKS Wadsworth Labs

ELSEIF_THEN - Conditional execution of operations (Scripting operation)

(11/16/06)

PURPOSE

Allow conditional execution of sections of the SPIDER operation stream, depending on the logical value of an expression. Modeled after the 'FORTRAN IF...ELSEIF...ELSE...ENDIF' syntax.

SEE ALSO

IF_THEN [Conditional execution of operations (Scripting operation)]
ELSE [Conditional execution of operations (Scripting operation)]

USAGE

.OPERATION: IF(<EXP>.<LC>.<EXP>) THEN
~~~~~~~
~~~~~~~
ELSEIF(<EXP>.<LC>.<EXP>) THEN
~~~~~~~
~~~~~~~
ENDIF

Where:
1. <EXP> is an expression.
2. <LC> is a logical comparator. The following comparators are allowed:

EQ    Equal
NE    Not equal
GT    Greater
GE    Greater/equal
LT    Less
LE    Less/equal

NOTES

  1. EXAMPLE:
    IF([ysize].LT.15) THEN
    AC
    input001
    output001
    ELSEIF ([ysize].LT.150) THEN
    AC
    input001
    output002
    ELSE
    AC
    input001
    output003
    ENDIF

  2. Nesting of IF_THEN..ELSE...ENDIF is limited to MAXPRC levels. See: 'CMLIMIT.INC for current value of MAXPRC.

  3. For every 'IF_THEN' there must be a closing ENDIF!

  4. There is NO '.AND.' comparator.

  5. The operation 'ELSEIF' was not available prior to SPIDER release 15.0.

  6. Implemented by: A. Leith

SUBROUTINES

LOGIFQ

CALLER

SPIDER

© Copyright Notice /       Enquiries: spider@wadsworth.org