You can use Genius Math Tool for Numerical equation solving. You can download Genius Math Tool from http://www.jirka.org/genius.html
There are many calculations that you can do using Genius Math Tool beside Numerical equation solving, such as:
Basic:
Ask a question and return a string. Optionally pass in a default; Compose two functions; Compose a function with itself n times, passing x as argument, and returning x if n == 0; Parse and evaluate a string; Get current modulo from the context outside the function; Identity function, returns its argument; Make integer (0 or 1) from a boolean value; Check if argument is a boolean (and not a number); Check if a variable or function is defined; Check if argument is a function; Check if argument is a function or an identifier; Check if argument is a function reference; Check if argument is a matrix; Check if argument is a null; Check if argument is a text string; Check if argument is a number; Parse a string (but do not execute); Mark all currently defined variables as protected. They will be treated as system defined variables from now on; Set flags for a function, currently “PropagateMod” and “NoModuloArguments”; Set the category and help description line for a function Sets up a help alias; Undefine all unprotected (user defined) global variables and parameters. Does not reset or change protected (system) parameters; Return a vector of all global unprotected (user defined) variable names; Changes current directory; Display a string and an expression; Prints a string to the error stream; Exits the program; The false boolean value; Displays the user manual; Prints an expression; Prints an expression without a trailing newline; 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 a global variable; Make a string; The true boolean value; Undefine a variable (including all locals and globals of the same name); Unprotect a variable from being modified. It will be treated as a user defined variable from now on; Return version as a 3-vector; Waits a specified number of seconds; Gives the warranty information.
Parameters:
Tolerance of the Chop function; How many iterations to try to find the limit for continuity and limits; How many successive steps to be within tolerance for calculation of continuity; Tolerance for continuity of functions and for calculating the limit; How many iterations to try to find the limit for derivative; How many successive steps to be within tolerance for calculation of derivative; Tolerance for calculating the derivatives of functions; Tolerance of the ErrorFunction; Floating point precision; Print full expressions, even if more than a line; Tolerance of the GaussDistribution function; Integer output base; Number of extra Miller-Rabin tests to run on a number before declaring it a prime in IsPrime; If to draw legends or not on line plots; Line plotting window (limits) as a 4-vector of the form [x1,x2,y1,y2]; Maximum digits to display; Maximum errors to display; If true, mixed fractions are printed; The function used for numerical integration in NumericalIntegral; Steps to perform in NumericalIntegral; Display 0.0 when floating point number is less than 10^-x (0=never chop); Only chop numbers when another number is greater than 10^-x; Output style: normal, latex, mathml or troff; Convert all results to floats before printing; Use scientific notation; How many iterations to try for InfiniteSum and InfiniteProduct; How many successive steps to be within tolerance for InfiniteSum and InfiniteProduct; Tolerance for InfiniteSum and InfiniteProduct; Surface plotting window (limits) as a 6-vector of the form [x1,x2,y1,y2,z1,z2]; Normalize vectorfields if true. That is, only show direction and not magnitude.
Constants:
Catalan’s Constant (0.915…); Euler’s Constant gamma; The Golden Ratio; Free fall acceleration; The natural number e; The number pi.
Numeric:
Absolute value; Replace very small number with zero; Calculates the conjugate; Get the denominator of a rational number; Return the fractional part of a number; Get the imaginary part of a complex number; Division w/o remainder; Check if argument is a complex (non-real) number; Check if argument is a possibly complex rational number; Check if argument is a floating point number (non-complex); Check if argument is a possibly complex integer; Check if argument is an integer (non-complex); Check if argument is a non-negative real integer; Check if argument is a positive real integer; Check if argument is a rational number (non-complex); Check if argument is a real number; Get the numerator of a rational number; Get the real part of a complex number; Return the sign (-1,0,1); Get the lowest integer more than or equal to n; The exponential function; Make number a float; Get the highest integer less than or equal to n; The natural logarithm; Logarithm of any base (calls DiscreteLog if in modulo mode), if base is not given, e is used; Logarithm of x base 10; Logarithm of x base 2; Returns the maximum of arguments or matrix; Returns the minimum of arguments or matrix; Generate random float; Generate random integer; Round a number; The square root; Truncate number to an integer (return the integer part).
Trigonometry:
The arccos (inverse cos) function; The arccosh (inverse cosh) function; The arccot (inverse cot) function; The arccoth (inverse coth) function; The inverse cosecant function; The inverse hyperbolic cosecant function; The inverse secant function; The inverse hyperbolic secant function; The arcsin (inverse sin) function; The arcsinh (inverse sinh) function; Calculates the arctan function; Calculates the arctan2 function (arctan(y/x) if x>0); The arctanh (inverse tanh) function; Calculates the cosine function; Calculates the hyperbolic cosine function; The cotangent function; The hyperbolic cotangent function; The cosecant function; The hyperbolic cosecant function; The secant function; The hyperbolic secant function; Calculates the sine function; Calculates the hyperbolic sine function; Calculates the tan function; The hyperbolic tangent function.
Number Theory:
Are a and b relatively prime?; Return the nth Bernoulli number; Find the x that solves the system given by the vector a and modulo the elements of m, using the Chinese Remainder Theorem; Given two factorizations, give the factorization of the product, see Factorize; Convert a vector of values indicating powers of b to a number; Convert a number to a vector of powers for elements in base b; Find discrete log of n base b in F_q where q is a prime using the Silver-Pohlig-Hellman algoritm; Checks divisibility (if m divides n); Compute phi(n), the Euler phi function, that is the number of integers between 1 and n relatively prime to n; Return n/d but only if d divides n else returns garbage (this is faster than writing n/d); Return factorization of a number as a matrix; Return all factors of a number; Attempt fermat factorization of n into (t-s)*(t+s), returns t and s as a vector if possible, null otherwise; Find the first primitive element in F_q (q must be a prime); Find a random primitive element in F_q (q must be a prime); 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; 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; Tests if an integer is even; Test if Mp is a Mersenne prime using a table; Tests if a rational number is a perfect power; Tests if an integer is odd; Check a number for being any perfect power (a^b); Check a number for being a perfect square; Tests primality of integers, for numbers greater than 25*10^9 false positive is with low probability depending on IsPrimeMillerRabinReps; Check if g is primitive in F_q, where q is a prime. If q is not prime results are bogus; 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; If n is a pseudoprime base b but not a prime, that is if b^(n-1) == 1 mod n; Test if n is a strong pseudoprime to base b but not a prime; Calculate the Jacobi symbol (a/b) (b should be odd); Calculate the Jacobi symbol (a/b) with the Kronecker extension (a/2)=(2/a) when a odd, or (a/2)=0 when a even; Return the residue of a mod n with the least absolute value (in the interval -n/2 to n/2); Calculate the Legendre symbol (a/p); Test if Mp is a Mersenne prime using the Lucas-Lehmer test; Returns the n’th Lucas number; Return all maximal prime power factors of a number; Vector with the known Mersenne prime exponents; Use the Miller-Rabin primality test on n, reps number of times. The probability of false positive is (1/4)^reps; Use the Miller-Rabin primality test on n with enough bases that assuming the Generalized Reimann Hypothesis the result is deterministic; Returns inverse of n mod m; Return the Moebius mu function evaluated in n; Returns the least prime greater than n (if n is positive); Returns the padic valuation (number of trailing zeros in base p); Compute a^b mod m; Return the n’th prime (up to a limit); Return all prime factors of a number; Pseudoprime test, true iff b^(n-1) == 1 (mod n); Removes all instances of the factor m from the number n; Find discrete log of n base b in F_q where q is a prime using the Silver-Pohlig-Hellman algoritm, given f being the factorization of q-1; Find square root of n mod p (a prime). Null is returned if not a quadratic residue; Run the strong pseudoprime test base b on n; Greatest common divisor; Least common multiplier.
Matrix Manipulation:
Apply a function over all entries of a matrix and return a matrix of the results; Apply a function over all entries of 2 matrices (or 1 value and 1 matrix) and return a matrix of the results; Gets the columns of a matrix as a horizontal vector; Remove column(s) and row(s) from a matrix; Calculate the kth compund matrix of A; Count the number of zero columns in a matrix; Delete a column of a matrix; Delete a row of a matrix; Gets the diagonal entries of a matrix as a column vector; Get the dot product of two vectors (no conjugates); Expands a matrix just like we do on unquoted matrix input; Get the hermitian product of two vectors; Make an identity matrix of a given size; Return the index complement of a vector of indexes; Is a matrix diagonal; Check if a number or a matrix is 1 or identity respectively; Is a matrix lower triangular; Check if a matrix is an integer (non-complex) matrix; Check if a matrix is nonnegative, that is if each element is nonnegative; Check if a matrix is positive, that is if each element is positive; Check if a matrix is a rational (non-complex) matrix; Check if a matrix is a real (non-complex) matrix; Is a matrix square; Is a matrix upper triangular; Check if a matrix is a matrix of numbers; Is argument a horizontal or a vertical vector; Check if a number or a matrix is all zeros; Zero out entries above the diagonal; Make diagonal matrix from a vector; Make column vector out of matrix by putting columns above each other; Calculate the product of all elements in a matrix; Calculate the sum of all elements in a matrix; Calculate the sum of squares of all elements in a matrix; Get the outer product of two vectors; Reverse elements in a vector; Calculate sum of each row in a matrix; Calculate sum of squares of each row in a matrix; Gets the rows of a matrix as a vertical vector; Make new matrix of given size from old one; Sort vector elements; Removes any all-zero columns of M; Removes any all-zero rows of M; Return column(s) and row(s) from a matrix; Swap two rows in a matrix; Zero out entries below the diagonal; Get the number of columns of a matrix; Get the number of elements of a matrix; Make an matrix of all ones (or a row vector); Get the number of rows of a matrix; Make an matrix of all zeros (or a row vector).
Linear Algebra:
Get the auxilliary unit matrix of size n; Evaluate (v,w) with respect to the bilinear form given by the matrix A; Return a function that evaluates two vectors with respect to the bilinear form given by A; Get the characteristic polynomial as a vector; Get the characteristic polynomial as a function; Get a basis matrix for the columnspace of a matrix; 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; Companion matrix of a polynomial (as vector); Conjugate transpose of a matrix (adjoint); Calculate convolution of two horizontal vectors; Calculate convolution of two horizontal vectors; CrossProduct of two vectors in R^3; Get the determinantal divisors of an integer matrix (not its characteristic); Direct sum of matrices; Direct sum of a vector of matrices; Get the eigenvalues of a matrix (Currently only for up to 4×4 or triangular matrices); Get the eigenvalues and eigenvectors of a matrix (Currently only for up to 2×2 matrices); Apply the Gram-Schmidt process (to the columns) with respect to inner product given by B (if not given use hermitian product); Hankel matrix; Hilbert matrix of order n; Get the image (columnspace) of a linear transform; Get the Inf Norm of a vector; Get the invariant factors of a square integer matrix (not its characteristic); Inverse Hilbert matrix of order n; Is a matrix hermitian; Test if a vector is in a subspace; Is a matrix (or number) invertible (Integer matrix is invertible iff it’s invertible over the integers); Is a matrix (or number) invertible over a field; Is a matrix normal; Is a matrix positive definite; Is a matrix positive semidefinite; Is a matrix skew-hermitian; Is a matrix unitary; Get the jordan block corresponding to lambda and n; Get the kernel (nullspace) of a linear transform; Get the LU decomposition of A and store the result in the L and U which should be references. If not possible returns false; Get the i-j minor of a matrix; Return the columns that are not the pivot columns of a matrix; Get the p Norm (or 2 Norm if no p is supplied) of a vector; Get the nullspace of a matrix; Get the nullity of a matrix; Get the orthogonal complement of the columnspace; 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 of vector v onto subspace W given a sesquilinear form B (if not given use hermitian product); Get the QR decomposition of A, returns R and Q can be a reference; Get the rank of a matrix; Return the Rayleigh quotient of a matrix and a vector; Compute an eigenvalue using the Rayleigh Quotient Iteration method until we are epsilon from eigenvalue or for maxiter iterations; Rosser matrix, a classic symmetric eigenvalue test problem; Rotation around origin in R^2; Rotation around origin in R^3 about the x-axis; Rotation around origin in R^3 about the y-axis; Rotation around origin in R^3 about the z-axis; Get a basis matrix for the rowspace of a matrix; Evaluate (v,w) with respect to the sesquilinear form given by the matrix A; Return a function that evaluates two vectors with respect to the sesquilinear form given by A; Smith Normal Form for fields (will end up with 1′s on the diagonal); Smith Normal Form for square integer matrices (not its characteristic); 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; Return the Toeplitz matrix constructed given the first column c and (optionally) the first row r; Calculate the trace of a matrix; Transpose of a matrix; Return the Vandermonde matrix; The angle of two vectors, given an inner product; The direct sum of the vector spaces M and N; Intersection of the subspaces given by M and N; The sum of the vector spaces M and N, that is {w | w=m+n, m in M, n in N}; Get the classical adjoint (adjugate) of a matrix; Compute the Column Reduced Echelon Form; Get the determinant of a matrix; Get the row echelon form of a matrix; Get the reduced row echelon form of a matrix.
Combinatorics:
Get n’th catalan number; Get all combinations of k numbers from 1 to n as a vector of vectors; Double factorial: n(n-2)(n-4)…; Factorial: n(n-1)(n-2)…; Falling factorial: (n)_k = n(n-1)…(n-(k-1)); Calculate n’th Fibonacci number; Calculate the Frobenius number for a coin problem; Galois matrix given a linear combining rule (a_1*x_+…+a_n*x_n=x_(n+1)); Use greedy algorithm to find c, for c . v = n. (v must be sorted); Harmonic Number, the nth harmonic number of order r; 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)); Compute linear recursive sequence using galois stepping; Calculate multinomial coefficients; Get combination that would come after v in call to combinations, first combination should be [1:k]; Get the pascal’s triangle as a matrix; Get all permutations of k numbers from 1 to n as a vector of vectors; (Pochhammer) Rising factorial: (n)_k = n(n+1)…(n+(k-1)); Stirling number of the first kind; Stirling number of the second kind; Subfactorial: n! times sum_{k=1}^n (-1)^k/k!; Calculate the nth triangular number; Calculate combinations (binomial coefficient); Calculate permutations.
Calculus:
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; 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; Attempt to calculate derivative by trying first symbolically and then numerically; Return a function which is the even periodic extension of f defined on the interval [0,L]; 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!; Try to calculate an infinite product for a single parameter function; Try to calculate an infinite product for a double parameter function with func(arg,n); Try to calculate an infinite sum for a single parameter function; Try to calculate an infinite sum for a double parameter function with func(arg,n); Try and see if a real-valued function is continuous at x0 by calculating the limit there; Test for differentiability by approximating the left and right limits and comparing; Calculate the left limit of a real-valued function at x0; Calculate the limit of a real-valued function at x0. Tries to calculate both left and right limits; Integration by midpoint rule; Attempt to calculate numerical derivative; Numerically compute the coefficients for a cosine Fourier series for a function on [0,L] up to the Nth coefficient; Return a function which is the Fourier cosine series of f on [0,L] with coefficients up to N computed numerically; Numerically compute the coefficients for a Fourier series with half-period L up to the Nth coefficient; Return a function which is the Fourier series of f with half-period L with coefficients up to N computed numerically; Numerically compute the coefficients for a sine Fourier series for a function on [0,L] up to the Nth coefficient; Return a function which is the Fourier sine series of f on [0,L] with coefficients up to N computed numerically; Integration by rule set in NumericalIntegralFunction of f from a to b using NumericalIntegralSteps steps; Attempt to calculate numerical left derivative; Attempt to calculate the limit of f(step_fun(i)) as i goes from 1 to N; Attempt to calculate numerical right derivative; Return a function which is the odd periodic extension of f defined on the interval [0,L]; Compute one-sided derivative using five point formula; Compute one-sided derivative using three-point formula; Return a function which is the periodic extension of f defined on the interval [a,b]; Calculate the right limit of a real-valued function at x0; Compute two-sided derivative using five-point formula; Compute two-sided derivative using three-point formula.
Functions:
argument (angle) of complex number; Dirichlet kernel of order n; Returns 1 iff all elements are zero; The error function, 2/sqrt(pi) * int_0^x e^(-t^2) dt; Fejer kernel of order n; The Gamma function (only real values implemented); Returns 1 iff all elements are equal; Find the first value where f(x)=0; Moebius mapping of the disk to itself mapping a to 0; Moebius mapping using the cross ratio taking z2,z3,z4 to 1,0, and infinity respectively; Moebius mapping using the cross ratio taking infinity to infinity and z2,z3 to 1 and 0 respectively; Moebius mapping using the cross ratio taking infinity to 1 and z3,z4 to 0 and infinity respectively; Moebius mapping using the cross ratio taking infinity to 0 and z2,z4 to 1 and infinity respectively; Poisson kernel on D(0,1) (not normalized to 1, that is integral of this is 2pi); Poisson kernel on D(0,R) (not normalized to 1); The Riemann zeta function (only real values implemented); The unit step function = 0 for x<0, 1 otherwise. This is the integral of the Dirac Delta function; The cis function, that is cos(x)+i*sin(x); Convert degrees to radians; Convert radians to degrees.
Equation Solving:
Find roots of a cubic polynomial (given as vector of coefficients); 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; Find root of a function using the bisection method; Find root of a function using the method of false position; Find root of a function using the Muller’s method; Find root of a function using the secant method; Find roots of a polynomial (given as vector of coefficients); Find roots of a quadratic polynomial (given as vector of coefficients); Find roots of a quartic polynomial (given as vector of coefficients); 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.
Statistics:
Calculate average of an entire matrix; Integral of the GaussFunction from 0 to x (area under the normal curve); The normalized Gauss distribution function (the normal curve); Calculate median of an entire matrix; Calculate the population standard deviation of a whole matrix; Calculate average of each row in a matrix; Calculate median of each row in a matrix; Calculate the population standard deviations of rows of a matrix and return a vertical vector; Calculate the standard deviations of rows of a matrix and return a vertical vector; Calculate the standard deviation of a whole matrix.
Polynomials:
Add two polynomials (vectors); Divide polynomial p by q, return the remainder in r; Check if a vector is usable as a polynomial; Multiply two polynomials (as vectors); Run newton’s method on a polynomial to attempt to find a root, returns after two successive values are within epsilon or after maxn tries (then returns null); Take second polynomial (as vector) derivative; Take polynomial (as vector) derivative; Make function out of a polynomial (as vector); Make string out of a polynomial (as vector); Subtract two polynomials (as vectors); Trim zeros from a polynomial (as vector).
Set Theory:
Returns a set theoretic intersection of X and Y (X and Y are vectors pretending to be sets); Returns true if the element x is in the set X (where X is a vector pretending to be a set); Returns true if X is a subset of Y; Returns a set where every element of X appears only once; Returns a set theoretic difference X-Y (X and Y are vectors pretending to be sets); Returns a set theoretic union of X and Y (X and Y are vectors pretending to be sets).
Miscellaneous:
Convert a vector of ASCII values to a string; Convert a vector of 0-based alphabet values (positions in the alphabet string) to a string; Convert a string to a vector of ASCII values; Convert a string to a vector of 0-based alphabet values (positions in the alphabet string), -1′s for unknown letters.
Symbolic Operations:
Attempt to symbolically differentiate the function f, where f is a function of one variable; Attempt to symbolically differentiate the function f, where f is a function of one variable, returns null if unsuccessful but is silent; Attempt to symbolically differentiate a function n times; Attempt to symbolically differentiate a function n times quietly and return null on failure; Attempt to construct the taylor approximation function around x0 to the nth degree.
Plotting:
Plot a function with a line. First come the functions (up to 10) then optionally limits as x1,x2,y1,y2; 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; Show the line plot window and clear out functions; 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; 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; Clear all the slopefield solutions; Draw a solution for a slope field starting at x,y and using dx as increment; 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; 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; Clear all the vectorfield solutions; Draw a solution for a vector field starting at x,y, using dt as increment for tlen units; 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.