Maxima Function
facsum (expr, arg_1, ..., arg_n)
Returns a form of expr which depends on the
arguments arg_1, ..., arg_n.
The arguments can be any form suitable for ratvars
, or they can be
lists of such forms. If the arguments are not lists, then the form
returned is fully expanded with respect to the arguments, and the
coefficients of the arguments are factored. These coefficients are
free of the arguments, except perhaps in a non-rational sense.
If any of the arguments are lists, then all such lists are combined
into a single list, and instead of calling factor
on the
coefficients of the arguments, facsum
calls itself on these
coefficients, using this newly constructed single list as the new
argument list for this recursive call. This process can be repeated to
arbitrary depth by nesting the desired elements in lists.
It is possible that one may wish to facsum
with respect to more
complicated subexpressions, such as log (x + y)
. Such arguments are
also permissible. With no variable specification, for example
facsum (expr)
, the result returned is the same as that returned by
ratsimp (expr)
.
Occasionally the user may wish to obtain any of the above forms
for expressions which are specified only by their leading operators.
For example, one may wish to facsum
with respect to all log
's. In
this situation, one may include among the arguments either the specific
log
's which are to be treated in this way, or alternatively, either
the expression operator (log)
or 'operator (log)
. If one wished to
facsum
the expression expr with respect to the operators op_1, ..., op_n,
one would evaluate facsum (expr, operator (op_1, ..., op_n))
.
The operator
form may also appear inside list arguments.
In addition, the setting of the switches facsum_combine
and
nextlayerfactor
may affect the result of facsum
.