Genius 1.0.20
Copyright (C) 1997-2014 Jiří (George) Lebl
This is free software with ABSOLUTELY NO WARRANTY.
For license details type `warranty'.
For help type `manual' or `help'.
genius> help
For a manual on using Genius and the GEL language type:
manual
For help on a specific function type:
help FunctionName
Commands:
help - Print help (or help on a function/command)
load - Load a file into the interpreter
cd - Change directory
pwd - Print current directory
ls - List files in the current directory
plugin - Load a plugin
Basic:
AskButtons - Ask a question and present a list of buttons. Returns the 1-based index
of the button pressed (or null on failure).
AskString - Ask a question and return a string. Optionally pass in a default.
Compose - Compose two functions
ComposePower - Compose a function with itself n times, passing x as argument, and
returning x if n == 0
CurrentTime - Unix time in seconds as a floating point number
DisplayVariables - Display values of variables, or all if called without arguments
Evaluate - Parse and evaluate a string
GetCurrentModulo - Get current modulo from the context outside the function
Identity - Identity function, returns its argument
IntegerFromBoolean - Make integer (0 or 1) from a boolean value
IsBoolean - Check if argument is a boolean (and not a number)
IsDefined - Check if a variable or function is defined
IsFunction - Check if argument is a function
IsFunctionOrIdentifier - Check if argument is a function or an identifier
IsFunctionRef - Check if argument is a function reference
IsMatrix - Check if argument is a matrix
IsNull - Check if argument is a null
IsString - Check if argument is a text string
IsValue - Check if argument is a number
Parse - Parse a string (but do not execute)
PrintTable - Print a table of values for f(n) for numbers from from vector v, or if v
is a number for integers from 1 to v
ProtectAll - Mark all currently defined variables as protected. They will be treated
as system defined variables from now on.
SetElement - Set an element in a global variable which is a matrix
SetFunctionFlags - Set flags for a function, currently "PropagateMod" and
"NoModuloArguments"
SetHelp - Set the category and help description line for a function
SetHelpAlias - Sets up a help alias
SetVElement - Set an element in a global variable which is a vector
UndefineAll - Undefine all unprotected (user defined) global variables and parameters.
Does not reset or change protected (system) parameters.
UserVariables - Return a vector of all global unprotected (user defined) variable names.
chdir - Changes current directory
display - Display a string and an expression
error - Prints a string to the error stream
exit,quit - Exits the program
false,False,FALSE - The false boolean value
manual - Displays the user manual
print - Prints an expression
printn - Prints an expression without a trailing newline
protect - Protect a variable from being modified. It will be treated as a system
defined variable from now on. Protected parameters can still be
modified.
set - Set a global variable
string - Make a string
true,True,TRUE - The true boolean value
undefine,Undefine - Undefine a variable (including all locals and globals of the same name)
unprotect - Unprotect a variable from being modified. It will be treated as a user
defined variable from now on.
version - Return version as a 3-vector
wait - Waits a specified number of seconds
warranty - Gives the warranty information
Parameters:
ChopTolerance - Tolerance of the Chop function
ContinuousNumberOfTries - How many iterations to try to find the limit for continuity and
limits
ContinuousSFS - How many successive steps to be within tolerance for calculation of
continuity
ContinuousTolerance - Tolerance for continuity of functions and for calculating the limit
DerivativeNumberOfTries - How many iterations to try to find the limit for derivative
DerivativeSFS - How many successive steps to be within tolerance for calculation of
derivative
DerivativeTolerance - Tolerance for calculating the derivatives of functions
ErrorFunctionTolerance - Tolerance of the ErrorFunction (used for complex values only)
FloatPrecision - Floating point precision
FullExpressions - Print full expressions, even if more than a line
GaussDistributionTolerance - Tolerance of the GaussDistribution function
IntegerOutputBase - Integer output base
IsPrimeMillerRabinReps - Number of extra Miller-Rabin tests to run on a number before declaring
it a prime in IsPrime
LinePlotDrawAxisLabels - If to draw axis labels on line plots.
LinePlotDrawLegends - If to draw legends or not on line plots.
LinePlotVariableNames - Default names used by all 2D plot functions. Should be a 4 vector of
strings or identifiers [x,y,z,t].
LinePlotWindow - Line plotting window (limits) as a 4-vector of the form [x1,x2,y1,y2]
MaxDigits - Maximum digits to display
MaxErrors - Maximum errors to display
MixedFractions - If true, mixed fractions are printed
NumericalIntegralFunction - The function used for numerical integration in NumericalIntegral
NumericalIntegralSteps - Steps to perform in NumericalIntegral
OutputChopExponent - Display 0.0 when floating point number is less than 10^-x (0=never chop)
OutputChopWhenExponent - Only chop numbers when another number is greater than 10^-x
OutputStyle - Output style: normal, latex, mathml or troff
ResultsAsFloats - Convert all results to floats before printing
ScientificNotation - Use scientific notation
SlopefieldTicks - Number of slopefield ticks as a vector [vertical,horizontal].
SumProductNumberOfTries - How many iterations to try for InfiniteSum and InfiniteProduct
SumProductSFS - How many successive steps to be within tolerance for InfiniteSum and
InfiniteProduct
SumProductTolerance - Tolerance for InfiniteSum and InfiniteProduct
SurfacePlotDrawLegends - If to draw legends or not on surface plots.
SurfacePlotVariableNames - Default names used by surface plot functions. Should be a 3 vector
of strings or identifiers [x,y,z] (where z=x+iy and not the
dependent axis).
SurfacePlotWindow - Surface plotting window (limits) as a 6-vector of the form
[x1,x2,y1,y2,z1,z2]
VectorfieldNormalized - Normalize vectorfields if true. That is, only show direction and not
magnitude.
VectorfieldTicks - Number of vectorfield ticks as a vector [vertical,horizontal].
Constants:
CatalanConstant - Catalan's Constant (0.915...)
EulerConstant,gamma - Euler's Constant gamma
GoldenRatio - The Golden Ratio
Gravity - Free fall acceleration
e - The natural number e
pi - The number pi
Numeric:
AbsoluteValue,abs - Absolute value
Chop - Replace very small number with zero
ComplexConjugate,conj,Conj - Calculates the conjugate
Denominator - Get the denominator of a rational number
FractionalPart - Return the fractional part of a number
Im,ImaginaryPart - Get the imaginary part of a complex number
IntegerQuotient - Division w/o remainder, equivalent to floor(a/b)
IsComplex - Check if argument is a complex (non-real) number
IsComplexRational - Check if argument is a possibly complex rational number
IsFloat - Check if argument is a floating point number (non-complex)
IsGaussInteger,IsComplexInteger - Check if argument is a possibly complex integer
IsInteger - Check if argument is an integer (non-complex)
IsNonNegativeInteger - Check if argument is a non-negative real integer
IsPositiveInteger,IsNaturalNumber - Check if argument is a positive real integer
IsRational - Check if argument is a rational number (non-complex)
IsReal - Check if argument is a real number
Numerator - Get the numerator of a rational number
Re,RealPart - Get the real part of a complex number
Sign,sign - Return the sign (-1,0,1)
ceil,Ceiling - Get the lowest integer more than or equal to n
exp - The exponential function
float - Make number a float
floor,Floor - Get the highest integer less than or equal to n
ln - The natural logarithm
log - Logarithm of any base (calls DiscreteLog if in modulo mode), if base is
not given, e is used
log10 - Logarithm of x base 10
log2,lg - Logarithm of x base 2
max,Max,Maximum - Returns the maximum of arguments or matrix
min,Min,Minimum - Returns the minimum of arguments or matrix
rand - Generate random float between 0 and 1, or if size given generate vector
or matrix of random floats
randint - Generate random integer between 0 and max-1 inclusive, or if size given
generate vector or matrix of random integers
round,Round - Round a number
sqrt,SquareRoot - The square root
trunc,Truncate,IntegerPart - Truncate number to an integer (return the integer part)
Trigonometry:
acos,arccos - The arccos (inverse cos) function
acosh,arccosh - The arccosh (inverse cosh) function
acot,arccot - The arccot (inverse cot) function
acoth,arccoth - The arccoth (inverse coth) function
acsc,arccsc - The inverse cosecant function
acsch,arccsch - The inverse hyperbolic cosecant function
asec,arcsec - The inverse secant function
asech,arcsech - The inverse hyperbolic secant function
asin,arcsin - The arcsin (inverse sin) function
asinh,arcsinh - The arcsinh (inverse sinh) function
atan,arctan - Calculates the arctan function
atan2,arctan2 - Calculates the arctan2 function (arctan(y/x) if x>0)
atanh,arctanh - The arctanh (inverse tanh) function
cos - Calculates the cosine function
cosh - Calculates the hyperbolic cosine function
cot - The cotangent function
coth - The hyperbolic cotangent function
csc - The cosecant function
csch - The hyperbolic cosecant function
sec - The secant function
sech - The hyperbolic secant function
sin - Calculates the sine function
sinh - Calculates the hyperbolic sine function
tan - Calculates the tan function
tanh - The hyperbolic tangent function
Number Theory:
AreRelativelyPrime - Are a and b relatively prime?
BernoulliNumber - Return the nth Bernoulli number
ChineseRemainder,CRT - Find the x that solves the system given by the vector a and modulo the
elements of m, using the Chinese Remainder Theorem
CombineFactorizations - Given two factorizations, give the factorization of the product, see
Factorize
ConvertFromBase - Convert a vector of values indicating powers of b to a number
ConvertToBase - Convert a number to a vector of powers for elements in base b
DiscreteLog - Find discrete log of n base b in F_q where q is a prime using the
Silver-Pohlig-Hellman algorithm
Divides - Checks divisibility (if m divides n)
EulerPhi - Compute phi(n), the Euler phi function, that is the number of integers
between 1 and n relatively prime to n
ExactDivision - Return n/d but only if d divides n else returns garbage (this is faster
than writing n/d)
Factorize - Return factorization of a number as a matrix
Factors - Return all factors of a number
FermatFactorization - Attempt Fermat factorization of n into (t-s)*(t+s), returns t and s as a
vector if possible, null otherwise
FindPrimitiveElementMod - Find the first primitive element in F_q (q must be a prime)
FindRandomPrimitiveElementMod - Find a random primitive element in F_q (q must be a prime)
IndexCalculus - Compute discrete log base b of n in F_q (q a prime) using the factor
base S. S should be a column of primes possibly with second column
precalculated by IndexCalculusPrecalculation.
IndexCalculusPrecalculation - Run the precalculation step of IndexCalculus for logarithms base
b in F_q (q a prime) for the factor base S (where S is a column
vector of primes). The logs will be precalculated and returned
in the second column.
IsEven - Tests if an integer is even
IsMersennePrimeExponent - Test if Mp is a Mersenne prime using a table
IsNthPower - Tests if a rational number is a perfect power
IsOdd - Tests if an integer is odd
IsPerfectPower - Check a number for being any perfect power (a^b)
IsPerfectSquare - Check a number for being a perfect square
IsPrime - Tests primality of integers, for numbers greater than 25*10^9 false
positive is with low probability depending on IsPrimeMillerRabinReps
IsPrimitiveMod - Check if g is primitive in F_q, where q is a prime. If q is not prime
results are bogus.
IsPrimitiveModWithPrimeFactors - Check if g is primitive in F_q, where q is a prime and f is a
vector of prime factors of q-1. If q is not prime results are
bogus.
IsPseudoprime - If n is a pseudoprime base b but not a prime, that is if b^(n-1) == 1
mod n
IsStrongPseudoprime - Test if n is a strong pseudoprime to base b but not a prime
Jacobi,JacobiSymbol - Calculate the Jacobi symbol (a/b) (b should be odd)
JacobiKronecker,JacobiKroneckerSymbol - Calculate the Jacobi symbol (a/b) with the Kronecker
extension (a/2)=(2/a) when a odd, or (a/2)=0 when a
even
LeastAbsoluteResidue - Return the residue of a mod n with the least absolute value (in the
interval -n/2 to n/2)
Legendre,LegendreSymbol - Calculate the Legendre symbol (a/p)
LucasLehmer - Test if Mp is a Mersenne prime using the Lucas-Lehmer test
LucasNumber - Returns the nth Lucas number
MaximalPrimePowerFactors - Return all maximal prime power factors of a number
MersennePrimeExponents - Vector with the known Mersenne prime exponents
MillerRabinTest - Use the Miller-Rabin primality test on n, reps number of times. The
probability of false positive is (1/4)^reps
MillerRabinTestSure - Use the Miller-Rabin primality test on n with enough bases that assuming
the Generalized Reimann Hypothesis the result is deterministic
ModInvert - Returns inverse of n mod m
MoebiusMu - Return the Moebius mu function evaluated in n
NextPrime - Returns the least prime greater than n (if n is positive)
PadicValuation - Returns the p-adic valuation (number of trailing zeros in base p).
PowerMod - Compute a^b mod m
Prime,prime - Return the nth prime (up to a limit)
PrimeFactors - Return all prime factors of a number
PseudoprimeTest - Pseudoprime test, true if and only if b^(n-1) == 1 (mod n)
RemoveFactor - Removes all instances of the factor m from the number n
SilverPohligHellmanWithFactorization - Find discrete log of n base b in F_q where q is a prime
using the Silver-Pohlig-Hellman algorithm, given f being
the factorization of q-1
SqrtModPrime - Find square root of n mod p (a prime). Null is returned if not a
quadratic residue.
StrongPseudoprimeTest - Run the strong pseudoprime test base b on n
gcd,GCD - Greatest common divisor
lcm,LCM - Least common multiplier
Matrix Manipulation:
ApplyOverMatrix - Apply a function over all entries of a matrix and return a matrix of the
results
ApplyOverMatrix2 - Apply a function over all entries of 2 matrices (or 1 value and 1
matrix) and return a matrix of the results
ColumnsOf - Gets the columns of a matrix as a horizontal vector
ComplementSubmatrix - Remove column(s) and row(s) from a matrix
CompoundMatrix - Calculate the kth compound matrix of A
CountZeroColumns - Count the number of zero columns in a matrix
DeleteColumn - Delete a column of a matrix
DeleteRow - Delete a row of a matrix
DiagonalOf - Gets the diagonal entries of a matrix as a column vector
DotProduct - Get the dot product of two vectors (no conjugates)
ExpandMatrix - Expands a matrix just like we do on unquoted matrix input
HermitianProduct,InnerProduct - Get the Hermitian product of two vectors
I,eye - Make an identity matrix of a given size
IndexComplement - Return the index complement of a vector of indexes
IsDiagonal - Is a matrix diagonal
IsIdentity - Check if a number or a matrix is 1 or identity respectively
IsLowerTriangular - Is a matrix lower triangular
IsMatrixInteger - Check if a matrix is an integer (non-complex) matrix
IsMatrixNonnegative - Check if a matrix is nonnegative, that is if each element is nonnegative
IsMatrixPositive - Check if a matrix is positive, that is if each element is positive
IsMatrixRational - Check if a matrix is a rational (non-complex) matrix
IsMatrixReal - Check if a matrix is a real (non-complex) matrix
IsMatrixSquare - Is a matrix square
IsUpperTriangular - Is a matrix upper triangular
IsValueOnly - Check if a matrix is a matrix of numbers
IsVector - Is argument a horizontal or a vertical vector
IsZero - Check if a number or a matrix is all zeros
LowerTriangular - Zero out entries above the diagonal
MakeDiagonal,diag - Make diagonal matrix from a vector
MakeVector - Make column vector out of matrix by putting columns above each other
MatrixProduct - Calculate the product of all elements in a matrix
MatrixSum - Calculate the sum of all elements in a matrix
MatrixSumSquares - Calculate the sum of squares of all elements in a matrix
NonzeroColumns - Return a vector with the indices of the nonzero columns in a matrix
NonzeroElements - Return a vector with the indices of the nonzero elements in a vector
OuterProduct - Get the outer product of two vectors
ReverseVector - Reverse elements in a vector
RowSum - Calculate sum of each row in a matrix
RowSumSquares - Calculate sum of squares of each row in a matrix
RowsOf - Gets the rows of a matrix as a vertical vector
SetMatrixSize - Make new matrix of given size from old one
ShuffleVector - Shuffle elements in a vector
SortVector - Sort vector elements
StripZeroColumns - Removes any all-zero columns of M
StripZeroRows - Removes any all-zero rows of M
Submatrix - Return column(s) and row(s) from a matrix
SwapRows - Swap two rows in a matrix
UpperTriangular - Zero out entries below the diagonal
columns - Get the number of columns of a matrix
elements - Get the number of elements of a matrix
ones - Make an matrix of all ones (or a row vector)
rows - Get the number of rows of a matrix
zeros - Make an matrix of all zeros (or a row vector)
Linear Algebra:
AuxiliaryUnitMatrix - Get the auxiliary unit matrix of size n
BilinearForm - Evaluate (v,w) with respect to the bilinear form given by the matrix A
BilinearFormFunction - Return a function that evaluates two vectors with respect to the
bilinear form given by A
CharacteristicPolynomial,CharPoly - Get the characteristic polynomial as a vector
CharacteristicPolynomialFunction - Get the characteristic polynomial as a function
ColumnSpace - Get a basis matrix for the columnspace of a matrix
CommutationMatrix - Return the commutation matrix K(m,n) which is the unique m*n by m*n
matrix such that K(m,n) * MakeVector(A) = MakeVector(A.') for all m by n
matrices A.
CompanionMatrix - Companion matrix of a polynomial (as vector)
ConjugateTranspose - Conjugate transpose of a matrix (adjoint)
Convolution,convol - Calculate convolution of two horizontal vectors
ConvolutionVector - Calculate convolution of two horizontal vectors
CrossProduct - CrossProduct of two vectors in R^3
DeterminantalDivisorsInteger - Get the determinantal divisors of an integer matrix (not its
characteristic)
DirectSum - Direct sum of matrices
DirectSumMatrixVector - Direct sum of a vector of matrices
Eigenvalues,eig - Get the eigenvalues of a matrix (Currently only for up to 4x4 or
triangular matrices)
Eigenvectors - Get the eigenvalues and eigenvectors of a matrix (Currently only for up
to 2x2 matrices)
GramSchmidt - Apply the Gram-Schmidt process (to the columns) with respect to inner
product given by B (if not given use Hermitian product)
HankelMatrix - Hankel matrix
HilbertMatrix - Hilbert matrix of order n
Image - Get the image (columnspace) of a linear transform
InfNorm - Get the Inf Norm of a vector
InvariantFactorsInteger - Get the invariant factors of a square integer matrix (not its
characteristic)
InverseHilbertMatrix - Inverse Hilbert matrix of order n
IsHermitian - Is a matrix Hermitian
IsInSubspace - Test if a vector is in a subspace
IsInvertible - Is a matrix (or number) invertible (Integer matrix is invertible if and
only if it is invertible over the integers)
IsInvertibleField - Is a matrix (or number) invertible over a field
IsNormal - Is a matrix normal
IsPositiveDefinite - Is a matrix positive definite
IsPositiveSemidefinite - Is a matrix positive semidefinite
IsSkewHermitian - Is a matrix skew-Hermitian
IsUnitary - Is a matrix unitary
JordanBlock,J - Get the Jordan block corresponding to lambda and n
Kernel - Get the kernel (nullspace) of a linear transform
KroneckerProduct,TensorProduct - Compute the Kronecker product of two matrices
LUDecomposition - Get the LU decomposition of A and store the result in the L and U which
should be references. If not possible returns false.
Minor - Get the i-j minor of a matrix
NonPivotColumns - Return the columns that are not the pivot columns of a matrix
Norm,norm - Get the p Norm (or 2 Norm if no p is supplied) of a vector
NullSpace - Get the nullspace of a matrix
Nullity,nullity - Get the nullity of a matrix
OrthogonalComplement - Get the orthogonal complement of the columnspace
PivotColumns - Return pivot columns of a matrix, that is columns which have a leading 1
in rref form, also returns the row where they occur
Projection - Projection of vector v onto subspace W given a sesquilinear form B (if
not given use Hermitian product)
QRDecomposition - Get the QR decomposition of A, returns R and Q can be a reference
Rank,rank - Get the rank of a matrix
RayleighQuotient - Return the Rayleigh quotient of a matrix and a vector
RayleighQuotientIteration - Compute an eigenvalue using the Rayleigh Quotient Iteration method
until we are epsilon from eigenvalue or for maxiter iterations
RosserMatrix - Rosser matrix, a classic symmetric eigenvalue test problem
Rotation2D,RotationMatrix - Rotation around origin in R^2
Rotation3DX - Rotation around origin in R^3 about the x-axis
Rotation3DY - Rotation around origin in R^3 about the y-axis
Rotation3DZ - Rotation around origin in R^3 about the z-axis
RowSpace - Get a basis matrix for the rowspace of a matrix
SesquilinearForm - Evaluate (v,w) with respect to the sesquilinear form given by the matrix
A
SesquilinearFormFunction - Return a function that evaluates two vectors with respect to the
sesquilinear form given by A
SmithNormalFormField - Smith Normal Form for fields (will end up with 1's on the diagonal)
SmithNormalFormInteger - Smith Normal Form for square integer matrices (not its characteristic)
SolveLinearSystem - Solve linear system Mx=V, return solution V if there is a unique
solution, null otherwise. Extra two reference parameters can optionally
be used to get the reduced M and V.
ToeplitzMatrix - Return the Toeplitz matrix constructed given the first column c and
(optionally) the first row r.
Trace,trace - Calculate the trace of a matrix
Transpose - Transpose of a matrix
VandermondeMatrix,vander - Return the Vandermonde matrix
VectorAngle - The angle of two vectors, given an inner product
VectorSpaceDirectSum - The direct sum of the vector spaces M and N
VectorSubspaceIntersection - Intersection of the subspaces given by M and N
VectorSubspaceSum - The sum of the vector spaces M and N, that is {w | w=m+n, m in M, n in
N}
adj,Adjugate - Get the classical adjoint (adjugate) of a matrix
cref,CREF,ColumnReducedEchelonForm - Compute the Column Reduced Echelon Form
det,Determinant - Get the determinant of a matrix
ref,REF,RowEchelonForm - Get the row echelon form of a matrix
rref,RREF,ReducedRowEchelonForm - Get the reduced row echelon form of a matrix
Combinatorics:
Catalan - Get nth Catalan number
Combinations - Get all combinations of k numbers from 1 to n as a vector of vectors
DoubleFactorial - Double factorial: n(n-2)(n-4)...
Factorial - Factorial: n(n-1)(n-2)...
FallingFactorial - Falling factorial: (n)_k = n(n-1)...(n-(k-1))
Fibonacci,fib - Calculate nth Fibonacci number
FrobeniusNumber - Calculate the Frobenius number for a coin problem
GaloisMatrix - Galois matrix given a linear combining rule (a_1*x_+...+a_n*x_n=x_(n+1))
GreedyAlgorithm - Use greedy algorithm to find c, for c . v = n. (v must be sorted)
HarmonicNumber,HarmonicH - Harmonic Number, the nth harmonic number of order r
Hofstadter - Hofstadter's function q(n) defined by q(1)=1, q(2)=1,
q(n)=q(n-q(n-1))+q(n-q(n-2))
LinearRecursiveSequence - Compute linear recursive sequence using Galois stepping
Multinomial - Calculate multinomial coefficients
NextCombination - Get combination that would come after v in call to combinations, first
combination should be [1:k].
Pascal - Get the Pascal's triangle as a matrix
Permutations - Get all permutations of k numbers from 1 to n as a vector of vectors
RisingFactorial,Pochhammer - (Pochhammer) Rising factorial: (n)_k = n(n+1)...(n+(k-1))
StirlingNumberFirst,StirlingS1 - Stirling number of the first kind
StirlingNumberSecond,StirlingS2 - Stirling number of the second kind
Subfactorial - Subfactorial: n! times sum_{k=1}^n (-1)^k/k!
Triangular - Calculate the nth triangular number
nCr,Binomial - Calculate combinations (binomial coefficient)
nPr - Calculate permutations
Calculus:
CompositeSimpsonsRule - Integration of f by Composite Simpson's Rule on the interval [a,b] with
n subintervals with error of max(f'''')*h^4*(b-a)/180, note that n
should be even
CompositeSimpsonsRuleTolerance - Integration of f by Composite Simpson's Rule on the interval
[a,b] with the number of steps calculated by the fourth
derivative bound and the desired tolerance
Derivative - Attempt to calculate derivative by trying first symbolically and then
numerically
EvenPeriodicExtension - Return a function which is the even periodic extension of f defined on
the interval [0,L]
FourierSeriesFunction - Return a function which is a Fourier series with the coefficients given
by the vectors a (sines) and b (cosines). Note that a@(1) is the
constant coefficient!
InfiniteProduct - Try to calculate an infinite product for a single parameter function
InfiniteProduct2 - Try to calculate an infinite product for a double parameter function
with func(arg,n)
InfiniteSum - Try to calculate an infinite sum for a single parameter function
InfiniteSum2 - Try to calculate an infinite sum for a double parameter function with
func(arg,n)
IsContinuous - Try and see if a real-valued function is continuous at x0 by calculating
the limit there
IsDifferentiable - Test for differentiability by approximating the left and right limits
and comparing
LeftLimit - Calculate the left limit of a real-valued function at x0
Limit - Calculate the limit of a real-valued function at x0. Tries to calculate
both left and right limits.
MidpointRule - Integration by midpoint rule
NumericalDerivative,NDerivative - Attempt to calculate numerical derivative
NumericalFourierCosineSeriesCoefficients - Numerically compute the coefficients for a cosine
Fourier series for a function on [0,L] up to the Nth
coefficient.
NumericalFourierCosineSeriesFunction - Return a function which is the Fourier cosine series of
f on [0,L] with coefficients up to N computed
numerically
NumericalFourierSeriesCoefficients - Numerically compute the coefficients for a Fourier series
with half-period L up to the Nth coefficient.
NumericalFourierSeriesFunction - Return a function which is the Fourier series of f with
half-period L with coefficients up to N computed numerically
NumericalFourierSineSeriesCoefficients - Numerically compute the coefficients for a sine
Fourier series for a function on [0,L] up to the Nth
coefficient.
NumericalFourierSineSeriesFunction - Return a function which is the Fourier sine series of f on
[0,L] with coefficients up to N computed numerically
NumericalIntegral - Integration by rule set in NumericalIntegralFunction of f from a to b
using NumericalIntegralSteps steps
NumericalLeftDerivative - Attempt to calculate numerical left derivative
NumericalLimitAtInfinity - Attempt to calculate the limit of f(step_fun(i)) as i goes from 1 to
N
NumericalRightDerivative - Attempt to calculate numerical right derivative
OddPeriodicExtension - Return a function which is the odd periodic extension of f defined on
the interval [0,L]
OneSidedFivePointFormula - Compute one-sided derivative using five point formula
OneSidedThreePointFormula - Compute one-sided derivative using three-point formula
PeriodicExtension - Return a function which is the periodic extension of f defined on the
interval [a,b]
RightLimit - Calculate the right limit of a real-valued function at x0
TwoSidedFivePointFormula - Compute two-sided derivative using five-point formula
TwoSidedThreePointFormula - Compute two-sided derivative using three-point formula
Functions:
Argument,Arg,arg - argument (angle) of complex number
BesselJ0 - The Bessel function of first kind of order 0
BesselJ1 - The Bessel function of first kind of order 1
BesselJn - The Bessel function of first kind of order n
BesselY0 - The Bessel function of second kind of order 0
BesselY1 - The Bessel function of second kind of order 1
BesselYn - The Bessel function of second kind of integer order n
DirichletKernel - Dirichlet kernel of order n
DiscreteDelta - Returns 1 if and only if all elements are zero
ErrorFunction,erf - The error function, 2/sqrt(2) * int_0^x e^(-t^2) dt
FejerKernel - Fejer kernel of order n
GammaFunction,Gamma - The Gamma function (only real values implemented)
KroneckerDelta - Returns 1 if and only if all elements are equal
LambertW - Principal branch of the Lambert W function for real values greater than
or equal to -1/e
LambertWm1 - The minus-one branch of the Lambert W function for real values between
-1/e and 0
MinimizeFunction - Find the first value where f(x)=0
MoebiusDiskMapping - Moebius mapping of the disk to itself mapping a to 0
MoebiusMapping - Moebius mapping using the cross ratio taking z2,z3,z4 to 1,0, and
infinity respectively
MoebiusMappingInftyToInfty - Moebius mapping using the cross ratio taking infinity to infinity
and z2,z3 to 1 and 0 respectively
MoebiusMappingInftyToOne - Moebius mapping using the cross ratio taking infinity to 1 and z3,z4
to 0 and infinity respectively
MoebiusMappingInftyToZero - Moebius mapping using the cross ratio taking infinity to 0 and
z2,z4 to 1 and infinity respectively
PoissonKernel - Poisson kernel on D(0,1) (not normalized to 1, that is integral of this
is 2pi)
PoissonKernelRadius - Poisson kernel on D(0,R) (not normalized to 1)
RiemannZeta,zeta - The Riemann zeta function (only real values implemented)
UnitStep - The unit step function = 0 for x<0, 1 otherwise. This is the integral
of the Dirac Delta function.
cis - The cis function, that is cos(x)+i*sin(x)
deg2rad - Convert degrees to radians
rad2deg - Convert radians to degrees
sinc - Calculates the sinc function, that is sin(x)/x
Equation Solving:
CubicFormula - Find roots of a cubic polynomial (given as vector of coefficients)
EulersMethod - Use classical Euler's method to numerically solve y'=f(x,y) for initial
x0,y0 going to x1 with n increments, returns y at x1
EulersMethodFull - Use classical Euler's method to numerically solve y'=f(x,y) for initial
x0,y0 going to x1 with n increments, returns an n+1 by 2 matrix of
values
FindRootBisection - Find root of a function using the bisection method to within TOL
tolerance in up to N iterations. f(a) and f(b) must have opposite
signs.
FindRootFalsePosition - Find root of a function using the method of false position to within
TOL tolerance in up to N iterations. f(a) and f(b) must have opposite
signs.
FindRootMullersMethod - Find root of a function using the Muller's method
FindRootSecant - Find root of a function using the secant method to within TOL tolerance
in up to N iterations. f(a) and f(b) must have opposite signs.
HalleysMethod - Attempt to find a zero of a functionf with derivative df and second
derivative ddf using Halleys's method, returning after two successive
values are within epsilon or after maxn tries (then returns null)
NewtonsMethod - Attempt to find a zero of a functionf with derivative df using Newton's
method, returning after two successive values are within epsilon or
after maxn tries (then returns null)
PolynomialRoots - Find roots of a polynomial (given as vector of coefficients)
QuadraticFormula - Find roots of a quadratic polynomial (given as vector of coefficients)
QuarticFormula - Find roots of a quartic polynomial (given as vector of coefficients)
RungeKutta - Use classical non-adaptive Runge-Kutta of fourth order method to
numerically solve y'=f(x,y) for initial x0,y0 going to x1 with n
increments, returns y at x1
RungeKuttaFull - Use classical non-adaptive Runge-Kutta of fourth order method to
numerically solve y'=f(x,y) for initial x0,y0 going to x1 with n
increments, returns an n+1 by 2 matrix of values
Statistics:
Average,average,Mean,mean - Calculate average of an entire matrix
GaussDistribution - Integral of the GaussFunction from 0 to x (area under the normal curve)
GaussFunction - The normalized Gauss distribution function (the normal curve)
Median,median - Calculate median of an entire matrix
PopulationStandardDeviation,stdevp - Calculate the population standard deviation of a whole
matrix
RowAverage,RowMean - Calculate average of each row in a matrix
RowMedian - Calculate median of each row in a matrix
RowPopulationStandardDeviation,rowstdevp - Calculate the population standard deviations of rows
of a matrix and return a vertical vector
RowStandardDeviation,rowstdev - Calculate the standard deviations of rows of a matrix and
return a vertical vector
StandardDeviation,stdev - Calculate the standard deviation of a whole matrix
Polynomials:
AddPoly - Add two polynomials (vectors)
DividePoly - Divide polynomial p by q, return the remainder in r
IsPoly - Check if a vector is usable as a polynomial
MultiplyPoly - Multiply two polynomials (as vectors)
NewtonsMethodPoly - Attempt to find a root of a polynomial using Newton's method, returning
after two successive values are within epsilon or after maxn tries (then
returns null)
Poly2ndDerivative - Take second polynomial (as vector) derivative
PolyDerivative - Take polynomial (as vector) derivative
PolyToFunction - Make function out of a polynomial (as vector)
PolyToString - Make string out of a polynomial (as vector)
SubtractPoly - Subtract two polynomials (as vectors)
TrimPoly - Trim zeros from a polynomial (as vector)
Set Theory:
Intersection - Returns a set theoretic intersection of X and Y (X and Y are vectors
pretending to be sets)
IsIn - Returns true if the element x is in the set X (where X is a vector
pretending to be a set)
IsSubset - Returns true if X is a subset of Y
MakeSet - Returns a set where every element of X appears only once
SetMinus - Returns a set theoretic difference X-Y (X and Y are vectors pretending
to be sets)
Union - Returns a set theoretic union of X and Y (X and Y are vectors pretending
to be sets)
Commutative Algebra:
MacaulayBound - For a Hilbert function that is c for degree d, given the Macaulay bound
for the Hilbert function of degree d+1 (The c^ operator from Green's
proof)
MacaulayLowerOperator - The c_ operator from Green's proof of Macaulay's Theorem
MacaulayRep - Return the dth Macaulay representation of a positive integer c
Miscellaneous:
ASCIIToString - Convert a vector of ASCII values to a string
AlphabetToString - Convert a vector of 0-based alphabet values (positions in the alphabet
string) to a string
StringToASCII - Convert a string to a vector of ASCII values
StringToAlphabet - Convert a string to a vector of 0-based alphabet values (positions in
the alphabet string), -1's for unknown letters
Symbolic Operations:
SymbolicDerivative - Attempt to symbolically differentiate the function f, where f is a
function of one variable.
SymbolicDerivativeTry - Attempt to symbolically differentiate the function f, where f is a
function of one variable, returns null if unsuccessful but is silent.
SymbolicNthDerivative - Attempt to symbolically differentiate a function n times
SymbolicNthDerivativeTry - Attempt to symbolically differentiate a function n times quietly and
return null on failure
SymbolicTaylorApproximationFunction - Attempt to construct the Taylor approximation function
around x0 to the nth degree.
Plotting:
ExportPlot - Export the current contents of the plot canvas to a file. The file type
is given by the string type, which can be "png", "eps", or "ps".
LinePlot - Plot a function with a line. First come the functions (up to 10) then
optionally limits as x1,x2,y1,y2
LinePlotCParametric - Plot a parametric complex valued function with a line. First comes the
function that returns x+iy then optionally the t limits as t1,t2,tinc,
then optionally the limits as x1,x2,y1,y2
LinePlotClear - Show the line plot window and clear out functions
LinePlotDrawLine - Draw a line from x1,y1 to x2,y2. x1,y1,x2,y2 can be replaced by a n by
2 matrix for a longer line.
LinePlotDrawPoints - Draw a point at x,y. x,y can be replaced by a n by 2 matrix for more
points.
LinePlotParametric - Plot a parametric function with a line. First come the functions for x
and y then optionally the t limits as t1,t2,tinc, then optionally the
limits as x1,x2,y1,y2
PlotCanvasFreeze - Freeze the plot canvas, that is, inhibit drawing
PlotCanvasThaw - Thaw the plot canvas and redraw the plot immediately
PlotWindowPresent - Raise the plot window, and create the window if necessary
SlopefieldClearSolutions - Clear all the slopefield solutions
SlopefieldDrawSolution - Draw a solution for a slope field starting at x,y and using dx as
increment
SlopefieldPlot - Draw a slope field. First comes the function dy/dx in terms of x and y
(or a complex z) then optionally the limits as x1,x2,y1,y2
SurfacePlot - Plot a surface function which takes either two arguments or a complex
number. First comes the function then optionally limits as
x1,x2,y1,y2,z1,z2
SurfacePlotClear - Show the surface (3d) plot window and clear out functions
SurfacePlotData - Plot surface data given as n by 3 matrix (n>=3) of data with each row
being x,y,z. Optionally can pass a label string and limits. If no
limits passed, limits computed from data.
SurfacePlotDataGrid - Plot surface data given as a matrix (where rows are the x coordinate and
columns are the y coordinate), the limits are given as [x1,x2,y1,y2] or
optionally [x1,x2,y1,y2,z1,z2], and optionally a string for the label.
SurfacePlotDrawLine - Draw a line from x1,y1,z1 to x2,y2,z2 on the surface (3d) plot.
x1,y1,z1,x2,y2,z2 can be replaced by a n by 3 matrix for a longer line
SurfacePlotDrawPoints - Draw a point at x,y,z on the surface (3d) plot. x,y,z can be replaced
by a n by 3 matrix for more points.
VectorfieldClearSolutions - Clear all the vectorfield solutions
VectorfieldDrawSolution - Draw a solution for a vector field starting at x,y, using dt as
increment for tlen units
VectorfieldPlot - Draw a vector field. First come the functions dx/dt and dy/dt in terms
of x and y then optionally the limits as x1,x2,y1,y2
genius>