next up previous
Next: Symbolic matrix manipulation Up: Commands Previous: Partial fraction expansion

Rational functions integration

The command RINT computes the indefinite integral of rational functions. It takes two arguments: the expression to integrate and the integration variable. If the expression to integrate contains non-rational subexpressions that depend on the integration variable or contains algebraic extensions (like  tex2html_wrap_inline1714) then RINT produces a "Bad Argument Value" error. Even though it is not explicit in the output, like any indefinite integral, the integral returned by RINT is defined up to an additive constant. That is, the general solution for the indefinite integral is the output of RINT plus an arbitrary constant.

In general, the indefinite integral of a rational function will have a rational part and a logarithmic part. The rational part is a ``regular'' rational function in the integration variable, and the logarithmic part is a sum of logarithms whose arguments are polynomials in the integration variable and whose coefficients are constants. E.g.,

displaymath1700

It is always possible to compute the rational part of the integral and RINT uses Horowitz's algorithm to compute it quickly without computing the partial fraction expansion of the rational function. For instance,

displaymath1701

On the other hand, the coefficients in the logarithmic part are solutions of potentially high-degree equations and cannot always be represented analytically (in closed-form). RINT gives an analytical solution only if the coefficients are solutions of equations of degree two or less, i.e., if the coefficients can be expressed exactly in terms of rational numbers and radicals. Otherwise RINT leaves the corresponding part of the integral unsolved. For instance, RINT completely solves the following integral since the it can be given explicitely in terms of radicals and fractions,

displaymath1702

In the contrary, RINT leaves the following integral unsolved because the solution can only be expressed in terms of the roots of an equation of degree three,

displaymath1703

When appropriate, to avoid logarithms with complex arguments and coefficients, RINT uses arctangents in the logarithmic part of the integral. E.g.,

displaymath1704

Because of the limited speed of the calculator, RINT does not use the general Rothstein-Trager method to compute the logarithmic part of the integral and in some cases will fail to give an analytical solution when one exists. For instance, RINT fails to solve completely the following integral,

displaymath1705

even though the integral of the last term can be given analytically as

displaymath1706

Note however that RINT never introduces unnecessary algebraic extensions to express the integral and can always solve integral whose logarithmic part only entails logarithms with polynomials of degree two or less, regardless of the degree of the rational function itself.


next up previous
Next: Symbolic matrix manipulation Up: Commands Previous: Partial fraction expansion

Claude-Nicolas Fiechter (fiechter@cs.pitt.edu), 12 May 1998