174
14 Mathieu Functions
14.3 Programs
14.3.1 The SPECFUNPHYS Class Mathieufun
The syntax of the class mathieuFun is
obj = mathieuFun(wmathieu, n, q, z) and, respectively,
obj = mathieuFun(wmathieu, n, q, z, name, value) or
obj = mathieuFun(wmathieu, a, q, name, value), where the
input argument “wmathieu” with values “ce,” “se,” “me,” “Cehyp,” “Sehyp,”
“Mehyp,” “fe,” “ge,” “Fehyp,” “Gehyp,” “w1,” “w2,” “W1hyp,” “W2hyp,” “eiga,”
and “eigb” specifies which Mathieu functionality should be evaluated. For example,
“ce” stands for ce n (z, q), “Cehyp” for Ce n (z, q), and so on. In dependence of the
function in quest, “n” could be either an integer or an arbitrary scalar value and “q” a
complex scalar. “z” is a row vector, tested for real values. The name–value pairs are
“eigen” with value 0 (no eigenvalue as output), 1 (output eigenvalues), or 2 (output
eigenvalues and eigenvectors); “scale” with the same values as “eigen” and a similar
meaning (see below); “zend” with zend for Mathieu functions where the evaluation
is based on the direct integration of the differential equation. If zend is a scalar,
the differential system will be integrated from 0 to zend. If zend has more than
one element, zend = [z 1 , z 2 , · · · , z n ], then the solver returns the solution at the
points [0, z 1 , z 2 , · · · , z n ]. The values have to be real and monotonically increasing.
For Mathieu functions with n = ν, the corresponding matrix runs from −nmax
to +nmax (default 75); the name–value pair “nmax” together with a real positive
integer value allows to modify this value.
The output argument is the object with properties “value” (function values),
“z” (input at which the functions will be evaluated), “eigen” (eigenvalues and
eigenvectors or parameter a), “q” (differential equation parameter q), “n” (number
or maximum number of the eigenvalue), “scale” (scaling factor C or S for of the
second solution and additional scaling c), and “info” (general information including
hints with respect to the evaluation).
Functions ce n/ν (z, q), se n/ν (z, q), Ce n/ν (z, q), Se n/ν (z, q), me n/ν (z, q), and
Me n/ν (z, q)
“n” could be either a positive integer or an arbitrary scalar value unequal
−1, −2, · · · . For even/odd integer values “n,” all function values related to even/odd
integer values lower than or equal to “n” will be computed. For the modified Mathieu
functions, their first derivative is also evaluated. The following name–value pairs are
supported: “eigen” and for n = ν “nmax.” For me n/ν (z, q), Me n/ν (z, q), “n” could
be a positive or negative integer. Example:
obj = mathieuFun(’ce’, 5, 1.25, z, ’eigen’,2);
>> obj
obj =
mathieuFun with properties:
value: [3x250 double]
z: [1x250 double]
eigen: {[3x3 double] [101x3 double]}
Précédent

- 182/287

Suivant