definite and indefinite integration
inert form of int
int(expression, [x, y])
int(expression, x=a..b, opt)
int(expression, [x=a..b, y=c..d, ...], opt)
Int(expression, x=a..b, opt)
int(f, a..b, opt)
int(f, [a..b, c..d, ...], opt)
Int(f, a..b, opt)
algebraic expression; integrand
name; variable of integration
a, b, c, d
endpoints of interval on which integral is taken
(optional) a sequence of one or more of the options listed below
The following options, which are described in more detail in the sections below, apply to definite integrals only. Where indicated, some options take their default value from environment variables. An option has a default value of false if its corresponding environment variable is not set.
Specifies whether int considers all possible real values for any symbols in the limits of integration. The default value is taken from _EnvAllSolutions.
Specifies whether int looks for discontinuities. continuous=true instructs int not to look for discontinuities. The default value is taken from _EnvContinuous.
Specifies whether a principal value integral is computed, that is, whether infinities are allowed to cancel in some cases. The default value is taken from _EnvCauchyPrincipalValue.
Specifies which internal integration routine(s) to use. See int/methods for more details.
Specifies whether numeric integration methods are used instead of symbolic methods. If numeric=true is specified, other numeric integration options can be specified. See evalf/Int for more details.
useunits=truefalse or useunits=list of unit specifications
Specifies whether to preprocess the arguments to make sure units are handled correctly. The default behavior is automatically detect units and handle them if detected. Specifying useunits=false can disable that handling if units should be treated as symbols. Specifying useunits=true can force handling in cases where the automatic detection fails, such as when the integrand is an operator that can return units.
Finally, this option can be used to specify the units of some or all of the variables involved in the integration useunits=[x::Unit(unit_1), y::Unit(unit_2)] for integrals of expressions and useunits=[Unit(unit_1), Unit(unit_2)] for integrals of operators. The units specified this way will override the units detected automatically, but an error will be generated if the units are not consistent.
This help page contains complete information about the int and Int commands. For basic information, see the int help page.
The int command computes an indefinite or definite integral of the expression expression with respect to the variable x. The name integrate is a synonym for int.
You can enter the command int using either the 1-D or 2-D calling sequence. For instance, int(f,x) is equivalent to ∫fⅆx.
Indefinite integration is performed if the second argument x is a name. Note that no constant of integration appears in the result. Definite integration is performed if the second argument is of the form x=a..b where a and b are the endpoints of the interval of integration.
If a and b are finite complex numbers, the int routine computes the definite integral over the straight line from a to b.
If the integrand is specified as a Maple operator f, then the second argument must be a range a..b and not an equation, that is, a variable of integration must not be specified.
If Maple cannot find a closed form expression for the integral, the function call itself is returned.
The capitalized function name Int is the inert version of the int function, which simply returns unevaluated. It appears gray so that it is easily distinguished from a returned int calling sequence. In this form, expression can be a procedure, which can be integrated numerically.
For numerical integration, use the option numeric. For more information on numerical integration, see evalf/Int.
If the second argument is a list, an iterated integration is performed on the variables or ranges in the order given. For definite integration, the list can be omitted and the ranges can be given as a sequence. For indefinite integration, the variables can be given as a sequence instead of a list if all variables appear in the expression being integrated. Otherwise, there may be confusion between variables and option names.
Note that the indefinite integral in Maple is defined up to a piecewise constant. Hence, the results returned by int may be discontinuous at some points. In many cases, you can ensure continuity by replacing an indefinite integration problem by the corresponding definite integral.
int( floor(x), x );
int( floor(t), t = 0..x ) assuming x > 0;
For symbolic definite integration, two options control how discontinuities are handled. By default, int checks for discontinuities, and computes the integral as a sum of independent definite integrals, each of which involves an integrand which has no discontinuities in the interior of the interval of integration.
The 'continuous' option instructs int not to look for discontinuities.
The 'CauchyPrincipalValue' option instructs int to consider the limits from the left and right at each interior discontinuity as a single limit (so that the independent variable approaches the discontinuity at the same rate from the right and the left). This allows for positive and negative infinite limits to cancel.
You can opt to enter a Cauchy principal value integral in typeset 2-D math, PV⁢∫abfⅆx, by using command completion. For details, see Entering Commands in 2-D Math.
Returning the Entire Set of Solutions
The 'AllSolutions' option, if set, forces int to return the entire set of solutions for the specified definite integral. This applies only to parameters in the endpoints of the interval, not to parameters in the integrand.
Note: The results returned with the 'AllSolutions' option may not be valid for some non-real parameter values. The results are always valid for all real parameter values.
The Maple series function may be invoked on an unevaluated integral to compute a series expansion of the integral (when possible).
When int is applied to a series structure, the internal function `int/series` is invoked to compute the integral efficiently.
The inert version of the int function simply returns unevaluated.
f ≔ 7⁢x3+3⁢x2+5⁢x:
Inert objects can be evaluated with the value command.
A double integral
Integrals with Units
Using the useunits option to force incompatible dimensions will result in an error
Error, (in Tools:-IntegrateExpression) units problem can't make expression (t^2-Units:-Unit(s^2))*Units:-Unit(m/s^3) unit-free with units [t::Units:-Unit(m)]
A units problem error can also come from an inherent units incompatibility between the limits of integration and the integrand
Error, (in Tools:-IntegrateExpression) units problem can't make expression (t^2-Units:-Unit(h^2))*Units:-Unit(m/h^3) unit-free with units [t::Units:-Unit(ft)]
Turning off units processing can force a symbolic answer even when the units do not appear to be compatible. This may necessary to produce answers in some parametric cases, but in this example produces a sum of terms with incompatible dimensions
An Elliptic integral
Integrating algebraic functions (only for RootOf notation)
f ≔ x2−1+3⁢1+x213⁢x1+x223⁢x2+22
f ≔ convert⁡f,RootOf:
g ≔ ∫fⅆx
Define a Maple operator using the unapply command.
f ≔ unapply⁡x+y,x
Specify the 'AllSolutions' option.
Warning, unable to determine if 0 is between a and 2; try to use assumptions or use the AllSolutions option
r ≔ int⁡1x,x=a..2,'AllSolutions'
The int command was updated in Maple 2016; see Advanced Math Updates for Maple 2016.
The int command was updated in Maple 2021.
The method option was updated in Maple 2023.
symbolic order integration
Download Help Document