logo home pagelogo home page

libfutils.a


chlower | chupper | endprogram | findmm | findmml | findmmlmask | lrunx | read2i | readc | readf | readi | readilim | retorna_ticks | rmblank | showperc | systemfunction | truebeg | truelen

up.gif

SUBROUTINE CHLOWER(CADENA)
Input: CADENA
Output: CADENA

Upper case characters in CADENA are transformed to lower case

CHARACTER*(*) CADENA -> character string to be transformed


up.gif

SUBROUTINE CHUPPER(CADENA)
Input: CADENA
Output: CADENA

Lower case characters in CADENA are transformed to upper case

CHARACTER*(*) CADENA -> character string to be transformed


up.gif

SUBROUTINE ENDPROGRAM(CADENA)
Input: CADENA

Multipurpose routine: stops the program, inserts CALL PGPAGE or
captures XServe.

CHARACTER*255 CADENA -> if CADENA='endprogram' CALL PGEND+STOP
                        if CADENA='newpagenew' CALL PGPAGE
                        if CADENA='capturegif' capture current X11 image


up.gif

SUBROUTINE FINDMM(N,X,XMIN,XMAX)
Input: N,X
Output: XMIN,XMAX

Return the maximum and minimum value of matrix X of N elements

INTEGER N -> no. of elements of matrix X
REAL    X(N) -> data matrix
REAL    XMIN -> minimum value of X()
REAL    XMAX -> maximum value of X()


up.gif

SUBROUTINE FINDMML(N,N1,N2,X,XMIN,XMAX)
Input: N,N1,N2,X
Output: XMIN,XMAX

Return the maximum and minimum value of matrix X of N elements (in the
range from N1 to N2 exclusively)

INTEGER N -> no. of elements of matrix X
INTEGER N1 -> first element of X() to search minimum/maximum
INTEGER N2 -> last element of X() to search minimum/maximum
REAL    X(N) -> data matrix
REAL    XMIN -> minimum value of X()
REAL    XMAX -> maximum value of X()


up.gif

SUBROUTINE FINDMMLMASK(N,N1,N2,X,LMASK,XMIN,XMAX)
Input: N,N1,N2,X,LMASK
Output: XMIN,XMAX

Return the maximum and minimum value of matrix X of N elements (in the
range from N1 to N2 exclusively, making use of the boolean mask LMASK)

INTEGER N -> no. of elements of matrix X
INTEGER N1 -> first element of X() to search minimum/maximum
INTEGER N2 -> last element of X() to search minimum/maximum
REAL    X(N) -> data matrix
LOGICAL LMASK(N) -> boolean mask
REAL    XMIN -> minimum value of X()
REAL    XMAX -> maximum value of X()


up.gif

SUBROUTINE LRUNX(LRUN,LMANUAL,LHTML)
Output: LRUN,LMANUAL,LHTML

Determine whether files .running_RUN, .running_MANUAL and .running_HLPHTML
exist in current the directory.

LOGICAL LRUN -> .TRUE. if file .running_RUN exists (.FALSE. otherwise)
LOGICAL LMANUAL -> .TRUE. if file .running_MANUAL exists (.FALSE. otherwise)
LOGICAL LHTML -> .TRUE. if file .running_HLPHTML exists (.FALSE. otherwise)


up.gif

SUBROUTINE READ2I(CDEF,N1,N2)
Input: CDEF
Output: N1,N2

Return 2 integers N1 and N2 entered by the user through the keyboard.

CHARACTER*(*) CDEF -> character string with default values for N1 and N2
              ('@' if there is no default)
INTEGER N1 -> first integer
INTEGER N2 -> second integer


up.gif

CHARACTER*(*) FUNCTION READC(CDEF,CVAL)
Input: CDEF,CVAL
Output: READC (function)

Return a character string entered by the user through the keyboard.

CHARACTER*(*) CDEF -> character with default value for READC
              ('@' if there is no default)
CHARACTER*(*) CVAL -> character string with valid characters
              ('@' if all characters are valid)


up.gif

REAL FUNCTION READF(CDEF)
Input: CDEF
Output: READF (function)

Return a float number entered by the user through the keyboard.

CHARACTER*(*) CDEF -> character string with default value for READF
              ('@' if there is no default)


up.gif

INTEGER FUNCTION READI(CDEF)
Input: CDEF
Output: READI (function)

Return an integer number entered by the user through the keyboard.

CHARACTER*(*) CDEF -> character string with default value for READI
              ('@' if there is no default)


up.gif

INTEGER FUNCTION READILIM(CDEF,N1,N2)
Input: CDEF,N1,N2
Output: READILIM (function)

Return an integer number entered by the user through the keyboard in the
range from N1 to N2

CHARACTER*(*) CDEF -> character string with default value for READILIM
              ('@' if there is no default)
INTEGER       N1 -> first limit for READILIM
INTEGER       N2 -> second limit for READILIM


up.gif

SUBROUTINE RMBLANK(C1,C2,L)
Input: C1
Output: C2,L

Remove blanks in character string C1, returning C2 with a true length L

CHARACTER*(*) C1 -> input character string
CHARACTER*(*) C2 -> output character string (C1 without blanks)
INTEGER       L -> true len of C2


up.gif

SUBROUTINE SHOWPERC(N1,N2,ISTEP,I,NEXTINFO)
Input: N1,N2,ISTEP,I,NEXTINFO
Output: NEXTINFO

Display the percentage of work performed in a loop, which has been defined
in the range from N1 to N2, with an incremental step ISTEP, being I the
current value of the loop control.

INTEGER N1 -> first limit of the control variable of the loop
INTEGER N2 -> last limit of the control variable of the loop
INTEGER ISTEP -> the value by which the control variable is incremented
INTEGER I -> current value of the control variable
INTEGER NEXTINFO -> integer which stores the last fraction of 10 displayed;
                    this variable is initialized in the first call of this
                    routine


up.gif

INTEGER FUNCTION TRUEBEG(CADENA)
Input: CADENA
Output: TRUEBEG (function)

Return the position of the first non-blank character in CADENA (ignoring
also control characters with ASCII value < 32)

CHARACTER*(*) CADENA -> input character string


up.gif

INTEGER FUNCTION TRUELEN(CADENA)
Input: CADENA
Output: TRUELEN (function)

Return the position of the last non-blank character in CADENA (ignoring also
control characters with ASCII value < 32)

CHARACTER*(*) CADENA -> input character string

logo home pagelogo home page