dsolveLinear
Solves the first-order linear equation y' + p(x) y = q(x) by the integrating factor. Gives y with the constant C. Refused when integrate cannot do an integral on the way.
p(expression) --q(expression) --x(variable) --
Solves the first-order linear equation y' + p(x) y = q(x) by the integrating factor. Gives y with the constant C. Refused when integrate cannot do an integral on the way.
p (expression) -- q (expression) -- x (variable) -- Solves y' = f(x) g(y) implicitly: left (the integral of 1/g in y) equals right (the integral of f in x, plus C). A constant solution, where g(y) = 0, is not in this form.
f (expression) -- in x onlyg (expression) -- in y onlyx (variable) -- y (variable) -- Solves the exact equation M dx + N dy = 0: gives F, with the solution F(x, y) = C. Refused unless dM/dy = dN/dx.
m (expression) -- n (expression) -- x (variable) -- y (variable) -- Solves a y'' + b y' + c y = f(x) with constant coefficients: the general solution with C1 and C2, exact. f is 0, or a sum of polynomial times exp(kx) times cos(wx) or sin(wx), sinh and cosh included (undetermined coefficients, resonance included). Other f is refused.
a (number) -- b (number) -- c (number) -- f (expression) -- x (variable) -- The Laplace transform of f(t), for f a sum of polynomial times exp(kt) times cos(wt) or sin(wt), sinh and cosh included; valid for s larger than every k. Other f is refused.
f (expression) -- t (variable) -- s (variable) -- The inverse Laplace transform of a proper rational F(s), by partial fractions over the rationals. Refused: a top of degree not below the bottom's, a quadratic factor repeated more than twice, a root known only as a decimal.
F (expression) -- s (variable) -- t (variable) -- The exact sum of a series, n from a to b or to inf. To inf: geometric, c/n^p for even p up to 10, telescoping rational terms, x^n/n!, x^n/n; the arithmetico-geometric family n^m x^n and sums of such terms (sumSeries(k^2/2^k, k, 1, inf) is 6, k^3/2^k is 26); any term that obeys a linear recurrence of order up to 4, found from exact samples and checked on more; shift-telescoping terms N(n)/(g(n) g(n + 1)) with a constant, polynomial or exponential numerator, the tail's limit taken; and alternating or repeating signs over 1/n, which periodicSeries sums ((-1)^(n + 1)/n is ln(2)). Names bound to numbers in the script are put in first, the index excepted: after s = 2, sumSeries(1/k^s, k, 1, inf) is pi^2/6. A letter as the upper bound gives the closed form in it, as sumClosed: sumSeries(1/(k*(k + 1)), k, 1, n) is 1 - 1/(n + 1). A series shown divergent is an error; one outside these families is refused, not estimated: seriesTest says whether it converges, and fsum adds a long partial sum in doubles.
term (expression) -- the n-th term, an expression in nn (variable) -- the indexa (number) -- first indexb (number or inf) -- last index, inf, or a letter for the closed formThe sum over k >= 1 of c_k/k with the numerators repeating a pattern that adds to 0: periodicSeries([1, -1]) is ln(2), [1, 0, -1, 0] is pi/4, [1, 0, 1, 0, -1, 0, -1, 0] is pi/(2 sqrt 2), [1, 1, -2] is ln(3). Exact in pi, ln and sin where the calculator has the values (Gauss's theorem on the digamma function).
pattern (number[]) -- the numerators of one periodThe sum of an expression over an index from a whole number to an upper bound that is a letter or an expression, as a closed form in that bound: sumClosed(k^2, k, 1, n) is Faulhaber's polynomial, 2^k from 0 is 2^(n + 1) - 1, 1/(k*(k + 1)) is 1 - 1/(n + 1). Terms of the form k^m x^k (and sums of such) and telescoping rational terms; sumSeries and sum do the same with such a bound.
body (symbolic) -- e.g. k^2index (string) -- e.g. kfrom (number) -- first index, a whole numberto (symbolic) -- the upper bound, e.g. n or 2*n - 1Partial fractions: the polynomial part plus A/(x - r)^j for each rational root r of the denominator, with multiplicities. apart(1/(x*(x + 1)), x) is 1/x - 1/(x + 1); (x^2 + 1)/(x - 1)^2 is 1 + 2/(x - 1) + 2/(x - 1)^2. A denominator with an irreducible quadratic factor is refused.
expr (symbolic) -- a fraction of polynomialsvariable (string) -- e.g. xH_n = 1 + 1/2 + ... + 1/n as an exact fraction: harmonicNumber(5) is 137/60, harmonicNumber(100) a 41-digit over 40-digit fraction (approx() of it is 5.187377518). sum(1/k, k, 1, n) has no closed form in n; this function is its name.
n (number) -- a whole numberWhether a series converges, and by which test: geometric, p-series, limit comparison, alternating series, nth term, ratio or integral. Fields verdict (converges, diverges or inconclusive) and test_used. It says nothing about absolute against conditional convergence. Inconclusive means only that these tests did not decide it.
term (expression) -- the n-th termn (variable) -- the indexa (number) -- the first nThe exact limit of an expression as a variable approaches a point. Gives a value, inf or -inf, divergent (the one-sided limits differ), or unsupported when gtmath cannot decide -- never a numeric guess. A 0/0 or c/0 form is decided by the orders of vanishing of the top and the bottom (L'Hospital's rule done exactly: sin(3x)/(5x), (1 - cos x)/x^2); abs(g) by its sign on each side; a sin/cos factor times a part tending to 0 by the squeeze theorem; a product with an infinite factor, exp of an infinite limit and f^g as e^(g ln f) (x^(1/x) at 0 from the right is 0). The answer stays exact: (2^t - 1)/t at 0 is ln(2), ((2^t + 3^t + 5^t)/3)^(3/t) is 30, (1 + 2/x)^(x/5) at inf is exp(2/5); round(raw, 5), approx(raw) and {{raw:3dp}} in a page give its decimal (1.49182), {{raw}} shows it as it is. floor, ceil, frac and fracPart of a moving part are replaced by the constant they take on the side approached, found from the argument's own limit and the side it comes from: limit(floor(x), x, 1, "left") is 0 and "right" 1, x*floor(x) at 2 is 2 and 4, floor(sin(x)/x) at 0 from the right is 0, (floor(x)^2 + sin(floor(x)))/floor(x) at 0 from the left is -1 + sin(1); the two-sided limit compares the sides (divergent at an integer, 1 at 3/2). An if piece is chosen by its condition just beside the point: limit(if(x < 1, x^2, 2*x), x, 1, "left") is 1, "right" 2, two-sided divergent; ifs nest. A sum(f, k, a, n) inside is replaced by its closed form first: sum(k, k, 1, n)/n^2 as n -> inf is 1/2. The point may be inf, -inf or oo, which is limitInf.
expr (symbolic) -- e.g. sin(x)/xwrt (string) -- the variable, unquoted (e.g. x)point (symbolic) -- the point approached, e.g. 0; inf, -inf or oo for a limit at infinitydirection (string) -- optional: "left", "right" or "two_sided" (the default)The Taylor polynomial of an expression about a point, through the given order (at most 32). Only the truncated polynomial -- no claim about the remainder.
expr (symbolic) -- e.g. exp(x)wrt (string) -- the variable, unquotedpoint (symbolic) -- the expansion point, e.g. 0order (number) -- the highest power keptThe exact definite integral between two bounds; a bound may be inf or -inf, a multiple of pi (defint(sin(x)^2, x, 0, 2*pi) = pi) or a symbol (defint(x^2, x, 0, a) = a^3/3). With letter bounds or a letter in the integrand the bounds are put in, and ln|u| at the two ends is written as the ratio: defint(k/V, V, V_1, V_2) = k ln(V_2/V_1), defint(1/V^g, V, V_1, V_2) = (V_2^(1 - g) - V_1^(1 - g))/(1 - g). The Gaussian moments over (0, inf), (-inf, 0) or the whole line come in closed form: defint(x^2*exp(-x^2), x, 0, inf) = sqrt(pi)/4, defint(v^2*exp(-b*v^2), v, 0, inf) = sqrt(pi)/(4 b^(3/2)) (b taken positive); with a finite bound these have no closed form, use nintegrate. With number bounds the range is checked first: a blow-up inside is never crossed by F(b) - F(a). If any piece is infinite the integral diverges, with no cancelling (the principal value is another thing). Every failure is an error that says in full what happened, from what was computed: the verdict, the function and range, the point or stretch at fault, each piece's limit, and what to try. defint(1/x^2, x, -1, 1) says it diverges, is undefined at x = 0, both limits +inf, and that plain F(b) - F(a) = -2 is not valid. So does an integral with no real value on part of the range, one whose bad points cannot be found surely, and one whose F jumps inside the range. A value still prints as a plain value. With a letter in the bounds the integral is taken to exist, as physics writes it, and the range is not checked.
expr (symbolic) -- e.g. x^2wrt (string) -- the variable, unquotedlower (symbolic) -- the lower bound, or -infupper (symbolic) -- the upper bound, or infThe limit as the variable goes to inf (default) or -inf: exact for polynomials and rational functions, and for leading terms with roots ((2x + 1)/sqrt(x^2 + 3) is 2, at -inf -2), e^g, ln, arctan, a bounded sin or cos factor over a growing one (sin(x)/x is 0), L'Hospital's rule (ln(x)/x, x^2*e^(-x), e^x/x^3) and the conjugate (sqrt(x^2 + x) - x is 1/2); an infinite limit is the number inf or -inf, a limit of sin(x) divergent. Exponential terms c*b^(kx) are divided by the dominant base: 2^k/(3^k - 2^k) is 0, ln(2^x + 3^x)/x is ln(3), 3^k - 2^k is inf. Where these rules stop, x = 1/t is put in and the limit at 0 from the right taken, with the leading power pulled out of each radical and the lowest power of t scaled out of top and bottom: the 1^inf form (1 + 3/x)^(2*x) is exp(6), (3x + 2 sin x)/(5x + 4 cos x) 3/5, sqrt(x)*(sqrt(x + 1) - sqrt(x)) 1/2, x^(1/x) 1, ((2^t + 3^t + 5^t)/3)^(3/t) 125, the 0*inf forms x*sin(3/x) 3 and x*(exp(2/x) - 1) 2, sqrt(4x^2 + 9)*sin(3/x) 6, a quotient of radicals of unlike orders 0. A sum(f, k, a, n) inside is replaced by its closed form first: (1/n^100)*sum(r^99, r, 1, n) is 1/100. limit(expr, x, inf) and limit(expr, x, oo) are the same call.
expr (symbolic) -- e.g. (2*x^2+1)/(x^2-3)wrt (string) -- the variable, unquoted (e.g. x)direction (string) -- optional: "positive" (default) or "negative"The limit as n grows of an expression whose n stands only in exponents of the letter x, case by case in x: a record with inside (|x| < 1, where x^n tends to 0), one (x = 1), minus_one (x = -1), above (x > 1) and below (x < -1). limitSeq((x^(2*n) - 1)/(x^(2*n) + 1), n, x) is {inside = -1, one = 0, minus_one = 0, above = 1, below = 1}; a case may keep x: (ln(2 + x) - x^(2n) sin x)/(1 + x^(2n)) has inside ln(2 + x), one -1/2 sin(1) + ln(sqrt(3)), above and below -sin(x). An odd power x^n alternates at -1 (divergent), tends to inf above and -inf below. A case is used on as any value, the function of x the limit defines: limit(L.inside, x, 1, "left") is -1. n anywhere but in an exponent of x (x^n/(n + 1)): every case unsupported. limit(expr, n, inf) alone reads x as a number above 1.
expr (symbolic) -- e.g. (x^(2*n) - 1)/(x^(2*n) + 1)n (string) -- the growing variable, unquotedx (string) -- the letter in the base, unquotedThe leading term of the Laurent expansion of a rational expression at a pole.
expr (symbolic) -- a rational expressionwrt (string) -- the variable, unquoted (e.g. x)point (number) -- the poleThe principal part (all negative-power terms) of a rational expression's Laurent expansion at a pole.
expr (symbolic) -- a rational expressionwrt (string) -- the variable, unquoted (e.g. x)point (number) -- the poleThe signed area between a curve and the axis over an interval (area below the axis counts negative).
curve (symbolic) -- e.g. xwrt (string) -- the variable, unquoted (e.g. x)lower (symbolic) -- left boundupper (symbolic) -- right boundThe signed area between an upper and a lower curve over an interval.
upper_curve (symbolic) -- e.g. xlower_curve (symbolic) -- e.g. x^2wrt (string) -- the variable, unquoted (e.g. x)lower (symbolic) -- left boundupper (symbolic) -- right boundThe total (unsigned) area between two polynomial curves, splitting the interval where they cross.
first (symbolic) -- a polynomialsecond (symbolic) -- a polynomialwrt (string) -- the variable, unquoted (e.g. x)lower (symbolic) -- left boundupper (symbolic) -- right boundThe exact arc length of y = f(x) over an interval, when the integral is one gtmath can do exactly.
curve (symbolic) -- e.g. xwrt (string) -- the variable, unquoted (e.g. x)lower (symbolic) -- left boundupper (symbolic) -- right boundA Riemann sum, exact wherever the function's values are: riemannSum(f, x, a, b, n, method) with n equal parts of [a, b] (sin(x) on [0, pi] with 2 left parts is pi/2), or riemannSum(xs, ys, method) for a table of values with parts of any width (a midpoint sum of a table takes [x0, x2], [x2, x4], ... at heights y1, y3, ...). The method is "left" (the default), "right", "midpoint" or "trapezoid". riemann(g, ...) draws it.
f (symbolic) -- e.g. x^2 (or a list xs for a table)wrt (string) -- the variable, unquoted (or the list ys for a table)a (number) -- left endb (number) -- right endn (number) -- the number of equal parts, 1 to 10000method (string) -- optional: "left", "right", "midpoint" or "trapezoid"The line integral of a scalar field along a parameterized curve (with respect to arc length).
field (symbolic) -- e.g. x + ycoords (string) -- the coordinate names as a list, e.g. [x, y, z]curve (array) -- the curve's coordinates in the parameter, e.g. [t, t]param (string) -- the parameter, e.g. tlower (symbolic) -- parameter startupper (symbolic) -- parameter endThe line integral (work) of a vector field along a parameterized curve: the integral of F . dr.
field (array) -- the field's components, e.g. [y, x]coords (string) -- the coordinate names as a list, e.g. [x, y, z]curve (array) -- e.g. [t, t^2]param (string) -- the parameterlower (symbolic) -- parameter startupper (symbolic) -- parameter endThe flux of a vector field through a parameterized surface r(u, v), oriented by r_u x r_v.
field (array) -- e.g. [0, 0, 1]coords (string) -- the coordinate names as a list, e.g. [x, y, z]surface (array) -- e.g. [u, v, 0]u (string) -- first parameteru_lower (symbolic) -- u_upper (symbolic) -- v (string) -- second parameterv_lower (symbolic) -- v_upper (symbolic) -- The area of a parameterized surface r(u, v) over a parameter rectangle.
surface (array) -- e.g. [u, v, 0]u (string) -- first parameteru_lower (symbolic) -- u_upper (symbolic) -- v (string) -- second parameterv_lower (symbolic) -- v_upper (symbolic) -- The integral of a scalar field over a parameterized volume; orientation says whether the Jacobian is "nonnegative" or "nonpositive".
field (symbolic) -- e.g. 1coords (string) -- the coordinate names as a list, e.g. [x, y, z]volume (array) -- e.g. [u, v, w]orientation (string) -- "nonnegative" or "nonpositive"u (string) -- u_lower (symbolic) -- u_upper (symbolic) -- v (string) -- v_lower (symbolic) -- v_upper (symbolic) -- w (string) -- w_lower (symbolic) -- w_upper (symbolic) -- The critical points of a function, each with whether it is a local minimum, maximum or neither (by the second derivative, or where f'' = 0 by the first derivative test). A polynomial: its stationary points with their multiplicity, roots gtmath cannot find exactly reported as an unresolved factor. P/Q*e^L (P, Q, L polynomials: x*e^(-x), x/(x^2 + 1)): exactly, over the whole line. Any other function needs an interval [a, b]: the points inside where f' = 0 or f' does not exist (|x|, x^(2/3)), found numerically and given exactly when a fraction p/q or p/q*pi (q <= 12) fits, else as a decimal; classified by the first derivative test.
f (symbolic) -- e.g. x^3 - 3*xwrt (string) -- the variable, unquoted (e.g. x)lower (number) -- optional: left end of an interval (needed for a function that is not a polynomial or P/Q*e^L, e.g. sin(x))upper (number) -- optional: right endWhat the graph of a rational function P/Q has, each value exact: zeros, vertical_asymptotes, holes (holes_x, and holes_y the height the graph would have there: a factor of P and Q cancelled), horizontal_asymptote (0 when P's degree is less than Q's, the ratio of leading coefficients when equal, none when greater) and slant_asymptote (the quotient P/Q when P's degree is one more, else none). A list with nothing in it means none of that kind.
f (symbolic) -- a polynomial over a polynomial, e.g. (x^2 - 1)/(x^2 - 3*x + 2)wrt (string) -- the variable, unquoted (e.g. x)Where a function is increasing/decreasing and concave up/down, as intervals: over the whole line for a polynomial or P/Q*e^L (x*e^(-x)), on [a, b] for any function (the breaks found as criticalPoints finds them).
f (symbolic) -- e.g. x*exp(-x)wrt (string) -- the variable, unquoted (e.g. x)lower (number) -- optional: left end of an interval (needed for a function that is not a polynomial or P/Q*e^L, e.g. sin(x))upper (number) -- optional: right endThe absolute minimum and maximum of a function on a closed interval, with where they occur (the candidates test: the ends and the critical points inside). Exact for a polynomial; for other functions exact where the point and the value are (sin x + cos x on [0, 2pi]: sqrt(2) at pi/4), else decimals.
f (symbolic) -- e.g. sin(x) + cos(x)wrt (string) -- the variable, unquoted (e.g. x)lower (number) -- left endupper (number) -- right endThe tangent line to y = p(x) at a point, for a function p. Any function (E43): f(a) and f'(a) exact where the engine has them (sin, cos, tan at multiples of pi, roots), else decimals.
poly (symbolic) -- e.g. x^2wrt (string) -- the variable, unquoted (e.g. x)point (number) -- the x-coordinateThe normal line to y = p(x) at a point, for a function p (a vertical line when the tangent is horizontal). Any function (E43): f(a) and f'(a) exact where the engine has them (sin, cos, tan at multiples of pi, roots), else decimals.
poly (symbolic) -- e.g. x^2wrt (string) -- the variable, unquoted (e.g. x)point (number) -- the x-coordinateThe linear approximation of a function at a point. Any function (E43): f(a) and f'(a) exact where the engine has them (sin, cos, tan at multiples of pi, roots), else decimals.
poly (symbolic) -- e.g. x^3wrt (string) -- the variable, unquoted (e.g. x)point (number) -- the x-coordinatedy/dx for a relation F(x, y) = 0, by implicit differentiation.
relation (symbolic) -- F, meaning F = 0, e.g. x^2 + y^2 - 25x (string) -- the independent variabley (string) -- the dependent variableSubstitutes several variables at once: substAll(e, [x, y], [1, t]).
expr (expression) -- names (name list) -- values (expression list) --