Series::gseries
-- the
domain of generalized series expansionsSeries::gseries
is the domain of series expansions
generalizing Taylor, Laurent and Puiseux expansions.
Series::gseries(f, x <, order>)
Series::gseries(f, x = a <, order>)
Series::gseries(f, x = a <, order> <, Right>)
Series::gseries(f, x = a <, order> <, Left>)
f |
- | an arithmetical expression |
x |
- | the series variable: an identifier |
a |
- | the expansion point: an arithmetical expression or
+/-infinity |
order |
- | the truncation order: a nonnegative integer |
Left |
- | compute a series expansion that is valid for real x smaller than a. |
Right |
- | compute a series expansion that is valid for real x larger than a (the default case). |
an object of domain type Series::gseries
, or the value
FAIL
.
The function is sensitive to the global variable ORDER
, which determines the default
number of terms of the expansion.
Series::gseries
(f, x)
computes a
series expansion at x = 0+.series
and asympt
are the main application of
this domain. The latter function only returns elements of this domain,
whereas series
could return an element of
Series::gseries
in cases, where a Puiseux series expansion
does not exist.
There may be no need to explicitely create elements of this domain, but to work with the results of the mentioned system functions.
asympt
for a detailed description of
the parameters and examples for working with elements of the domain
Series::gseries
.Series::gseries
only represents
directional (real) series expansions.A series of the domain type Series::gseries
consists of
three operands:
s
.Series::gseries
implements addition and multiplication
of generalized series expansions. Use the ordinary arithmetical
operators +
and *
.
The system functions coeff
, nthterm
, lterm
, nthmonomial
and lmonomial
as well as ldegree
work on generalized
series expansions.
Use the function expr
to convert a generalized series expansion into an arithmetical
expression (as an element of a kernel domain).
Evaluating an object of type Series::gseries
returns
itself.
Calling an element of Series::gseries
as a function
yields the object itself, regardless of the arguments. The arguments
are not evaluated.
_mult(gseries s, any
t...)
Series::gseries
.
If the product cannot be computed, then FAIL
is
returned.
Series::gseries
, is converted into such an element, i.e.,
a generalized series expansion is computed. If this fails, then
FAIL
is returned._mult
for elements of
Series::gseries
, i.e., one may use it in the form
s*t*...
, or in functional notation: _mult(s,
t...)
._plus(gseries s, any
t...)
Series::gseries
.
If the sum cannot be computed, then FAIL
is
returned.
Series::gseries
, is converted into such an element, i.e.,
a generalized series expansion is computed. If this fails, then
FAIL
is returned._plus
for elements of
Series::gseries
, i.e., one may use it in the form
s+t+ ...
, or in functional notation: _plus(s,
t...)
._power(gseries s, integer n)
s
, if
n
is a non-negative integer. Otherwise FAIL
is returned.n
is not an integer, then FAIL
is
returned._power
for elements of
Series::gseries
, i.e., one may use it in the form
s^n
, or in functional notation: _power(s,
n)
.coeff(gseries s <, positive integer n>)
s
, or the
n
th coefficient respectively.coeff
for elements of
Series::gseries
, i.e., one may use it in the form
coeff(s <, n>)
.iszero(gseries s)
TRUE
if s
is exact (i.e., the
second operand is the integer 0) and equal to zero, otherwise
FALSE
.iszero
for elements of
Series::gseries
, i.e., one may use it in the form
iszero(s)
.lcoeff(gseries s)
s
(see
``Operands'' for the definition of the term ``coefficient'').lcoeff
for elements of
Series::gseries
, i.e., one may use it in the form
lcoeff(s)
.ldegree(gseries s)
s
, or the value
FAIL
, if the leading degree cannot be determined.ldegree
for elements of
Series::gseries
, i.e., one may use it in the form
ldegree(s)
.lmonomial(gseries s)
s
(see
``Operands'' for the definition of the term ``monomial'').lmonomial
for elements of
Series::gseries
, i.e., one may use it in the form
lmonomial(s)
.lterm(gseries s)
s
(see
``Operands'' for the definition of ``term'').lterm
for elements of
Series::gseries
, i.e., one may use it in the form
lterm(s)
.nthmonomial(gseries s, positive integer n)
n
th monomial of s
(see
``Operands'' for the definition of the term ``monomial'').nthmonomial
for elements of
Series::gseries
, i.e., one may use it in the form
nthmonomial(s, n)
.nthterm(gseries s, positive integer n)
n
th term of s
(see
``Operands'' for the definition of ``term'').nthterm
for elements of
Series::gseries
, i.e., one may use it in the form
nthterm(s, n)
.map(gseries s, function func...)
func
to the coefficients of
s
.map
for elements of
Series::gseries
, i.e., one may use it in the form
map(s, func...)
.subsex(gseries s, equation x = a...)
convert(any x)
x
is an element of the domain type Series::Puiseux
, then x
is converted into an element of Series::gseries
.
Otherwise, FAIL
is returned.
convert_to(gseries s, any T)
s
into an element of domain type
T
, or, if T
is not a domain, to the domain
type of T
.
FAIL
is returned, if a conversion cannot be performed,
or is not supported.
T
might be the domain DOM_POLY
, where the sum of
monomials is considered as a polynomial in the indeterminates of the
third operand of s
.
If T
is the domain DOM_EXPR
, then the conversion is
the same as implemented by the method "expr"
(see
below).
expr
to convert s
into an object of a kernel domain.create(list list, expression orderTerm, equation x =
a)
Series::gseries
.
list
must be a list of sublists [ci,fi] of
length 2, the monomials ci*fi of the series expansion.
orderTerm
is the order term of the form
O(g(x)), or the integer 0 if the expansion is exact.
This method should be used with caution, because no
argument checking is performed. It is supposed to be used to
create, not to compute elements of
Series::gseries
.
expr(gseries s)
s
without the order
term.print(gseries s)
print
for printing elements of
Series::gseries
to the screen.TeX(gseries s)
s
.generate::TeX
.