Function Explanation
-------- -----------
conjugate(m) Complex conjugate of m. First SUBST is used, but if
%I still remains in a subexpression, then RATSUBST is
used. If m is a matrix, then complex conjugate of
each element of matrix m.
rempart(exp,n) Removes part n from exp. Exp may be a list, matrix or
other expression. If n is a list of the form [l,m]
then parts l thru m are removed.
wronskian(fns,var) Fns is a list of functions of variable var.
If the functions in fns have continuous derivatives
with respect to var of order n, where n is the number
of functions in fns, then the Wronskian matrix is re-
turned. The determinant of this matrix is the Wron-
skian determinant of the set of functions fns. The
functions are linearly dependent if this determinant
is zero.
adjoint(m) Replace each element of matrix m by its cofactor and
then transpose.
tracematrix(m) Returns the trace of matrix m, or the sum of the dia-
gonal elements.
rational(z) Multiplies numerator and denominator of z by complex
conjugate of denominator, thus rationalizing denomina-
tor. Returns CRE form if given one, else returns gen-
eral form.
logand(x,y) Returns logical (bit-wise) AND of arguments x and y.
logor(x,y) Returns logical (bit-wise) OR of arguments x and y.
logxor(x,y) Returns logical (bit-wise) XOR of arguments x and y.
uprobe(file) Returns the file-specification if file exists and FALSE
otherwise.
kronecker(m,n) Returns 1 if m equals n and 0 if m does not equal n.
nonzeroandfreeof(x,e) Returns TRUE if e is nonzero and x does not
occur in e. Returns FALSE otherwise.
linear(exp,x) If exp is an expression linear in variable x, then exp
is returned in the form a*x+b where a is nonzero and
free of x, and b is free of x. If exp is not linear,
then exp is returned in its original form.
quadratic(exp,x) If exp is an expression quadratic in variable
x, then exp is returned in the form a*x^2+b*x+c where
a is nonzero and free of x and both b and c are free
of x. If exp is not quadratic, then exp is returned
in its original form.
gcdivide(p1,p2) If TAKEGCD is FALSE then return p1/p2. Otherwise div-
ide p1 and p2 by the greatest common divisor of p1 and
p2. Then return the division of the resulting poly-
nomials.
lcm(exp1,exp2,...) returns the Least Common Multiple of its arguments.
arithmetic(a,d,n) The nth term of the arithmetic series
a,a+d,a+2*d,...,a+(n-1)*d.
geometric(a,r,n) The nth term of the geometric series
a,a*r,a*r^2,...,a*r^(n-1).
harmonic(a,b,c,n) The nth term of the harmonic series
a/b,a/(b+c),a/(b+2*c),...,a/(b+(n-1)*c).
arithsum(a,d,n) The sum of the arithmetic series from 1 to n.
geosum(a,r,n) The sum of the geometric series from 1 to n. If n is
infinity (INF) then a sum is finite only if the value
of r is not equal to 1.
gaussprob(x) Gaussian probability function, where its value is
1/SQRT(2*%PI)*%E^(-x^2/2).
gd(x) Gudermannian function, where its value is
2*ATAN(%E^x-%PI/2).
agd(x) Inverse Gudermannian function, where its value is
LOG(TAN(%PI/4+x/2))).
vers(x) Versed sine, which is 1-COS(x).
covers(x) Coversed sine, which is 1-SIN(x).
exsec(x) Exsecant, which is SEC(x)-1.
hav(x) Haversine, which is (1-COS(x))/2.
combination(n,r) The total number of combinations of n objects
taken r at a time.
permutation(n,r) The total number of permutations of r objects
selected from a set of n objects.
These functions have been programmed by Martin Cole. This package is
still being developed. I will attempt to incorporate any suggested
improvements. I would like to hear about the successful use of this
package. Any comments or suggestions should be mailed to MSC@MIT-MC.