Mathematical Functions
Relevant developments in the MathematicalFunctions project happened for Maple 2017, regarding both the addition of the four Appell functions, representing the first ever full implementation of these functions in computational environments, as well as the addition of a new package, Evalf, for performing numerical experimentation taking advantage of sophisticated symbolic computation functionality. The Evalf package and project aims to provide a user-friendly environment to develop and work with numerical algorithms for mathematical functions.
The Four Appell Functions
The Evalf Package
The four multi-parameter Appell functions, AppellF1, AppellF2, AppellF3 and AppellF4 are doubly hypergeometric functions that include as particular cases the 2F1 hypergeometric and some cases of the MeijerG function, and with them most of the known functions of mathematical physics. These Appell functions have been popping up with increasing frequency in applications in quantum mechanics, molecular physics, and general relativity.
As in the case of the hypergeometric function, a distinction is made between the four Appell series, with restricted domain of convergence, and the four Appell functions, that coincide with the series in their domain of convergence but also extend them analytically to the whole complex plane. The Maple implementation of the Appell functions includes a thorough set of their symbolic properties, all accessible using the FunctionAdvisor, as well as numerical algorithms to evaluate the four functions over the whole complex plane, representing the first ever complete computational implementation of these functions.
To display special functions and sequences using textbook notation as shown in this page, use extended typesetting and enable the typesetting of mathematical functions
interfacetypesetting = extended: Typesetting:-EnableTypesetRuleTypesetting:-SpecialFunctionRules:
Examples
The definition of the four Appell series and the corresponding domains of convergence can be seen through the FunctionAdvisor. For example,
FunctionAdvisor⁡definition,AppellF1
F1⁡a,b__1,b__2,c,z__1,z__2=∑_k1=0∞⁡∑_k2=0∞⁡a_k1+_k2⁢b__1_k1⁢b__2_k2⁢z__1_k1⁢z__2_k2c_k1+_k2⁢_k1!⁢_k2!,z__1<1∧z__2<1
FunctionAdvisordefinition, AppellF2;
F2⁡a,b__1,b__2,c__1,c__2,z__1,z__2=∑_k1=0∞⁡∑_k2=0∞⁡a_k1+_k2⁢b__1_k1⁢b__2_k2⁢z__1_k1⁢z__2_k2c__1_k1⁢c__2_k2⁢_k1!⁢_k2!,z__1+z__2<1
FunctionAdvisordefinition, AppellF3;
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=∑_k1=0∞⁡∑_k2=0∞⁡a__1_k1⁢a__2_k2⁢b__1_k1⁢b__2_k2⁢z__1_k1⁢z__2_k2c_k1+_k2⁢_k1!⁢_k2!,z__1<1∧z__2<1
FunctionAdvisordefinition, AppellF4;
F4⁡a,b,c__1,c__2,z__1,z__2=∑_k1=0∞⁡∑_k2=0∞⁡a_k1+_k2⁢b_k1+_k2⁢z__1_k1⁢z__2_k2c__1_k1⁢c__2_k2⁢_k1!⁢_k2!,z__1+z__2<1
From these definitions, these series and the corresponding analytic extensions (Appell functions) are singular (division by zero) when the c parameters entering the pochhammer functions in the denominators of these series are non-positive integers. For an analogous reason, when the a and/or b parameters entering the pochhammer functions in the numerators of the series are non-positive integers, the series will truncate and the Appell functions will be polynomial. Consult the FunctionAdvisor for comprehensive information on the combinations of all these conditions. For example, for AppellF1, the singular cases happen when any of the following conditions hold
FunctionAdvisor⁡singularities,AppellF1
F1⁡a,b__1,b__2,c,z__1,z__2,c::ℤ0,−∧a::ℤ0,−∧b__1::¬ℤ0,−∧a<c∨c::ℤ0,−∧a::ℤ0,−∧b__2::¬ℤ0,−∧a<c∨c::ℤ0,−∧a::ℤ0,−∧b__1::ℤ0,−∧b__2::ℤ0,−∧a<c∧b__1+b__2<c∨c::ℤ0,−∧a::¬ℤ0,−∧b__1::¬ℤ0,−∨c::ℤ0,−∧a::¬ℤ0,−∧b__2::¬ℤ0,−∨c::ℤ0,−∧a::¬ℤ0,−∧b__1::ℤ0,−∧b__2::ℤ0,−∧b__1+b__2<c
By requesting the sum form of the Appell functions, besides their double power series definition, we also see the particular form the four series take when one of the summations is performed and the result expressed in terms of 2F1 hypergeometric functions. For example, for AppellF3,
FunctionAdvisor⁡sum_form,AppellF3
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=∑m=0∞⁡∑n=0∞⁡a__1m⁢a__2n⁢b__1m⁢b__2n⁢z__1m⁢z__2ncm+n⁢m!⁢n!,z__1<1∧z__2<1,F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=∑k=0∞⁡a__1k⁢b__1k⁢F12⁡a__2,b__2;c+k;z__2⁢z__1kck⁢k!,z__1<1,F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=∑k=0∞⁡a__2k⁢b__2k⁢F12⁡a__1,b__1;c+k;z__1⁢z__2kck⁢k!,z__2<1
So, for AppellF3 (and also for AppellF1, but not for AppellF2 nor AppellF4) the domain of convergence of the single sum with hypergeometric coefficients is larger than the domain of convergence of the double series, because the hypergeometric coefficient in the single sum - say the one in z2 - analytically extends the series with regards to the other variable - say z1 - entering the hypergeometric coefficient.
In the literature, the Appell series are analytically extended by integral representations in terms of Eulerian double integrals. With the exception of AppellF4, one of the two iterated integrals can always be computed resulting in a single integral with hypergeometric integrand. For example, for AppellF2
FunctionAdvisorintegral_form, AppellF2;
F2⁡a,b__1,b__2,c__1,c__2,z__1,z__2=Γ⁡c__1⁢∫01ub__1−1⁢F12⁡a,b__2;c__2;−z__2u⁢z__1−11−u−c__1+b__1+1⁢−u⁢z__1+1aⅆuΓ⁡b__1⁢Γ⁡c__1−b__1,z__1≠1∧0<ℜ⁡b__1∧0<−ℜ⁡−c__1+b__1,F2⁡a,b__1,b__2,c__1,c__2,z__1,z__2=Γ⁡c__2⁢∫01ub__2−1⁢F12⁡a,b__1;c__1;−z__1u⁢z__2−11−u1+b__2−c__2⁢−u⁢z__2+1aⅆuΓ⁡b__2⁢Γ⁡c__2−b__2,z__2≠1∧0<ℜ⁡b__2∧0<−ℜ⁡−c__2+b__2,F2⁡a,b__1,b__2,c__1,c__2,z__1,z__2=Γ⁡c__1⁢Γ⁡c__2⁢∫01∫01ub__1−1⁢vb__2−11−u−c__1+b__1+1⁢1−v1+b__2−c__2⁢−u⁢z__1−v⁢z__2+1aⅆuⅆvΓ⁡b__1⁢Γ⁡b__2⁢Γ⁡c__1−b__1⁢Γ⁡c__2−b__2,0<ℜ⁡b__1∧0<ℜ⁡b__2∧0<−ℜ⁡−c__1+b__1∧0<−ℜ⁡−c__2+b__2,F2⁡a,b__1,b__2,c__1,c__2,z__1,z__2=∫0∞ua−1⁢F11⁡b__1;c__1;u⁢z__1⁢F11⁡b__2;c__2;u⁢z__2ⅇuⅆuΓ⁡a,ℜ⁡z__1+z__2<1∧0<ℜ⁡a
For the purpose of numerically evaluating the four Appell functions over the whole complex plane, instead of numerically evaluating the integral representations, it is simpler, when possible, to evaluate the function using identities. For example, with the exception of AppellF3, the Appell functions admit identities analogous to Euler identities for the hypergeometric function. These Euler-type identities, as well as contiguity identities for the four Appell functions, are visible using the FunctionAdvisor with the option identities, or directly from the function. For AppellF4, for instance, provided that none of a, b, a−b, c2−a is a non-positive integer,
F4⁡a,b,c__1,c__2,z__1,z__2=AppellF4:-TransformationsEuler1⁡a,b,c__1,c__2,z__1,z__2
F4⁡a,b,c__1,c__2,z__1,z__2=Γ⁡c__2⁢Γ⁡b−a⁢−z__2−a⁢F4⁡a,a−c__2+1,a−b+1,c__1,1z__2,z__1z__2Γ⁡c__2−a⁢Γ⁡b+Γ⁡c__2⁢Γ⁡a−b⁢−z__2−b⁢F4⁡b,1+b−c__2,b−a+1,c__1,1z__2,z__1z__2Γ⁡c__2−b⁢Γ⁡a
and this identity can be used to evaluate AppellF4 at z1=1 over the whole complex plane since, in that case, the two variables of the Appell Functions on right-hand side become equal, and that is a special case of AppellF4, expressible in terms of hypergeometric 4F3 functions
z__1=1|z__1=1
F4⁡a,b,c__1,c__2,1,z__2=Γ⁡c__2⁢Γ⁡b−a⁢−z__2−a⁢F34⁡a,a−c__2+1,a2−b2+c__12,a2−b2+12+c__12;c__1,a−b+1,a−b+c__1;4z__2Γ⁡c__2−a⁢Γ⁡b+Γ⁡c__2⁢Γ⁡a−b⁢−z__2−b⁢F34⁡b,1+b−c__2,b2−a2+c__12,b2−a2+12+c__12;c__1,b−a+1,b−a+c__1;4z__2Γ⁡c__2−b⁢Γ⁡a
A plot of the AppellF2 function for some values of its parameters
F2 ≔ AppellF2expI⋅z,12⋅I,37−I4,4,57+6⋅I,6,z
F2≔F2⁡ⅇI⁢z,I2,37−I4,4,57+6⁢I,6,z
plotRe,ImF2,z=−1..1
A thorough set with the main symbolic properties of any of the four Appell functions, for instance for AppellF3, can be seen via
FunctionAdvisorAppellF3
AppellF3
describe
AppellF3=Appell 2-variable hypergeometric function F3
definition
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=∑_k1=0∞⁡∑_k2=0∞⁡a__1_k1⁢a__2_k2⁢b__1_k1⁢b__2_k2⁢z__1_k1⁢z__2_k2c_k1+_k2⁢_k1!⁢_k2!
z__1<1∧z__2<1
classify function
Appell
symmetries
F3⁡a__2,a__1,b__2,b__1,c,z__2,z__1=F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2
F3⁡b__1,a__2,a__1,b__2,c,z__1,z__2=F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2
F3⁡a__1,b__2,b__1,a__2,c,z__1,z__2=F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2
plot
singularities
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2
c::ℤ0,−∧a__1::¬ℤ0,−∧b__1::¬ℤ0,−∨c::ℤ0,−∧a__2::¬ℤ0,−∧b__2::¬ℤ0,−∨c::ℤ0,−∧a__1::¬ℤ0,−∧a__2::ℤ0,−∧b__1::ℤ0,−∧b__2::¬ℤ0,−∧a__2+b__1<c∨c::ℤ0,−∧a__1::¬ℤ0,−∧a__2::¬ℤ0,−∧b__1::ℤ0,−∧b__2::ℤ0,−∧b__1+b__2<c∨c::ℤ0,−∧a__1::¬ℤ0,−∧a__2::ℤ0,−∧b__1::ℤ0,−∧b__2::ℤ0,−∧a__2+b__1<c∧b__1+b__2<c∨c::ℤ0,−∧a__1::ℤ0,−∧a__2::ℤ0,−∧b__1::¬ℤ0,−∧b__2::¬ℤ0,−∧a__1+a__2<c∨c::ℤ0,−∧a__1::ℤ0,−∧a__2::¬ℤ0,−∧b__1::¬ℤ0,−∧b__2::ℤ0,−∧a__1+b__2<c∨c::ℤ0,−∧a__1::ℤ0,−∧a__2::ℤ0,−∧b__1::¬ℤ0,−∧b__2::ℤ0,−∧a__1+a__2<c∧a__1+b__2<c∨c::ℤ0,−∧a__1::ℤ0,−∧a__2::ℤ0,−∧b__1::ℤ0,−∧b__2::ℤ0,−∧a__1+a__2<c∧a__1+b__2<c∧a__2+b__1<c∧b__1+b__2<c∨c::ℤ0,−∧a__1::ℤ0,−∧a__2::¬ℤ0,−∧b__1::ℤ0,−∧b__2::ℤ0,−∧a__1+b__2<c∧b__1+b__2<c∨c::ℤ0,−∧a__1::ℤ0,−∧a__2::ℤ0,−∧b__1::ℤ0,−∧b__2::¬ℤ0,−∧a__1+a__2<c∧a__2+b__1<c
branch points
a__1::¬ℤ0,−∧b__1::¬ℤ0,−∧z__1∈1,∞+∞⁢I∨a__2::¬ℤ0,−∧b__2::¬ℤ0,−∧z__2∈1,∞+∞⁢I
branch cuts
a__1::¬ℤ0,−∧b__1::¬ℤ0,−∧1<z__1∨a__2::¬ℤ0,−∧b__2::¬ℤ0,−∧1<z__2
special values
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=1
z__1=0∧z__2=0
a__1=0∧a__2=0
a__1=0∧b__2=0
a__2=0∧b__1=0
b__1=0∧b__2=0
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=F12⁡a__2,b__2;c;z__2
z__1=0
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=F12⁡a__1,b__1;c;z__1
z__2=0
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=F12⁡a__1,b__1;c;1⁢F23⁡a__2,b__2,c−a__1−b__1;c−b__1,c−a__1;z__2
z__1=1
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=F12⁡a__2,b__2;c;1⁢F23⁡a__1,b__1,c−a__2−b__2;c−a__2,c−b__2;z__1
z__2=1
a__1=0
a__2=0
b__1=0
b__2=0
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=z__1⁢F12⁡1,a__1;a__1+a__2;z__1+z__2⁢F12⁡1,a__2;a__1+a__2;z__2−z__1⁢z__2+z__1+z__2
b__1=1∧b__2=1∧c=a__1+a__2∧−z__1⁢z__2+z__1+z__2≠0
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=z__1⁢F12⁡1,b__1;a__2+b__1;z__1+z__2⁢F12⁡1,a__2;a__2+b__1;z__2−z__1⁢z__2+z__1+z__2
a__1=1∧b__2=1∧c=a__2+b__1∧−z__1⁢z__2+z__1+z__2≠0
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=z__1⁢F12⁡1,a__1;a__1+b__2;z__1+z__2⁢F12⁡1,b__2;a__1+b__2;z__2−z__1⁢z__2+z__1+z__2
b__1=1∧a__2=1∧c=a__1+b__2∧−z__1⁢z__2+z__1+z__2≠0
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=1−z__1b__2⁢F12⁡a__1+b__2,b__1+b__2;a__1+a__2+b__1+b__2;z__1
c=a__1+a__2+b__1+b__2∧z__1≠1∧z__2=z__1−1+z__1
c=a__1+a__2+b__1+b__2∧z__2≠1∧z__1=z__2−1+z__2
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=1−z__1c−1⁢1−2⁢z__11−a__2⁢F12⁡c2+a__12−a__22,c2−a__12−a__22+12;c;4⁢z__1⁢1−z__1
z__2=z__12⁢z__1−1∧2⁢z__1≠1∧z__1≠1∧b__1=1−a__1∧b__2=1−a__2
z__1=z__22⁢z__2−1∧2⁢z__2≠1∧z__2≠1∧b__1=1−a__1∧b__2=1−a__2
z__2=z__12⁢z__1−1∧2⁢z__1≠1∧z__1≠1∧a__1=1−b__1∧b__2=1−a__2
z__2=z__12⁢z__1−1∧2⁢z__1≠1∧z__1≠1∧b__1=1−a__1∧a__2=1−b__2
identities
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=F3⁡a__1,a__2,b__1,b__2+n,c,z__1,z__2−∑k=1n⁡nk⁢a__2k⁢z__2k⁢F3⁡a__1,b__2+k,b__1,k+a__2,k+c,z__1,z__2ck
z__2≠1∧c::¬ℤ0,−∨a__2::ℤ0,−∧c<a__2∨n≤c
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=F3⁡b__1,a__2,a__1+n,b__2,c,z__1,z__2−∑k=1n⁡nk⁢b__1k⁢z__1k⁢F3⁡a__1+k,a__2,k+b__1,b__2,k+c,z__1,z__2ck
z__1≠1∧c::¬ℤ0,−∨b__1::ℤ0,−∧c<b__1∨n≤c
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=a__1n⁢F3⁡b__1,a__2,a__1+n,b__2,c,z__1,z__2a__1−b__1n−∑k=1n⁡nk⁢b__1k⁢−1k⁢F3⁡a__1,a__2,k+b__1,b__2,c,z__1,z__2b__1−a__1−n+1k
z__1≠1∧a__1−b__1::¬ℤ0,−∨n≤a__1−b__1∧b__1−a__1−n+1::¬ℤ0,−∨b__1::ℤ0,−∧b__1−a__1−n+1<b__1∨n≤−b__1+a__1+n−1
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=F3⁡b__1,a__2,a__1+n,b__2,c,z__1,z__2−b__1⁢z__1⁢∑k=1n⁡F3⁡a__1+k,a__2,b__1+1,b__2,c+1,z__1,z__2c
z__1≠1∧c≠0
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=F3⁡a__1,a__2,b__1,b__2,c−n,z__1,z__2−a__1⁢b__1⁢z__1⁢∑k=1n⁡F3⁡a__1+1,a__2,b__1+1,b__2,c+2−k,z__1,z__2c−k⁢c−k+1−a__2⁢b__2⁢z__2⁢∑k=1n⁡F3⁡a__1,a__2+1,b__1,b__2+1,c+2−k,z__1,z__2c−k⁢c−k+1
z__1≠1∧z__2≠1∧c::¬ℤ+
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=F1⁡a__2,b__2,b__1,c,z__2,z__1−1+z__11−z__1b__1
c=a__1+a__2∧z__1≠1
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=F1⁡a__2,b__2,a__1,c,z__2,z__1−1+z__11−z__1a__1
c=b__1+a__2∧z__1≠1
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=F1⁡b__2,a__2,b__1,c,z__2,z__1−1+z__11−z__1b__1
c=a__1+b__2∧z__1≠1
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=F1⁡b__2,a__2,a__1,c,z__2,z__1−1+z__11−z__1a__1
c=b__1+b__2∧z__1≠1
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=F1⁡a__1,b__1,b__2,c,z__1,z__2z__2−1−z__2+1b__2
c=a__1+a__2∧z__2≠1
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=F1⁡b__1,a__1,b__2,c,z__1,z__2z__2−1−z__2+1b__2
c=b__1+a__2∧z__2≠1
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=F1⁡a__1,b__1,a__2,c,z__1,z__2z__2−1−z__2+1a__2
c=a__1+b__2∧z__2≠1
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=F1⁡b__1,a__1,a__2,c,z__1,z__2z__2−1−z__2+1a__2
c=b__1+b__2∧z__2≠1
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=z__2⁢−1+z__1z__1b__1⁢F2⁡b__1+b__2,a__2,b__1,c,b__1+b__2,z__2,1−z__2⁢−1+z__1z__11−z__1b__1
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=z__2⁢−1+z__1z__1a__1⁢F2⁡a__1+b__2,a__2,a__1,c,a__1+b__2,z__2,1−z__2⁢−1+z__1z__11−z__1a__1
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=z__2⁢−1+z__1z__1b__1⁢F2⁡b__1+a__2,b__2,b__1,c,b__1+a__2,z__2,1−z__2⁢−1+z__1z__11−z__1b__1
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=z__2⁢−1+z__1z__1a__1⁢F2⁡a__1+a__2,b__2,a__1,c,a__1+a__2,z__2,1−z__2⁢−1+z__1z__11−z__1a__1
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=z__1⁢z__2−1z__2b__2⁢F2⁡b__1+b__2,a__1,b__2,c,b__1+b__2,z__1,1−z__1⁢z__2−1z__2−z__2+1b__2
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=z__1⁢z__2−1z__2b__2⁢F2⁡a__1+b__2,b__1,b__2,c,a__1+b__2,z__1,1−z__1⁢z__2−1z__2−z__2+1b__2
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=z__1⁢z__2−1z__2a__2⁢F2⁡b__1+a__2,a__1,a__2,c,b__1+a__2,z__1,1−z__1⁢z__2−1z__2−z__2+1a__2
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=z__1⁢z__2−1z__2a__2⁢F2⁡a__1+a__2,b__1,a__2,c,a__1+a__2,z__1,1−z__1⁢z__2−1z__2−z__2+1a__2
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=F4⁡−12+b+c2,b,d,e,−2⁢z__2⁢g−z__2⁢g−4⁢g−z__2z__2,g⁢g+1−1+2⁢b+c⁢4⁢g⁢z__2−1z__2⁢g+12b−z__2+1b
a__2=b∧b__1=c2∧b__2=c2∧e=12+c2∧a__1=−12+c2∧d=−12+b+c2∧z__1=4⁢gg+12∧−2⁢z__2⁢g−z__2⁢g−4⁢g−z__2z__2⁢g+12≠1
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=F4⁡b+12−c2,b,d,e,−2⁢z__2⁢g−z__2⁢g−4⁢g−z__2z__2,g⁢g+12⁢b⁢4⁢g⁢z__2−1z__2⁢g+12b+12−c2−z__2+1b+12−c2
d=b∧b__1=c2∧b__2=c2∧e=12+c2∧a__1=−12+c2∧a__2=b+12−c2∧z__1=4⁢gg+12∧−2⁢z__2⁢g−z__2⁢g−4⁢g−z__2z__2⁢g+12≠1
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=F4⁡−12+b+c2,b,d,e,f,−2⁢z__2⁢f−z__2⁢f−4⁢f−z__2z__2⁢f+1−1+2⁢b+c⁢4⁢f⁢z__2−1z__2⁢f+12b−z__2+1b
a__2=b∧b__1=c2∧b__2=c2∧d=12+c2∧a__1=−12+c2∧e=−12+b+c2∧z__1=4⁢ff+12∧−2⁢z__2⁢f−z__2⁢f−4⁢f−z__2z__2⁢f+12≠1
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=F4⁡b+12−c2,b,d,e,f,−2⁢z__2⁢f−z__2⁢f−4⁢f−z__2z__2⁢f+12⁢b⁢4⁢f⁢z__2−1z__2⁢f+12b+12−c2−z__2+1b+12−c2
e=b∧b__1=c2∧b__2=c2∧d=12+c2∧a__1=−12+c2∧a__2=b+12−c2∧z__1=4⁢ff+12∧−2⁢z__2⁢f−z__2⁢f−4⁢f−z__2z__2⁢f+12≠1
sum form
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=∑m=0∞⁡∑n=0∞⁡a__1m⁢a__2n⁢b__1m⁢b__2n⁢z__1m⁢z__2ncm+n⁢m!⁢n!
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=∑k=0∞⁡a__1k⁢b__1k⁢F12⁡a__2,b__2;c+k;z__2⁢z__1kck⁢k!
z__1<1
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=∑k=0∞⁡a__2k⁢b__2k⁢F12⁡a__1,b__1;c+k;z__1⁢z__2kck⁢k!
z__2<1
series
series⁡F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2,z__1,4=F12⁡a__2,b__2;c;z__2+a__1⁢b__1⁢F12⁡a__2,b__2;c+1;z__2c⁢z__1+12⁢a__1⁢b__1⁢a__1+1⁢b__1+1⁢F12⁡a__2,b__2;c+2;z__2c⁢c+1⁢z__12+16⁢a__1⁢b__1⁢a__1+1⁢b__1+1⁢a__1+2⁢b__1+2⁢F12⁡a__2,b__2;c+3;z__2c⁢c+1⁢c+2⁢z__13+O⁡z__14
series⁡F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2,z__2,4=F12⁡a__1,b__1;c;z__1+a__2⁢b__2⁢F12⁡a__1,b__1;c+1;z__1c⁢z__2+12⁢a__2⁢b__2⁢a__2+1⁢b__2+1⁢F12⁡a__1,b__1;c+2;z__1c⁢c+1⁢z__22+16⁢a__2⁢b__2⁢a__2+1⁢b__2+1⁢a__2+2⁢b__2+2⁢F12⁡a__1,b__1;c+3;z__1c⁢c+1⁢c+2⁢z__23+O⁡z__24
integral form
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=Γ⁡c⁢∫011−u−1+b__1⁢F12⁡a__2,b__2;c−b__1;z__2⁢uu−c+b__1+1⁢1+z__1⁢u−1a__1ⅆuΓ⁡b__1⁢Γ⁡c−b__1
0<ℜ⁡b__1∧0<ℜ⁡c∧0<−ℜ⁡−c+b__1
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=Γ⁡c⁢∫011−ub__2−1⁢F12⁡a__1,b__1;c−b__2;u⁢z__1u−c+b__2+1⁢1+u−1⁢z__2a__2ⅆuΓ⁡b__2⁢Γ⁡c−b__2
0<ℜ⁡b__2∧0<ℜ⁡c∧0<−ℜ⁡−c+b__2
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=Γ⁡c⁢∫01uρ−1⁢1−uc−ρ−1⁢F12⁡a__1,b__1;ρ;u⁢z__1⁢F12⁡a__2,b__2;c−ρ;−u−1⁢z__2ⅆuΓ⁡ρ⁢Γ⁡c−ρ
0<ℜ⁡c
F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=Γ⁡c⁢∫01∫01−vu−1+b__1⁢vb__2−11−u−v−c+b__1+b__2+1⁢−u⁢z__1+1a__1⁢−v⁢z__2+1a__2ⅆuⅆvΓ⁡b__1⁢Γ⁡b__2⁢Γ⁡c−b__1−b__2
0<ℜ⁡b__1∧0<ℜ⁡b__2∧0<−ℜ⁡−c+b__1+b__2
differentiation rule
∂∂z__1F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=a__1⁢b__1⁢F3⁡a__1+1,a__2,b__1+1,b__2,c+1,z__1,z__2c
∂n∂z__1nF3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=a__1n⁢b__1n⁢F3⁡n+a__1,a__2,n+b__1,b__2,n+c,z__1,z__2cn
∂∂z__2F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=a__2⁢b__2⁢F3⁡a__1,a__2+1,b__1,b__2+1,c+1,z__1,z__2c
∂n∂z__2nF3⁡a__1,a__2,b__1,b__2,c,z__1,z__2=a__2n⁢b__2n⁢F3⁡a__1,n+a__2,b__1,n+b__2,n+c,z__1,z__2cn
DE
f⁡a__2,b__1,b__2,c,z__1,z__2=F3⁡a__1,a__2,b__1,b__2,c,z__1,z__2
∂2∂z__12f⁡a__2,b__1,b__2,c,z__1,z__2=z__2⁢∂2∂z__2∂z__1f⁡a__2,b__1,b__2,c,z__1,z__2z__1⁢z__1−1+−a__1−b__1−1⁢z__1+c⁢∂∂z__1f⁡a__2,b__1,b__2,c,z__1,z__2z__1⁢z__1−1−a__1⁢b__1⁢f⁡a__2,b__1,b__2,c,z__1,z__2z__1⁢z__1−1
∂2∂z__2∂z__1f⁡a__2,b__1,b__2,c,z__1,z__2=z__2⁢z__2−1⁢∂2∂z__22f⁡a__2,b__1,b__2,c,z__1,z__2z__1+a__2+b__2+1⁢z__2−c⁢∂∂z__2f⁡a__2,b__1,b__2,c,z__1,z__2z__1+a__2⁢b__2⁢f⁡a__2,b__1,b__2,c,z__1,z__2z__1
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.
As an environment for working with special functions, Evalf helps developing/implementing the typical approaches used in the literature and comparing their performances. This kind of 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.
withMathematicalFunctions, Evalf: withEvalf;
Add,Evalb,Zoom,QuadrantNumbers,Singularities,GenerateRecurrence,PairwiseSummation
Consider the following AppellF4 function
F4≔AppellF41,2,3,4,5,z
F4≔F4⁡1,2,3,4,5,z
This function satisfies a linear differential equation whose singularities, which depend on the function's parameters, are relevant in the context of numerically evaluating the function. To see the location of these singularities you can construct the linear ODE behind F4 using PDEtools:-dpolyform) and use the DEtools:-singularities command, or directly use Evalf:-Singularities
S≔Singularities⁡