fs2ups.spad line 1457 [edit on github]
coerce : Expon -> %
This package converts expressions in some function space to power series in a variable x
with coefficients in that function space. The function exprToUPS converts expressions to power series whose coefficients do not contain the variable x
. The function exprToGenUPS converts functional expressions to power series whose coefficients may involve functions of log(x)
.
exprToGenUPS(fcn, posCheck?, atanFlag)
converts the expression fcn
to a generalized power series. If posCheck?
is true
, log's
of negative numbers are not allowed nor are n
th roots of negative numbers with n
even. If posCheck?
is false
, these are allowed. atanFlag
determines how the case atan(f(x))
, where f(x)
has a pole, will be treated. The possible values of atanFlag
are "complex"
, "real: two sides"
, "real: left side"
, "real: right side"
, and "just do it"
. If atanFlag
is "complex"
, then no series expansion will be computed because, viewed as a function of a complex variable, atan(f(x))
has an essential singularity. Otherwise, the sign of the leading coefficient of the series expansion of f(x)
determines the constant coefficient in the series expansion of atan(f(x))
. If this sign cannot be determined, a series expansion is computed only when atanFlag
is "just do it"
. When the leading term in the series expansion of f(x)
is of odd degree (or is a rational degree with odd numerator), then the constant coefficient in the series expansion of atan(f(x))
for values to the left differs from that for values to the right. If atanFlag
is "real: two sides"
, no series expansion will be computed. If atanFlag
is "real: left side"
the constant coefficient for values to the left will be used and if atanFlag
"real: right side"
the constant coefficient for values to the right will be used. If there is a problem in converting the function to a power series, we return a record containing the name of the function that caused the problem and a brief description of the problem. When expanding the expression into a series it is assumed that the series is centered at 0. For a series centered at a, the user should perform the substitution x -> x + a
before calling this function.
exprToPS(fcn, posCheck?, atanFlag, log_flag, log_val)
is like exprToUPS, but if log_flag
is true
it replaces logarithms of expansion variable by log_val
exprToPS(fcn
, posCheck?, atanFlag, log_flag, log_val, coef_chk, inv_chk, zero_chk) is like exprToPS(fcn
, posCheck?, atanFlag, log_flag, log_val), but fails if coef_chk
is false
for some coefficient of fcn
or if expansion process needs to invert element of FE
for which inv_chk
is false
exprToUPS(fcn, posCheck?, atanFlag)
converts the expression fcn
to a power series. If posCheck?
is true
, log's
of negative numbers are not allowed nor are n
th roots of negative numbers with n
even. If posCheck?
is false
, these are allowed. atanFlag
determines how the case atan(f(x))
, where f(x)
has a pole, will be treated. The possible values of atanFlag
are "complex"
, "real: two sides"
, "real: left side"
, "real: right side"
, and "just do it"
. If atanFlag
is "complex"
, then no series expansion will be computed because, viewed as a function of a complex variable, atan(f(x))
has an essential singularity. Otherwise, the sign of the leading coefficient of the series expansion of f(x)
determines the constant coefficient in the series expansion of atan(f(x))
. If this sign cannot be determined, a series expansion is computed only when atanFlag
is "just do it"
. When the leading term in the series expansion of f(x)
is of odd degree (or is a rational degree with odd numerator), then the constant coefficient in the series expansion of atan(f(x))
for values to the left differs from that for values to the right. If atanFlag
is "real: two sides"
, no series expansion will be computed. If atanFlag
is "real: left side"
the constant coefficient for values to the left will be used and if atanFlag
"real: right side"
the constant coefficient for values to the right will be used. If there is a problem in converting the function to a power series, a record containing the name of the function that caused the problem and a brief description of the problem is returned. When expanding the expression into a series it is assumed that the series is centered at 0. For a series centered at a, the user should perform the substitution x -> x + a
before calling this function.