Series::gseries -- the
domain of generalized series expansions
IntroductionSeries::gseries is the domain of series expansions
generalizing Taylor, Laurent and Puiseux expansions.
Creating
ElementsSeries::gseries(f, x <, order>)
Series::gseries(f, x = a <, order>)
Series::gseries(f, x = a <, order> <, Right>)
Series::gseries(f, x = a <, order> <, Left>)
Parametersf |
- | 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 |
OptionsLeft |
- | 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). |
Returnsan object of domain type Series::gseries, or the value
FAIL.
Side
EffectsThe function is sensitive to the global variable ORDER, which determines the default
number of terms of the expansion.
DetailsSeries::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.
Related
DomainsSeries::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
nth 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)nth 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)nth 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.