Package and command for the numerical evaluation of mathematical expressions, allowing for the use of different numerical methods in the case of Heun and Appell functions
Evalf is both a command and a package of commands for the numerical evaluation of mathematical expressions and functions, numerical experimentation, and fast development of numerical algorithms, taking advantage of the advanced symbolic capabilities of the Maple computer algebra system. This kind of numerical/symbolic environment is increasingly relevant nowadays, when rather complicated mathematical expressions and advanced special functions, as for instance is the case of the Heun and Appell functions, appear more and more in the modeling of problems in science.
The Evalf environment is also an excellent helper for understanding how numerical algorithms work, placing some of the typical numerical approaches used in the literature at the tip of your fingers, in a flexible and friendly manner.
The Evalf command allows, among other things, for the indication of different numerical methods to evaluate the mathematical functions involved in an algebraic expression. In this version, Evalf implements optional arguments for the 10 Heun and 4 Appell functions. For anything else Evalf works the same as the standard evalf command. The options implemented for numerical evaluation, generally speaking, are divided into four groups:
numerical methods options;
As a package, Evalf contains the following commands:
Brief description of the commands of the Evalf package
Add accepts a procedure with a formula that depends on one integer parameter, say n, or two of them, and numerically evaluates the formula adding it from n=0 until the result converges with the current value of Digits, or the value n=10000⁢Digits is reached.
Evalb works as evalb but can handle boolean expressions involving the functions as And, Or, Not and interpreting the integer types integer, posint, negint, nonposint, nonnegint, even and odd in an extended sense to include floats, for example: 1. is considered of type integer and −4. is considered of type negint and even.
GenerateRecurrence accepts a mathematical function (currently working only with the four Appell functions) and returns a procedure to compute the nth coefficient of a power series expansion of the given function around the origin as a function of the n−1 previous coefficients, where n depends on the function given.
PairwiseSummation accepts a one-dimensional Array or a procedure of one argument, say U and performs a pairwise summation of U⁡j for j from given m to n, or from the lower to the upper bound of the given Array. Pairwise summation is a technique to add floating-point numbers that significantly reduces the accumulated round-off error if compared to adding the numbers one at a time.
QuadrantNumbers accepts a complex number and returns the quadrant of the complex plane where the number is located, or it accepts a list of numbers, and returns an Array of four lists, corresponding to each quadrant, of random complex numbers that are around the numbers indicated.
Singularities accepts a Heun or Appell function, for instance with numerical values for the function's parameters, and returns the singularities of the linear ODE satisfied by the given function.
Zoom is used to zoom within the last plot computed using Evalf for concatenated Taylor expansions used when performing numerical computations of Heun or Appell functions.
As usual, you can load the Evalf package using the with command, or invoke Evalf commands using the long form, e.g. as in Evalf:-Add.
The MathematicalFunctions[Evalf] command was introduced in Maple 2017.
For more information on Maple 2017 changes, see Updates in Maple 2017.
Download Help Document