Jetdsp
JETDSP Homepage
Manual Homepage
Signal Processing Homepage
 
Signal processing
Basic guide
Advanced guide
IBM NEWDSP-syntax
Use your code
Signal slicing
Simple expressions
 
Tutorial
Introduction
Internals
IDL commands
Interpolation
Writing your own code
Adding functions to the Simple dialogue
 
How to...
Read data
Define structure
 
Functions
jetSmooth
jetint
jetsubset
jetmerge
fixgrid
jetwindowpoints
 

IBM Signal Processing - Built-in functions

The following built-in functions are available and "ARG1", "ARG2" etc. indicate the required number of arguments to the function: expressions of the form "ARG1, ..., ARGn" indicate a variable (unlimited) number of arguments. "ARGi" may be any valid expression.

ABS(ARG) absolute value of ARG
ACOS(ARG) arc-cosine of ARG%(in radians)
ADD(ARG1,ARG2) Function for%+$ operand: ARG1 + ARG2
AND(ARG1, ARG2) rounds ARG1 & ARG2, logically AND's result
ASIN(ARG) arc-sine of ARG%(in radians)
ATAN(ARG) arc-tangent of ARG%(in radians)
ATAN2(ARG1,ARG2) arc-tangent of ARG1 / ARG2
AVE(ARG) scalar average of ARG
AVI(ARG1,ARG2,ARG3) scalar average of ARG1 between limits ARG2 - ARG3
BEFORE(ARG1,ARG2) element of ARG1 corresponding to first element in ARG2 before ARG2 >= 0.0
CEIL(ARG) smallest integer >= ARG
CHANGE(ARG1,ARG2) ARG1(t) - ARG1(t = T0) where T0 = time where ARG2 first > 0.0
COS(ARG) cosine of ARG%(in radians)
COSH(ARG hyperbolic cosine of ARG
DEPLEX(ARG1,ARG2,ARG3)For multi-plexed signal ARG1 with ARG3 threads to it extract the ARG2(th) thread.
DIFF(ARG1,ARG2) differentiates ARG1 wrt ARG2
DIV(ARG1,ARG2) function for / operator: ARG1/ARG2
DIVMIN(ARG1,ARG2) function for /- operator: ARG1/(-ARG2)
EXP(ARG) raises e to the power ARG: e**ARG
EXP10(ARG) raises 10 to the power ARG: 10**ARG
FETCHC(ARG1, ... ARGn)call user C function "ARG1", passes on other ARGi'sNOT AVAILABLE IN IDL-JETDSP
FETCHF(ARG1, ... ARGn)call user FORTRAN routine "ARG1", passes other ARGi's NOT AVAILABLE IN IDL-JETDSP
FLOOR(ARG) largest integer <= ARG
GAMMA(ARG) Gamma function of ARG
GEQ(ARG1,ARG2,ARG3) result = ARG2 if ARG1 >= 0.0; else result = ARG3
GMAX(ARG) scalar maximum value in array ARG
GMIN(ARG) scalar minimum value in array ARG
GTH(ARG1,ARG2,ARG3) result = ARG2 if ARG1 > 0.0; else result = ARG3
INDEX(ARG) creates index array {1,2,3, etc.} based on ARG length
INT(ARG1,ARG2) integrates ARG1 wrt ARG2 using trapezium rule
LAST(ARG1,ARG2) scalar element of ARG1 corresponding to last ARG2 > 0
LEQU(ARG1,ARG2) ARG1 == ARG2 => result = ARG2, else set status vector
LGAMMA(ARG) log-gamma function of ARG
LGE(ARG1,ARG2) ARG1 >= ARG2 => result = ARG2, else set status vector
LGT(ARG1,ARG2) ARG1 > ARG2 => result = ARG2, else set status vector
LINE(ARG1,ARG2,ARG3)straight line from ARG1(t=ARG2) to ARG1(t=ARG3)
LLE(ARG1,ARG2) ARG1 <= ARG2 => result = ARG2, else set status vector
LLT(ARG1,ARG2) ARG1 < ARG2 => result = ARG2, else set status vector
LNEQ(ARG1,ARG2) ARG1 != ARG2 => result = ARG2, else set status vector
LOG(ARG) natural log of ARG
LOG10(ARG) base 10 log of ARG
MAKE3D(ARG1, ...,ARGn)convert input arrays into 3D output array (matrix)
MAX(ARG1, ...,ARGn) maximum value at each point in n input arrays.
MIN(ARG1, ...,ARGn) minimum value at each point in n input arrays.
MOD(ARG1,ARG2) remainder from ARG1 / ARG2
MUL(ARG1,ARG2) function for * operator: ARG1 * ARG2
MULMIN(ARG1,ARG2) function for *- operator: ARG1 * (-ARG2)
MU0 scalar constant mu0
NEAR(ARG1,ARG2) find value in ARG1 where ARG2 closest to zero
NEQ(ARG1,ARG2,ARG3) result = ARG2 if ARG1 != 0.0; else result = ARG3
NORM(ARG) normalises ARG between 0 and 1.
NOT(ARG) rounds ARG and logically complements it
OLS(ARG1, ...,ARGn) least-squares regression fit of ARG1 on ARG2, ..,ARGn
OLSN(ARG1, ...,ARGn)as OLS() above but no constant in the regression fit
OR(ARG1,ARG2) rounds ARG1 & ARG2 and logically OR's them
PI scalar constant pi
POW(ARG1,ARG2) raises ARG1 to the power ARG2: ARG1 ** ARG2
POWMIN(ARG1,ARG2) raises ARG1 to the power -ARG2: ARG1 ** (-ARG2)
PT(ARG1,ARG2) NBI smoothing function. See manual.
RAND returns random number uniformally distributed on 0,1
RESID(ARG1, ...,ARGn) residuals of least-squares regression with a constant of ARG1 on ARG2, ..., ARGn
RESIDN(ARG1, ...,ARGn)as RESID() function but no constant in regression
RMAX(ARG) returns the position of the maximum of the signal
RMIN(ARG) Returns the position of the minimum of the signal
SEED(ARG) Sets ARG as seed for random number generator
SIN(ARG) sine of ARG%(in radians)
SINH(ARG) hyperbolic sine of ARG
SLICE(ARG) finds point in common timebase closest to a point in the actual time vector for ARG
SMOOTH(ARG1,ARG2) smooths ARG1. If ARG2 < 0 a moving average with equal weights is used about a window abs(ARG2) in the common timebase. If ARG2 > 0 triangular weighting is used and ARG2 is window width about timebase points.
SMSLICE(ARG,SC1,SC2,SC3,SC4) for 3D signal ARG returns a 2D signal equal to the average of slices through ARG between SC1 and ABS(SC2), smoothed over window ABS(SC3). If SC4=0, SC1 and SC2 are values, if SC4=1, they are indices.
SQRT(ARG) square root of ARG
STDEV(ARG) standard deviation of ARG
SUB(ARG1,ARG2) function for - operator: ARG1 - ARG2
SWAP(ARG) transpose 3D ARG: X slices become T & vice versa
TAN(ARG) tangent of ARG%(in radians)
TANH(ARG) hyperbolic tangent of ARG
TNSLICE(ARG1,ARG2) for 3D signal ARG1 extracts the ARG2(th) time slice
TRSLICE(ARG1,ARG2) for 3D signal ARG1 extracts timeslice closest to ARG2
VAL(ARG1,ARG2) value(s) of ARG1 at position(s) given in ARG2
XNSLICE(ARG1,ARG2) for 3D signal ARG1 extracts the ARG2(th) X slice
XOR(ARG1,ARG2) rounds ARG1 & ARG2 and logically exclusive OR's them
XRSLICE(ARG1,ARG2) for 3D signal ARG1 extracts X slice closest to ARG2

IBM style signal processing expressions home page

Top  JETDSP Home Page  Manual  FAQ 
Please send comments to: data-and-coding-support@ccfe.ac.uk