>
|
|
| (3.1.1) |
The new commands and &Union respectively perform the intersection, union, and minus of regions of the complex plane expressed algebraically as sets of equation and inequations.
Consider:
>
|
|
| (3.1.2) |
>
|
|
| (3.1.3) |
Using algebraic expressions to represent regions:
>
|
|
| (3.1.10) |
The set of new commands Assume, Coulditbe, and Is perform basically the same operations as the standard assume, coulditbe, and is commands but with the following differences, more convenient depending on the situation.
•
|
Assume uses the new Physics:-Assume command, capable of placing assumptions without redefining the variables, hence it is possible to reuse expressions entered before placing the assumptions. The result can also be reused after removing the assumptions, computing as in an extended-assuming context.
|
Consider:
This expression cannot be simplified further: it is equal to x only within some restricted range of x values. You can now place the assumption,
and reuse the equation (3.1.11) entered before placing the assumption, hence invoke it by entering its label:
•
|
Coulditbe and Is permit computing the related operations with an arbitrary number of conditions to be tested, that could be nested with no restrictions, involving And and Or, and also lists.
|
Consider the two conditions:
>
|
|
>
|
|
None of them can be true, so:
>
|
|
Change the second condition to be:
>
|
|
Now can be true, therefore:
>
|
|
Coulditbe can also receive as sequence of arguments (statements), in which case it only returns true if it would return true for each of the arguments received. In this example, two conditions cannot be true at the same time, but either of them can be true.
>
|
|
| (3.1.19) |
Add a condition that cannot be:
>
|
|
Note the difference with Or:
>
|
|
Note also the difference between the result (3.1.20) and the one using And:
The Is command is entirely based on Coulditbe so that returns as . This is a generalization to many arguments of the relationship between the output of the standard is and coulditbe commands.
Hence:
•
|
Evalf is a new command to numerically evaluate the Heun mathematical functions using different approaches, including sequences of Taylor functions through paths that go around singularities.
|
>
|
|
HeunCZ and HeunCZPrime at Z = .500000000000-.559016994375*I using a series expansion around Z = 0
HeunCZ and HeunCZPrime at Z = 1.06250000000-.559016994375*I using a series expansion around Z = .500000000000-.559016994375*I
HeunCZ and HeunCZPrime at Z = 1.16204916259-.149352378815*I using a series expansion around Z = 1.06250000000-.559016994375*I
HeunCZ at Z = 1.200000000 using a series expansion around Z = 1.16204916259-.149352378815*I
| |
| |
| (3.1.25) |
Compare with the value obtained using a differential equation approach to this problem:
>
|
|
C using dsolve/numeric approach for 1 <= abs(z).
-> computing initial conditions for C and CPrime at z = .1
HeunC at z = .1 using a series expansion around z = 0
HeunCPrime at z = .1 using a series expansion around z = 0
-> computing an extra step at z = 1.+.2*I
| |
| |
| (3.1.26) |
Perform the same computation requiring accuracy up to the value of Digits:
>
|
|
HeunCZ and HeunCZPrime at Z = .500000000000-.559016994375*I using a series expansion around Z = 0
HeunCZ and HeunCZPrime at Z = 1.06250000000-.559016994375*I using a series expansion around Z = .500000000000-.559016994375*I
HeunCZ and HeunCZPrime at Z = 1.16204916259-.149352378815*I using a series expansion around Z = 1.06250000000-.559016994375*I
HeunCZ at Z = 1.200000000 using a series expansion around Z = 1.16204916259-.149352378815*I
HeunCZ and HeunCZPrime at Z = .50000000000000000-.55901699437494740*I using a series expansion around Z = 0
HeunCZ and HeunCZPrime at Z = 1.0625000000000000-.55901699437494740*I using a series expansion around Z = .50000000000000000-.55901699437494740*I
HeunCZ and HeunCZPrime at Z = 1.1620491625867589-.14935237881501522*I using a series expansion around Z = 1.0625000000000000-.55901699437494740*I
HeunCZ at Z = 1.200000000 using a series expansion around Z = 1.1620491625867589-.14935237881501522*I
-> Testing accuracy of 10 digits for HeunCZ at Z = 1.200000000 around Z = 1.162049163-.1493523788*I and Z = 1.200000000 using Digits = 15
HeunCZ at Z = 1.16204916259-.149352378815*I using a series expansion around Z = 1.06250000000-.559016994375*I
HeunCZ at Z = 1.06250000000-.559016994375*I using a series expansion around Z = .500000000000-.559016994375*I
HeunCZ and HeunCZPrime at Z = .499999999999973874825-.559016994374970791168*I using a series expansion around Z = 0
HeunCZ at Z = .500000000000-.559016994375*I using a series expansion around Z = .499999999999973874825-.559016994374970791168*I
HeunCZ and HeunCZPrime at Z = .272727272727272727250-.408180805829884514696*I using a series expansion around Z = 0
HeunCZ and HeunCZPrime at Z = .449885452775968702046-.541443395498165954360*I using a series expansion around Z = .272727272727272727250-.408180805829884514696*I
HeunCZPrime at Z = .500000000000-.559016994375*I using a series expansion around Z = .449885452775968702046-.541443395498165954360*I
HeunCZPrime at Z = 1.06250000000-.559016994375*I using a series expansion around Z = .500000000000-.559016994375*I
HeunCZPrime at Z = 1.16204916259-.149352378815*I using a series expansion around Z = 1.06250000000-.559016994375*I
<- Reached required accuracy of 10 digits for HeunCZ using Digits = 15
| |
| |
| |
| (3.1.28) |
Options arguments of the new MathematicalFunctions Evalf command include:
•
|
DE to numerically evaluate using a differential equation approach
|
•
|
R = ... to indicate the maximum value of the radius used in each Taylor series in a sequence of Taylor series.
|
•
|
Taylor to indicate the use of a Taylor series approach
|
•
|
Z to use the Z approach to numerically evaluate the confluent HeunC function
|
•
|
fdiff to use numerical differentiation to evaluate any of the five HeunPrime functions
|
•
|
to indicate the display of a plot showing the path and centers of the Taylor series used to evaluate the function
|
•
|
= ... to compute with as many accurate digits as the value of Digits
|
•
|
truncate = ... to request truncating the value returned to the indicated number of digits
|
•
|
zoom = ... to zoom within the last plot shown
|