9.2: Line Integrals

Learning Objectives

  • Calculate a scalar line integral along a curve.
  • Calculate a vector line integral along an oriented curve in space.
  • Use a line integral to compute the work done in moving an object along a curve in a vector field.
  • Describe the flux and circulation of a vector field.

We are familiar with single-variable integrals of the form (displaystyle int_{a}^{b}f(x),dx), where the domain of integration is an interval ([a,b]). Such an interval can be thought of as a curve in the (xy)-plane, since the interval defines a line segment with endpoints ((a,0)) and ((b,0))—in other words, a line segment located on the (x)-axis. Suppose we want to integrate over any curve in the plane, not just over a line segment on the (x)-axis. Such a task requires a new kind of integral, called a line integral.

Line integrals have many applications to engineering and physics. They also allow us to make several useful generalizations of the Fundamental Theorem of Calculus. And, they are closely connected to the properties of vector fields, as we shall see.

Scalar Line Integrals

A line integral gives us the ability to integrate multivariable functions and vector fields over arbitrary curves in a plane or in space. There are two types of line integrals: scalar line integrals and vector line integrals. Scalar line integrals are integrals of a scalar function over a curve in a plane or in space. Vector line integrals are integrals of a vector field over a curve in a plane or in space. Let’s look at scalar line integrals first.

A scalar line integral is defined just as a single-variable integral is defined, except that for a scalar line integral, the integrand is a function of more than one variable and the domain of integration is a curve in a plane or in space, as opposed to a curve on the (x)-axis.

For a scalar line integral, we let (C) be a smooth curve in a plane or in space and let ff be a function with a domain that includes (C). We chop the curve into small pieces. For each piece, we choose point (P) in that piece and evaluate (f) at (P). (We can do this because all the points in the curve are in the domain of (f).) We multiply (f(P)) by the arc length of the piece (Delta s), add the product (f(P)Delta s) over all the pieces, and then let the arc length of the pieces shrink to zero by taking a limit. The result is the scalar line integral of the function over the curve.

For a formal description of a scalar line integral, let (C) be a smooth curve in space given by the parameterization (vecs r(t)=⟨x(t),y(t),z(t)⟩), (a≤t≤b). Let (f(x,y,z)) be a function with a domain that includes curve (C). To define the line integral of the function (f) over (C), we begin as most definitions of an integral begin: we chop the curve into small pieces. Partition the parameter interval ([a,b]) into (n) subintervals ([t_{i−l},t_i]) of equal width for (1≤i≤n), where (t_0=a) and (t_n=b) (Figure (PageIndex{1})). Let (t_{i}^*) be a value in the (i^{th}) interval ([t_{i−l},t_i]). Denote the endpoints of (vecs r(t_0)), (vecs r(t_1)),…, (vecs r(t_n)) by (P_0),…, (P_n). Points Pi divide curve (C) into (n) pieces (C_1), (C_2),…, (C_n),with lengths (Delta s_1), (Delta s_2),…, (Delta s_n), respectively. Let (P_{i}^*) denote the endpoint of (vecs r(t_{i}^*)) for (1≤i≤n). Now, we evaluate the function (f) at point (P_{i}^*) for (1≤i≤n). Note that (P_{i}^*) is in piece (C_1), and therefore (P_{i}^*) is in the domain of (f). Multiply (f(P_{i}^*)) by the length (Delta s_1) of (C_1), which gives the area of the “sheet” with base (C_1), and height (f(P_{i}^{*})). This is analogous to using rectangles to approximate area in a single-variable integral. Now, we form the sum (displaystyle sum_{i=1}^{n} f(P_{i}^{*}),Delta s_i).

Note the similarity of this sum versus a Riemann sum; in fact, this definition is a generalization of a Riemann sum to arbitrary curves in space. Just as with Riemann sums and integrals of form (displaystyle int_{a}^{b}g(x),dx), we define an integral by letting the width of the pieces of the curve shrink to zero by taking a limit. The result is the scalar line integral of (f) along (C).

You may have noticed a difference between this definition of a scalar line integral and a single-variable integral. In this definition, the arc lengths (Delta s_1), (Delta s_2),…, (Delta s_n) aren’t necessarily the same; in the definition of a single-variable integral, the curve in the (x)-axis is partitioned into pieces of equal length. This difference does not have any effect in the limit. As we shrink the arc lengths to zero, their values become close enough that any small difference becomes irrelevant.

DEFINITION: scalar line integral

Let (f) be a function with a domain that includes the smooth curve (C) that is parameterized by (vecs r(t)=⟨x(t),y(t),z(t)⟩), (a≤t≤b). The scalar line integral of (f) along (C) is

[ displaystyle int_C f(x,y,z) ,ds=lim_{n oinfty}sum_{i=1}^{n}f(P_{i}^{*}),Delta s_i label{eq12}]

if this limit exists (t_{i}^{*}) and (Delta s_i) are defined as in the previous paragraphs). If (C) is a planar curve, then (C) can be represented by the parametric equations (x=x(t)), (y=y(t)), and (a≤t≤b). If (C) is smooth and (f(x,y)) is a function of two variables, then the scalar line integral of (f) along (C) is defined similarly as

[displaystyle int_C f(x,y) ,ds=lim_{n oinfty}sum_{i=1}^{n} f(P_{i}^{*}),Delta s_i, label{eq13}]

if this limit exists.

If (f) is a continuous function on a smooth curve (C), then (displaystyle int_C f ,ds) always exists. Since (displaystyle int_C f ,ds) is defined as a limit of Riemann sums, the continuity of (f) is enough to guarantee the existence of the limit, just as the integral (displaystyle int_{a}^{b}g(x),dx) exists if (g) is continuous over ([a,b]).

Before looking at how to compute a line integral, we need to examine the geometry captured by these integrals. Suppose that (f(x,y)≥0) for all points ((x,y)) on a smooth planar curve (C). Imagine taking curve (C) and projecting it “up” to the surface defined by (f(x,y)), thereby creating a new curve (C′) that lies in the graph of (f(x,y)) (Figure (PageIndex{2})). Now we drop a “sheet” from (C′) down to the (xy)-plane. The area of this sheet is (displaystyle int_C f(x,y)ds). If (f(x,y)≤0) for some points in (C), then the value of (displaystyle int_C f(x,y),ds) is the area above the (xy)-plane less the area below the (xy)-plane. (Note the similarity with integrals of the form (displaystyle int_{a}^{b}g(x),dx).)

From this geometry, we can see that line integral (displaystyle int_C f(x,y),ds) does not depend on the parameterization (vecs r(t)) of (C). As long as the curve is traversed exactly once by the parameterization, the area of the sheet formed by the function and the curve is the same. This same kind of geometric argument can be extended to show that the line integral of a three-variable function over a curve in space does not depend on the parameterization of the curve.

Example (PageIndex{1}): ​​​​​​Finding the Value of a Line Integral

Find the value of integral (displaystyle int_C 2,ds), where (C) is the upper half of the unit circle.


The integrand is (f(x,y)=2). Figure (PageIndex{3}) shows the graph of (f(x,y)=2), curve C, and the sheet formed by them. Notice that this sheet has the same area as a rectangle with width (pi) and length (2). Therefore, (displaystyle int_C 2 ,ds=2pi, ext{units}^2).

To see that (displaystyle int_C 2 ,ds=2pi) using the definition of line integral, we let (vecs r(t)) be a parameterization of (C). Then, (f(vecs r(t_i))=2) for any number (t_i) in the domain of (vecs r). Therefore,

[egin{align*} int_C f ,ds &=lim_{n oinfty}sum_{i=1}^{n} f(vecs r(t_{i}^{*})),Delta s_i [4pt] &=lim_{n oinfty}sum_{i=1}^{n}2,Delta s_i [4pt] &=2lim_{n oinfty}sum_{i=1}^{n},Delta s_i [4pt] &=2( ext{length}space ext{of}space C) [4pt] &=2pi , ext{units}^2. end{align*}]

Exercise (PageIndex{1})

Find the value of (displaystyle int_C(x+y),ds), where (C) is the curve parameterized by (x=t), (y=t), (0≤t≤1).


Find the shape formed by (C) and the graph of function (f(x,y)=x+y).



Note that in a scalar line integral, the integration is done with respect to arc length (s), which can make a scalar line integral difficult to calculate. To make the calculations easier, we can translate (displaystyle int_C f,ds) to an integral with a variable of integration that is (t).

Let (vecs r(t)=⟨x(t),y(t),z(t)⟩) for (a≤t≤b) be a parameterization of (C). Since we are assuming that (C) is smooth, (vecs r′(t)=⟨x′(t),y′(t),z′(t)⟩) is continuous for all (t) in ([a,b]). In particular, (x′(t)), (y′(t)), and (z′(t)) exist for all (t) in ([a,b]). According to the arc length formula, we have

[ ext{length}(C_i)=Delta s_i=displaystyle int_{t_{i−1}}^{t_i} ‖vecs r′(t)‖,dt.]

If width (Delta t_i=t_i−t_{i−1}) is small, then function (displaystyle int_{t_{i−1}}^{t_i} ‖vecs r′(t)‖,dt,≈,‖vecs r′(t_i^*)‖,Delta t_i), (‖vecs r′(t)‖) is almost constant over the interval ([t_{i−1},t_i]).Therefore,

[displaystyle int_{t_{i−1}}^{t_i} ‖vecs r′(t)‖,dt,≈,‖vecs r′(t_{i}^{*})‖,Delta t_i, label{approxLineIntEq1}]

and we have

[sum_{i=1}^{n} f(vecs r(t_i^*)),Delta s_iapproxsum_{i=1}^{n} f(vecs r(t_{i}^{*})) ‖vecs r′(t_{i}^{*})‖,Delta t_i.]

See Figure (PageIndex{4}).

Note that

[lim_{n oinfty}sum_{i=1}^{n} f(vecs r(t_i^*))‖vecs r′(t_{i}^{*})‖,Delta t_i=displaystyle int_a^b f(vecs r(t))‖vecs r′(t)‖,dt.]

In other words, as the widths of intervals ([t_{i−1},t_i]) shrink to zero, the sum (displaystyle sum_{i=1}^{n} f(vecs r(t_i^{*}))‖vecs r′(t_{i}^{*})‖,Delta t_i) converges to the integral (displaystyle int_{a}^{b}f(vecs r(t))‖vecs r′(t)‖,dt). Therefore, we have the following theorem.


Let (f) be a continuous function with a domain that includes the smooth curve (C) with parameterization (vecs r(t)), (a≤t≤b). Then

[displaystyle int_C f ,ds=displaystyle int_{a}^{b} f(vecs r(t))‖vecs r′(t)‖,dt.label{scalerLineInt1}]

Although we have labeled Equation ef{approxLineIntEq1} as an equation, it is more accurately considered an approximation because we can show that the left-hand side of Equation ef{approxLineIntEq1} approaches the right-hand side as (n oinfty). In other words, letting the widths of the pieces shrink to zero makes the right-hand sum arbitrarily close to the left-hand sum. Since

[‖vecs r′(t)‖=sqrt{{(x′(t))}^2+{(y′(t))}^2+{(z′(t))}^2},]

we obtain the following theorem, which we use to compute scalar line integrals.

Theorem: Scalar Line Integral Calculation

Let (f) be a continuous function with a domain that includes the smooth curve (C) with parameterization (vecs r(t)=⟨x(t),y(t),z(t)⟩), (a≤t≤b). Then

[displaystyle int_C f(x,y,z) ,ds=displaystyle int_{a}^{b} f(vecs r(t))sqrt{({x′(t))}^2+{(y′(t))}^2+{(z′(t))}^2} ,dt.]


[displaystyle int_C f(x,y) ,ds=displaystyle int_{a}^{b}f(vecs r(t))sqrt{{(x′(t))}^2+{(y′(t))}^2} ,dt]

if (C) is a planar curve and (f) is a function of two variables.

Note that a consequence of this theorem is the equation (ds=‖vecs r′(t)‖ ,dt). In other words, the change in arc length can be viewed as a change in the (t)-domain, scaled by the magnitude of vector (vecs r′(t)).

Example (PageIndex{2}): Evaluating a Line Integral

Find the value of integral (displaystyle int_C(x^2+y^2+z) ,ds), where (C) is part of the helix parameterized by (vecs r(t)=⟨cos t,sin t,t⟩), (0≤t≤2pi).


To compute a scalar line integral, we start by converting the variable of integration from arc length (s) to (t). Then, we can use Equation ef{eq12} to compute the integral with respect to (t). Note that

[f(vecs r(t))={cos}^2 t+{sin}^2 t+t=1+t onumber]


[sqrt{{(x′(t))}^2+{(y′(t))}^2+{(z′(t))}^2} =sqrt{{(−sin(t))}^2+{cos}^2(t)+1} =sqrt{2}. onumber]


[displaystyle int_C(x^2+y^2+z) ,ds=displaystyle int_{0}^{2pi} (1+t)sqrt{2} ,dt. onumber]

Notice that Equation ef{eq12} translated the original difficult line integral into a manageable single-variable integral. Since

[egin{align*} displaystyle int_{0}^{2pi} (1+t)sqrt{2}, dt &={left[sqrt{2}t+dfrac{sqrt{2}t^2}{2} ight]}_{0}^{2pi} [4pt]
&=2sqrt{2}pi+2sqrt{2}{pi}^2, end{align*}]

we have

[displaystyle int_C(x^2+y^2+z) ,ds=2sqrt{2}pi+2sqrt{2}{pi}^2. onumber]

Exercise (PageIndex{2})

Evaluate (displaystyle displaystyle int_C(x^2+y^2+z)ds), where C is the curve with parameterization (vecs r(t)=⟨sin(3t),cos(3t)⟩), (0≤t≤dfrac{pi}{4}).


Use the two-variable version of scalar line integral definition (Equation ef{eq13}).



Example (PageIndex{3}): Independence of Parameterization

Find the value of integral (displaystyle int_C(x^2+y^2+z) ,ds), where (C) is part of the helix parameterized by (vecs r(t)=⟨cos(2t),sin(2t),2t⟩), (0≤t≤π). Notice that this function and curve are the same as in the previous example; the only difference is that the curve has been reparameterized so that time runs twice as fast.


As with the previous example, we use Equation ef{eq12} to compute the integral with respect to (t). Note that (f(vecs r(t))={cos}^2(2t)+{sin}^2(2t)+2t=2t+1) and

[egin{align*} sqrt{{(x′(t))}^2+{(y′(t))}^2+{(z′(t))}^2} &=sqrt{(−sin t+cos t+4)} [4pt] &=22

so we have

[egin{align*} displaystyle int_C(x^2+y^2+z)ds &=2sqrt{2}displaystyle int_{0}^{pi}(1+2t)dt[4pt] &=2sqrt{2}Big[t+t^2Big]_0^{pi} [4pt] &=2sqrt{2}(pi+{pi}^2). end{align*}]

Notice that this agrees with the answer in the previous example. Changing the parameterization did not change the value of the line integral. Scalar line integrals are independent of parameterization, as long as the curve is traversed exactly once by the parameterization.

Exercise (PageIndex{3})

Evaluate line integral (displaystyle int_C(x^2+yz) ,ds), where (C) is the line with parameterization (vecs r(t)=⟨2t,5t,−t⟩), (0≤t≤10). Reparameterize C with parameterization (s(t)=⟨4t,10t,−2t⟩), (0≤t≤5), recalculate line integral (displaystyle int_C(x^2+yz) ,ds), and notice that the change of parameterization had no effect on the value of the integral.


Use Equation ef{eq12}.


Both line integrals equal (−dfrac{1000sqrt{30}}{3}).

Now that we can evaluate line integrals, we can use them to calculate arc length. If (f(x,y,z)=1), then

[egin{align*} displaystyle int_C f(x,y,z) ,ds &=lim_{n oinfty} sum_{i=1}^{n} f(t_{i}^{*}) ,Delta s_i [4pt] &=lim_{n oinfty} sum_{i=1}^{n} ,Delta s_i [4pt] &=lim_{n oinfty} ext{length} (C)[4pt] &= ext{length} (C). end{align*}]

Therefore, (displaystyle int_C 1 ,ds) is the arc length of (C).

Example (PageIndex{4}): Calculating Arc Length

A wire has a shape that can be modeled with the parameterization (vecs r(t)=⟨cos t,sin t,t⟩), (0≤t≤4pi). Find the length of the wire.


The length of the wire is given by (displaystyle int_C 1 ,ds), where (C) is the curve with parameterization (vecs r). Therefore,

[egin{align*} ext{The length of the wire} &=displaystyle int_C 1 ,ds [4pt] &=displaystyle int_{0}^{4pi} ||vecs r′(t)||,dt [4pt] &=displaystyle int_{0}^{4pi} sqrt{(−sin t)^2+cos^2 t+t}dt [4pt] &=displaystyle int_{0}^{4pi} sqrt{1+t} dt [4pt] &=left.dfrac{2{(1+t)}^{frac{3}{2}}}{3} ight|_{0}^{4pi} [4pt] &=frac{2}{3}left((1+4pi)^{3/2}−1 ight). end{align*}]

Exercise (PageIndex{4})

Find the length of a wire with parameterization (vecs r(t)=⟨3t+1,4−2t,5+2t⟩), (0≤t≤4).


Find the line integral of one over the corresponding curve.



Vector Line Integrals

The second type of line integrals are vector line integrals, in which we integrate along a curve through a vector field. For example, let

[vecs F(x,y,z)=P(x,y,z),hat{mathbf i}+Q(x,y,z),hat{mathbf j}+R(x,y,z),hat{mathbf k}]

be a continuous vector field in (ℝ^3) that represents a force on a particle, and let (C) be a smooth curve in (ℝ^3) contained in the domain of (vecs F). How would we compute the work done by (vecs F) in moving a particle along (C)?

To answer this question, first note that a particle could travel in two directions along a curve: a forward direction and a backward direction. The work done by the vector field depends on the direction in which the particle is moving. Therefore, we must specify a direction along curve (C); such a specified direction is called an orientation of a curve. The specified direction is the positive direction along (C); the opposite direction is the negative direction along (C). When (C) has been given an orientation, (C) is called an oriented curve (Figure (PageIndex{5})). The work done on the particle depends on the direction along the curve in which the particle is moving.

A closed curve is one for which there exists a parameterization (vecs r(t)), (a≤t≤b), such that (vecs r(a)=vecs r(b)), and the curve is traversed exactly once. In other words, the parameterization is one-to-one on the domain ((a,b)).

Let (vecs r(t)) be a parameterization of (C) for (a≤t≤b) such that the curve is traversed exactly once by the particle and the particle moves in the positive direction along (C). Divide the parameter interval ([a,b]) into n subintervals ([t_{i−1},t_i]), (0≤i≤n), of equal width. Denote the endpoints of (r(t_0)), (r(t_1)),…, (r(t_n)) by (P_0),…,(P_n). Points (P_i) divide (C) into n pieces. Denote the length of the piece from (P_{i−1}) to (P_i) by (Delta s_i). For each (i), choose a value (t_i^*) in the subinterval ([t_{i−1},t_i]). Then, the endpoint of (vecs r(t_i^*)) is a point in the piece of (C) between (P_{i−1}) and (P_i) (Figure (PageIndex{6})). If (Delta s_i) is small, then as the particle moves from (P_{i−1}) to (P_i) along (C), it moves approximately in the direction of (vecs T(P_i)), the unit tangent vector at the endpoint of (vecs r(t_i^*)). Let (P_i^*) denote the endpoint of (vecs r(t_i^*)). Then, the work done by the force vector field in moving the particle from (P_{i−1}) to (P_i) is (vecs F(P_i^*)·(Delta s_i vecs T(P_i^*))), so the total work done along (C) is

[sum_{i=1}^n vecs F(P_i^*)·(Delta s_i vecs T(P_i^*))=sum_{i=1}^n vecs F(P_i^*)·vecs T(P_i^*),Delta s_i.]

Letting the arc length of the pieces of (C) get arbitrarily small by taking a limit as (n ightarrow infty) gives us the work done by the field in moving the particle along (C). Therefore, the work done by (vecs{F}) in moving the particle in the positive direction along (C) is defined as

[W=displaystyle int_C vecs{F} cdot vecs{T},ds,]

which gives us the concept of a vector line integral.

DEFINITION: Line Integral of a vector field

The vector line integral of vector field (vecs{F}) along oriented smooth curve (C) is

[displaystyle int_C vecs{F} cdot vecs{T}, ds=lim_{n oinfty} sum_{i=1}^{n} vecs{F}(P_i^*) cdot vecs{T}(P_i^*)Delta s_i]

if that limit exists.

With scalar line integrals, neither the orientation nor the parameterization of the curve matters. As long as the curve is traversed exactly once by the parameterization, the value of the line integral is unchanged. With vector line integrals, the orientation of the curve does matter. If we think of the line integral as computing work, then this makes sense: if you hike up a mountain, then the gravitational force of Earth does negative work on you. If you walk down the mountain by the exact same path, then Earth’s gravitational force does positive work on you. In other words, reversing the path changes the work value from negative to positive in this case. Note that if (C) is an oriented curve, then we let (−C) represent the same curve but with opposite orientation.

As with scalar line integrals, it is easier to compute a vector line integral if we express it in terms of the parameterization function (vecs{r}) and the variable (t). To translate the integral (displaystyle int_C vecs{F} cdot vecs{T}ds) in terms of (t), note that unit tangent vector (vecs{T}) along (C) is given by (vecs{T}=dfrac{vecs{r}′(t)}{‖vecs{r}′(t)‖}) (assuming (‖vecs{r}′(t)‖≠0)). Since (ds=‖vecs r′(t)‖,dt), as we saw when discussing scalar line integrals, we have

[vecs F·vecs T,ds=vecs F(vecs r(t))·dfrac{vecs r′(t)}{‖vecs r′(t)‖}‖vecs r′(t)‖dt=vecs F(vecs r(t))·vecs r′(t),dt.]

Thus, we have the following formula for computing vector line integrals:

[displaystyle int_Cvecs F·vecs T,ds=displaystyle int_a^b vecs F(vecs r(t))·vecs r′(t),dt.label{lineintformula}]

Because of Equation ef{lineintformula}, we often use the notation (displaystyle int_C vecs{F} cdot dvecs{r}) for the line integral (displaystyle int_C vecs F·vecs T,ds).

If (vecs r(t)=⟨x(t),y(t),z(t)⟩), then (dfrac{dvecs{r}}{dt}) denotes vector (⟨x′(t),y′(t),z′(t)⟩), and (dvecs{r} = vecs r'(t),dt).

Example (PageIndex{5}): Evaluating a Vector Line Integral

Find the value of integral (displaystyle int_C vecs{F} cdot dvecs{r}), where (C) is the semicircle parameterized by (vecs{r}(t)=⟨cos t,sin t⟩), (0≤t≤pi) and (vecs F=⟨−y,x⟩).


We can use Equation ef{lineintformula} to convert the variable of integration from (s) to (t). We then have

[vecs F(vecs r(t))=⟨−sin t,cos t⟩ ; ext{and} ; vecs r′(t)=⟨−sin t,cos t⟩ .]


[egin{align*} displaystyle int_C vecs{F} cdot dvecs{r} &=displaystyle int_0^{pi}⟨−sin t,cos t⟩·⟨−sin t,cos t⟩ ,dt [4pt] &=displaystyle int_0^{pi} {sin}^2 t+{cos}^2 t ,dt [4pt] &=displaystyle int_0^{pi}1 ,dt=pi.end{align*}]

See Figure (PageIndex{7}).

Example (PageIndex{6}): Reversing Orientation

Find the value of integral (displaystyle int_C vecs{F} cdot dvecs{r}), where (C) is the semicircle parameterized by (vecs r(t)=⟨cos (t+π),sin t⟩), (0≤t≤pi) and (vecs F=⟨−y,x⟩).


Notice that this is the same problem as Example (PageIndex{5}), except the orientation of the curve has been traversed. In this example, the parameterization starts at (vecs r(0)=⟨-1,0⟩) and ends at (vecs r(pi)=⟨1,0⟩). By Equation ef{lineintformula},

[egin{align*} displaystyle int_C vecs{F} cdot dvecs{r} &=displaystyle int_0^{pi} ⟨−sin t,cos (t+pi)⟩·⟨−sin (t+pi), cos t⟩dt[4pt] &=displaystyle int_0^{pi}⟨−sin t,−cos t⟩·⟨sin t,cos t⟩dt[4pt] &=displaystyle int_{0}^{π}(−{sin}^2 t−{cos}^2 t)dt [4pt] &=displaystyle int_{0}^{pi}−1dt[4pt] &=−pi. end{align*}]

Notice that this is the negative of the answer in Example (PageIndex{5}). It makes sense that this answer is negative because the orientation of the curve goes against the “flow” of the vector field.

Let (C) be an oriented curve and let (-C) denote the same curve but with the orientation reversed. Then, the previous two examples illustrate the following fact:

[displaystyle int_{-C} vecs{F} cdot dvecs{r}=−displaystyle int_Cvecs{F} cdot dvecs{r}.]

That is, reversing the orientation of a curve changes the sign of a line integral.

Exercise (PageIndex{6})

Let (vecs F=x,hat{mathbf i}+y ,hat{mathbf j}) be a vector field and let (C) be the curve with parameterization (⟨t,t^2⟩) for (0≤t≤2). Which is greater: (displaystyle int_Cvecs F·vecs T,ds) or (displaystyle int_{−C} vecs F·vecs T,ds)?


Imagine moving along the path and computing the dot product (vecs F·vecs T) as you go.


[displaystyle int_C vecs F·vecs T ,ds]

Another standard notation for integral (displaystyle int_C vecs{F} cdot dvecs{r}) is (displaystyle int_C P,dx+Q,dy+R ,dz). In this notation, P, Q, and R are functions, and we think of (dvecs{r}) as vector (⟨dx,dy,dz⟩). To justify this convention, recall that (dvecs{r}=vecs T,ds=vecs r′(t) ,dt=⟨dfrac{dx}{dt},dfrac{dy}{dt},dfrac{dz}{dt}⟩dt). Therefore,

[vecs{F} cdot dvecs{r}=⟨P,Q,R⟩·⟨dx,dy,dz⟩=P,dx+Q,dy+R,dz.]

If (dvecs{r}=⟨dx,dy,dz⟩), then (dfrac{dr}{dt}=⟨dfrac{dx}{dt},dfrac{dy}{dt},dfrac{dz}{dt}⟩), which implies that (dvecs{r}=⟨dfrac{dx}{dt},dfrac{dy}{dt},dfrac{dz}{dt}⟩dt). Therefore

[egin{align} displaystyle int_C vecs{F} cdot dvecs{r} &=displaystyle int_C P,dx+Q,dy+R,dz [4pt] &=displaystyle int_a^bleft(P(vecs r(t))dfrac{dx}{dt}+Q(vecs r(t))dfrac{dy}{dt}+R(vecs r(t))dfrac{dz}{dt} ight),dt. label{eq14}end{align} ]

Example (PageIndex{7}): Finding the Value of an Integral of the Form (displaystyle int_C P,dx+Q,dy+R,dz)

Find the value of integral (displaystyle int_C z,dx+x,dy+y,dz), where (C) is the curve parameterized by (vecs r(t)=⟨t^2,sqrt{t},t⟩), (1≤t≤4).


As with our previous examples, to compute this line integral we should perform a change of variables to write everything in terms of (t). In this case, Equation ef{eq14} allows us to make this change:

[egin{align*} displaystyle int_C z,dx+x,dy+y,dz &=displaystyle int_1^4 left(t(2t)+t^2left(frac{1}{2sqrt{t}} ight)+sqrt{t} ight),dt [4pt] &=displaystyle int_1^4left(2t^2+frac{t^{3/2}}{2}+sqrt{t} ight),dt [4pt] &={left[dfrac{2t^3}{3}+dfrac{t^{5/2}}{5}+dfrac{2t^{3/2}}{3} ight]}_{t=1}^{t=4} [4pt] &=dfrac{793}{15}.end{align*}]

Exercise (PageIndex{7})

Find the value of (displaystyle int_C 4x,dx+z,dy+4y^2,dz), where (C) is the curve parameterized by (vecs r(t)=⟨4cos(2t),2sin(2t),3⟩), (0≤t≤dfrac{pi}{4}).


Write the integral in terms of (t) using Equation ef{eq14}.



We have learned how to integrate smooth oriented curves. Now, suppose that (C) is an oriented curve that is not smooth, but can be written as the union of finitely many smooth curves. In this case, we say that (C) is a piecewise smooth curve. To be precise, curve (C) is piecewise smooth if (C) can be written as a union of n smooth curves (C_1), (C_2),…, (C_n) such that the endpoint of (C_i) is the starting point of (C_{i+1}) (Figure (PageIndex{8})). When curves (C_i) satisfy the condition that the endpoint of (C_i) is the starting point of (C_{i+1}), we write their union as (C_1+C_2+⋯+C_n).

The next theorem summarizes several key properties of vector line integrals.


Let (vecs F) and (vecs G) be continuous vector fields with domains that include the oriented smooth curve (C). Then

  1. (displaystyle int_C(vecs F+vecs G)·dvecs{r}=displaystyle int_C vecs{F} cdot dvecs{r}+displaystyle int_C vecs G·dvecs{r})
  2. (displaystyle int_C kvecs{F} cdot dvecs{r}=kdisplaystyle int_C vecs{F} cdot dvecs{r}), where (k) is a constant
  3. (displaystyle int_C vecs{F} cdot dvecs{r}=displaystyle int_{−C}vecs{F} cdot dvecs{r})
  4. Suppose instead that (C) is a piecewise smooth curve in the domains of (vecs F) and (vecs G), where (C=C_1+C_2+⋯+C_n) and (C_1,C_2,…,C_n) are smooth curves such that the endpoint of (C_i) is the starting point of (C_{i+1}). Then

    [displaystyle int_C vecs F·dvecs{r}=displaystyle int_{C_1} vecs F·dvecs{r}+displaystyle int_{C_2} vecs F·dvecs{r}+⋯+displaystyle int_{C_n} vecs F·dvecs{r}.]

Notice the similarities between these items and the properties of single-variable integrals. Properties i. and ii. say that line integrals are linear, which is true of single-variable integrals as well. Property iii. says that reversing the orientation of a curve changes the sign of the integral. If we think of the integral as computing the work done on a particle traveling along (C), then this makes sense. If the particle moves backward rather than forward, then the value of the work done has the opposite sign. This is analogous to the equation (displaystyle int_a^b f(x),dx=−displaystyle int_b^af(x),dx). Finally, if ([a_1,a_2]), ([a_2,a_3]),…, ([a_{n−1},a_n]) are intervals, then

[displaystyle int_{a_1}^{a_n}f(x) ,dx=displaystyle int_{a_1}^{a_2}f(x),dx+displaystyle int_{a_1}^{a_3}f(x),dx+⋯+displaystyle int_{a_{n−1}}^{a_n} f(x),dx,]

which is analogous to property iv.

Example (PageIndex{8}): Using Properties to Compute a Vector Line Integral

Find the value of integral (displaystyle int_C vecs F·vecs T ,ds), where (C) is the rectangle (oriented counterclockwise) in a plane with vertices ((0,0)), ((2,0)), ((2,1)), and ((0,1)), and where (vecs F=⟨x−2y,y−x⟩) (Figure (PageIndex{9})).


Note that curve (C) is the union of its four sides, and each side is smooth. Therefore (C) is piecewise smooth. Let (C_1) represent the side from ((0,0)) to ((2,0)), let (C_2) represent the side from ((2,0)) to ((2,1)), let (C_3) represent the side from ((2,1)) to ((0,1)), and let (C_4) represent the side from ((0,1)) to ((0,0)) (Figure (PageIndex{9})). Then,

[displaystyle int_C vecs F·vecs T ,dr=displaystyle int_{C_1} vecs F·vecs T ,dr+displaystyle int_{C_2} vecs F·vecs T ,dr+displaystyle int_{C_3} vecs F·vecs T ,dr+displaystyle int_{C_4} vecs F·vecs T ,dr.]

We want to compute each of the four integrals on the right-hand side using Equation ef{eq12}. Before doing this, we need a parameterization of each side of the rectangle. Here are four parameterizations (note that they traverse (C) counterclockwise):

[egin{align*} C_1&: ⟨t,0⟩,0≤t≤2[4pt] C_2&: ⟨2,t⟩, 0≤t≤1 [4pt] C_3&: ⟨2−t,1⟩, 0≤t≤2[4pt] C_4&: ⟨0,1−t⟩, 0≤t≤1. end{align*}]


[egin{align*} displaystyle int_{C_1} vecs F·vecs T ,dr &=displaystyle int_0^2 vecs F(vecs r(t))·vecs r′(t) ,dt [4pt] &=displaystyle int_0^2 ⟨t−2(0),0−t⟩·⟨1,0⟩ ,dt=displaystyle int_0^2 t ,dt [4pt] &=Big[ frac{t^2}{2}Big]_0^2=2. end{align*}]

Notice that the value of this integral is positive, which should not be surprising. As we move along curve (C_1) from left to right, our movement flows in the general direction of the vector field itself. At any point along (C_1), the tangent vector to the curve and the corresponding vector in the field form an angle that is less than 90°. Therefore, the tangent vector and the force vector have a positive dot product all along (C_1), and the line integral will have positive value.

The calculations for the three other line integrals are done similarly:

[egin{align*} displaystyle int_{C_2} vecs{F} cdot dvecs{r} &=displaystyle int_{0}^{1}⟨2−2t,t−2⟩·⟨0,1⟩ ,dt [4pt] &=displaystyle int_{0}^{1} (t−2) ,dt [4pt] &=Big[ frac{t^2}{2}−2tBig]_0^1=−dfrac{3}{2}, end{align*}]

[egin{align*} displaystyle int_{C_3} vecs F·vecs T ,ds &=displaystyle int_0^2⟨(2−t)−2,1−(2−t)⟩·⟨−1,0⟩ ,dt [4pt] &=displaystyle int_0^2t ,dt=2, end{align*}]


[egin{align*} displaystyle int_{C_4} vecs{F} cdot dvecs{r} &=displaystyle int_0^1⟨−2(1−t),1−t⟩·⟨0,−1⟩ ,dt [4pt] &=displaystyle int_0^1(t−1) ,dt [4pt] &=Big[ frac{t^2}{2}−tBig]_0^1=−dfrac{1}{2}. end{align*}]

Thus, we have (displaystyle int_C vecs{F} cdot dvecs{r}=2).

Exercise (PageIndex{8})

Calculate line integral (displaystyle int_C vecs{F} cdot dvecs{r}), where (vecs F) is vector field (⟨y^2,2xy+1⟩) and (C) is a triangle with vertices ((0,0)), ((4,0)), and ((0,5)), oriented counterclockwise.


Write the triangle as a union of its three sides, then calculate three separate line integrals.



Applications of Line Integrals

Scalar line integrals have many applications. They can be used to calculate the length or mass of a wire, the surface area of a sheet of a given height, or the electric potential of a charged wire given a linear charge density. Vector line integrals are extremely useful in physics. They can be used to calculate the work done on a particle as it moves through a force field, or the flow rate of a fluid across a curve. Here, we calculate the mass of a wire using a scalar line integral and the work done by a force using a vector line integral.

Suppose that a piece of wire is modeled by curve C in space. The mass per unit length (the linear density) of the wire is a continuous function ( ho(x,y,z)). We can calculate the total mass of the wire using the scalar line integral (displaystyle int_C ho(x,y,z) ,ds). The reason is that mass is density multiplied by length, and therefore the density of a small piece of the wire can be approximated by ( ho(x^*,y^*,z^*) ,Delta s) for some point ((x^*,y^*,z^*)) in the piece. Letting the length of the pieces shrink to zero with a limit yields the line integral (displaystyle int_C ho(x,y,z) ,ds).

Example (PageIndex{9}): Calculating the Mass of a Wire

Calculate the mass of a spring in the shape of a curve parameterized by (⟨t,2cos t,2sin t⟩), (0≤t≤dfrac{pi}{2}), with a density function given by ( ho(x,y,z)=e^x+yz) kg/m (Figure (PageIndex{10})).


To calculate the mass of the spring, we must find the value of the scalar line integral (displaystyle int_C(e^x+yz),ds), where (C) is the given helix. To calculate this integral, we write it in terms of (t) using Equation ef{eq12}:

[egin{align*} displaystyle int_C left(e^x+yz ight) ,ds &=displaystyle int_0^{ frac{pi}{2}} left((e^t+4cos tsin t)sqrt{1+(−2cos t)^2+(2sin t)^2} ight),dt[4pt] &=displaystyle int_0^{ frac{pi}{2}}left((e^t+4cos tsin t)sqrt{5} ight) ,dt [4pt] &=sqrt{5}Big[e^t+2sin^2 tBig]_{t=0}^{t=pi/2}[4pt] &=sqrt{5}(e^{pi/2}+1). end{align*}]

Therefore, the mass is (sqrt{5}(e^{pi/2}+1)) kg.

Exercise (PageIndex{9})

Calculate the mass of a spring in the shape of a helix parameterized by (vecs r(t)=⟨cos t,sin t,t⟩), (0≤t≤6pi), with a density function given by ( ho (x,y,z)=x+y+z) kg/m.


Calculate the line integral of ( ho) over the curve with parameterization (vecs r).


(18sqrt{2}{pi}^2) kg

When we first defined vector line integrals, we used the concept of work to motivate the definition. Therefore, it is not surprising that calculating the work done by a vector field representing a force is a standard use of vector line integrals. Recall that if an object moves along curve (C) in force field (vecs F), then the work required to move the object is given by (displaystyle int_C vecs{F} cdot dvecs{r}).

Example (PageIndex{10}): ​​​​​​Calculating Work

How much work is required to move an object in vector force field (vecs F=⟨yz,xy,xz⟩) along path (vecs r(t)=⟨t^2,t,t^4⟩,, 0≤t≤1?) See Figure (PageIndex{11}).


Let (C) denote the given path. We need to find the value of (displaystyle int_C vecs{F} cdot dvecs{r}). To do this, we use Equation ef{lineintformula} :

[egin{align*}displaystyle int_C vecs{F} cdot dvecs{r} &=displaystyle int_0^1(⟨t^5,t^3,t^6⟩·⟨2t,1,4t^3⟩) ,dt [4pt] &=displaystyle int_0^1(2t^6+t^3+4t^9) ,dt [4pt] &={Big[dfrac{2t^7}{7}+dfrac{t^4}{4}+dfrac{2t^{10}}{5}Big]}_{t=0}^{t=1}=dfrac{131}{140}. end{align*}]

Flux and Circulation

We close this section by discussing two key concepts related to line integrals: flux across a plane curve and circulation along a plane curve. Flux is used in applications to calculate fluid flow across a curve, and the concept of circulation is important for characterizing conservative gradient fields in terms of line integrals. Both these concepts are used heavily throughout the rest of this chapter. The idea of flux is especially important for Green’s theorem, and in higher dimensions for Stokes’ theorem and the divergence theorem.

Let (C) be a plane curve and let (vecs F) be a vector field in the plane. Imagine (C) is a membrane across which fluid flows, but (C) does not impede the flow of the fluid. In other words, (C) is an idealized membrane invisible to the fluid. Suppose (vecs F) represents the velocity field of the fluid. How could we quantify the rate at which the fluid is crossing (C)?

Recall that the line integral of (vecs F) along (C) is (displaystyle int_C vecs F·vecs T ,ds)—in other words, the line integral is the dot product of the vector field with the unit tangential vector with respect to arc length. If we replace the unit tangential vector with unit normal vector (vecs N(t)) and instead compute integral (int_C vecs F·vecs N ,ds), we determine the flux across (C). To be precise, the definition of integral (displaystyle int_C vecs F·vecs N ,ds) is the same as integral (displaystyle int_C vecs F·vecs T ,ds), except the (vecs T) in the Riemann sum is replaced with (vecs N). Therefore, the flux across (C) is defined as

[displaystyle int_C vecs F·vecs N ,ds=lim_{n oinfty}sum_{i=1}^{n} vecs F(P_i^*)·vecs N(P_i^*),Delta s_i,]

where (P_i^*) and (Delta s_i) are defined as they were for integral (displaystyle int_C vecs F·vecs T ,ds). Therefore, a flux integral is an integral that is perpendicular to a vector line integral, because (vecs N) and (vecs T) are perpendicular vectors.

If (vecs F) is a velocity field of a fluid and (C) is a curve that represents a membrane, then the flux of (vecs F) across (C) is the quantity of fluid flowing across (C) per unit time, or the rate of flow.

More formally, let (C) be a plane curve parameterized by (vecs r(t)=⟨x(t),,y(t)⟩), (a≤t≤b). Let (vecs n(t)=⟨y′(t),,−x′(t)⟩) be the vector that is normal to (C) at the endpoint of (vecs r(t)) and points to the right as we traverse (C) in the positive direction (Figure (PageIndex{12})). Then, (vecs N(t)=dfrac{vecs n(t)}{‖vecs n(t)‖}) is the unit normal vector to (C) at the endpoint of (vecs r(t)) that points to the right as we traverse (C).


The flux of (vecs F) across (C) is line integral

[displaystyle int_C vecs F·dfrac{vecs n(t)}{‖vecs n(t)‖} ,ds.]

We now give a formula for calculating the flux across a curve. This formula is analogous to the formula used to calculate a vector line integral (see Equation ef{lineintformula}).


Let (vecs F) be a vector field and let (C) be a smooth curve with parameterization (r(t)=⟨x(t),y(t)⟩), (a≤t≤b).Let (vecs n(t)=⟨y′(t),−x′(t)⟩). The flux of (vecs F) across (C) is

[displaystyle int_C vecs F·vecs N,ds=displaystyle int_a^bvecs F(vecs r(t))·vecs n(t) ,dt. label{eq84}]


The proof of Equation ef{eq84} is similar to the proof of Equation ef{eq12}. Before deriving the formula, note that

[‖vecs n(t)‖=‖⟨y′(t),−x′(t)⟩‖=sqrt{{(y′(t))}^2+{(x′(t))}^2}=‖vecs r′(t)‖.]


[egin{align*}displaystyle int_C vecs F·vecs N ,ds &=displaystyle int_C vecs F·dfrac{vecs n(t)}{‖vecs n(t)‖} ,ds [4pt] &=displaystyle int_a^b vecs F·dfrac{vecs n(t)}{‖vecs n(t)‖}‖vecs r′(t)‖ ,dt [4pt] &=displaystyle int_a^b vecs F(vecs r(t))·vecs n(t) ,dt. end{align*}]


Example (PageIndex{11}): Flux across a Curve

Calculate the flux of (vecs F=⟨2x,2y⟩) across a unit circle oriented counterclockwise (Figure (PageIndex{13})).


To compute the flux, we first need a parameterization of the unit circle. We can use the standard parameterization (vecs r(t)=⟨cos t,sin t⟩), (0≤t≤2pi). The normal vector to a unit circle is (⟨cos t,sin t⟩). Therefore, the flux is

[egin{align*} displaystyle int_C vecs F·vecs N ,ds &=displaystyle int_0^{2pi}⟨2cos t,2sin t⟩·⟨cos t,sin t⟩ ,dt[4pt] &=displaystyle int_0^{2pi}(2{cos}^2t+2{sin}^2t) ,dt [4pt] &=2displaystyle int_0^{2pi}({cos}^2t+{sin}^2t) ,dt [4pt] &=2displaystyle int_0^{2pi} ,dt=4pi.end{align*}]

Exercise (PageIndex{11})

Calculate the flux of (vecs F=⟨x+y,2y⟩) across the line segment from ((0,0)) to ((2,3)), where the curve is oriented from left to right.


Use Equation ef{eq84}.



Let (vecs F(x,y)=⟨P(x,y),Q(x,y)⟩) be a two-dimensional vector field. Recall that integral (displaystyle int_C vecs F·vecs T ,ds) is sometimes written as (displaystyle int_C P,dx+Q,dy). Analogously, flux (displaystyle int_C vecs F·vecs N ,ds) is sometimes written in the notation (displaystyle int_C −Q,dx+P,dy), because the unit normal vector (vecs N) is perpendicular to the unit tangent (vecs T). Rotating the vector (dvecs{r}=⟨dx,dy⟩) by 90° results in vector (⟨dy,−dx⟩). Therefore, the line integral in Example (PageIndex{8}) can be written as (displaystyle int_C −2y,dx+2x,dy).

Now that we have defined flux, we can turn our attention to circulation. The line integral of vector field (vecs F) along an oriented closed curve is called the circulation of (vecs F) along (C). Circulation line integrals have their own notation: (oint_C vecs F·vecs T ,ds). The circle on the integral symbol denotes that (C) is “circular” in that it has no endpoints. Example (PageIndex{5}) shows a calculation of circulation.

To see where the term circulation comes from and what it measures, let (vecs v) represent the velocity field of a fluid and let (C) be an oriented closed curve. At a particular point (P), the closer the direction of (vecs v(P)) is to the direction of (vecs T(P)), the larger the value of the dot product (vecs v(P)·vecs T(P)). The maximum value of (vecs v(P)·vecs T(P)) occurs when the two vectors are pointing in the exact same direction; the minimum value of (vecs v(P)·vecs T(P)) occurs when the two vectors are pointing in opposite directions. Thus, the value of the circulation (oint_C vecs v·vecs T ,ds) measures the tendency of the fluid to move in the direction of (C).

Example (PageIndex{12}): Calculating Circulation

Let (vecs F=⟨−y,,x⟩) be the vector field from Example (PageIndex{3}) and let (C) represent the unit circle oriented counterclockwise. Calculate the circulation of (vecs F) along (C).


We use the standard parameterization of the unit circle: (vecs r(t)=⟨cos t,sin t⟩), (0≤t≤2pi). Then, (vecs F(vecs r(t))=⟨−sin t,cos t⟩) and (vecs r′(t)=⟨−sin t,cos t⟩). Therefore, the circulation of (vecs F) along (C) is

[egin{align*} oint_C vecs F·vecs T ,ds &=displaystyle int_0^{2pi}⟨−sin t,cos t⟩·⟨−sin t,cos t⟩ ,dt [4pt] &=displaystyle int_0^{2pi} ({sin}^2 t+{cos}^2 t) ,dt [4pt] &=displaystyle int_0^{2pi} ,dt=2pi. end{align*}]

Notice that the circulation is positive. The reason for this is that the orientation of (C) “flows” with the direction of (vecs F). At any point along the circle, the tangent vector and the vector from (vecs F) form an angle of less than 90°, and therefore the corresponding dot product is positive.

In Example (PageIndex{12}), what if we had oriented the unit circle clockwise? We denote the unit circle oriented clockwise by (−C). Then

[oint_{−C} vecs F·vecs T ,ds=−oint_C vecs F·vecs T ,ds=−2pi.]

Notice that the circulation is negative in this case. The reason for this is that the orientation of the curve flows against the direction of (vecs F).

Exercise (PageIndex{12})

Calculate the circulation of (vecs F(x,y)=⟨−dfrac{y}{x^2+y^2},,dfrac{x}{x^2+y^2}⟩) along a unit circle oriented counterclockwise.


Use Equation ef{eq84}.



Example (PageIndex{13}): Calculating Work

Calculate the work done on a particle that traverses circle (C) of radius 2 centered at the origin, oriented counterclockwise, by field (vecs F(x,y)=⟨−2,,y⟩). Assume the particle starts its movement at ((1,,0)).


The work done by (vecs F) on the particle is the circulation of (vecs F) along (C): (oint_C vecs F·vecs T ,ds). We use the parameterization (vecs r(t)=⟨2cos t,,2sin t⟩), (0≤t≤2pi) for (C). Then, (vecs r′(t)=⟨−2sin t,,2cos t⟩) and (vecs F(vecs r(t))=⟨−2,,2sin t⟩). Therefore, the circulation of (vecs F) along (C) is

[egin{align*} oint_C vecs F·vecs T ,ds &=displaystyle int_0^{2pi} ⟨−2,2sin t⟩·⟨−2sin t,2cos t⟩ ,dt[4pt] &=displaystyle int_0^{2pi} (4sin t+4sin tcos t) ,dt[4pt] &={Big[−4cos t+4{sin}^2 tBig]}_0^{2pi}[4pt] &=left(−4cos(2pi)+2{sin}^2(2pi) ight)−left(−4cos(0)+4{sin}^2(0) ight)[4pt] &=−4+4=0.end{align*}]

The force field does zero work on the particle.

Notice that the circulation of (vecs F) along (C) is zero. Furthermore, notice that since (vecs F) is the gradient of (f(x,y)=−2x+dfrac{y^2}{2}), (vecs F) is conservative. We prove in a later section that under certain broad conditions, the circulation of a conservative vector field along a closed curve is zero.

Exercise (PageIndex{14})

Calculate the work done by field (vecs F(x,y)=⟨2x,,3y⟩) on a particle that traverses the unit circle. Assume the particle begins its movement at ((−1,,0)).


Use Equation ef{eq84}.



Key Concepts

  • Line integrals generalize the notion of a single-variable integral to higher dimensions. The domain of integration in a single-variable integral is a line segment along the (x)-axis, but the domain of integration in a line integral is a curve in a plane or in space.
  • If (C) is a curve, then the length of (C) is (displaystyle int_C ,ds).
  • There are two kinds of line integral: scalar line integrals and vector line integrals. Scalar line integrals can be used to calculate the mass of a wire; vector line integrals can be used to calculate the work done on a particle traveling through a field.
  • Scalar line integrals can be calculated using Equation ef{eq12}; vector line integrals can be calculated using Equation ef{lineintformula}.
  • Two key concepts expressed in terms of line integrals are flux and circulation. Flux measures the rate that a field crosses a given line; circulation measures the tendency of a field to move in the same direction as a given closed curve.

Key Equations

  • Calculating a scalar line integral
    (displaystyle int_C f(x,y,z) ,ds=displaystyle int_a^bf(vecs r(t))sqrt{{(x′(t))}^2+{(y′(t))}^2+{(z′(t))}^2} ,dt)
  • Calculating a vector line integral
    (displaystyle int_C vecs F·dvecs{r}=int_C vecs F·vecs T ,ds=int_a^bvecs F(vecs r(t))·vecs r′(t),dt)
    (displaystyle int_C P,dx+Q,dy+R,dz=int_a^b (P(vecs r(t))dfrac{dx}{dt}+Q(vecs r(t))dfrac{dy}{dt}+R(vecs r(t))dfrac{dz}{dt}) ,dt)
  • Calculating flux
    (displaystyle int_C vecs F·dfrac{vecs n(t)}{‖vecs n(t)‖},ds=int_a^b vecs F(vecs r(t))·vecs n(t) ,dt)


the tendency of a fluid to move in the direction of curve (C). If (C) is a closed curve, then the circulation of (vecs F) along (C) is line integral (∫_C vecs F·vecs T ,ds), which we also denote (∮_Cvecs F·vecs T ,ds).
closed curve
a curve for which there exists a parameterization (vecs r(t), a≤t≤b), such that (vecs r(a)=vecs r(b)), and the curve is traversed exactly once
the rate of a fluid flowing across a curve in a vector field; the flux of vector field (vecs F) across plane curve (C) is line integral (∫_C vecs F·frac{vecs n(t)}{‖vecs n(t)‖} ,ds)
line integral
the integral of a function along a curve in a plane or in space
orientation of a curve
the orientation of a curve (C) is a specified direction of (C)
piecewise smooth curve
an oriented curve that is not smooth, but can be written as the union of finitely many smooth curves
scalar line integral
the scalar line integral of a function (f) along a curve (C) with respect to arc length is the integral (displaystyle int_C f,ds), it is the integral of a scalar function (f) along a curve in a plane or in space; such an integral is defined in terms of a Riemann sum, as is a single-variable integral
vector line integral
the vector line integral of vector field (vecs F) along curve (C) is the integral of the dot product of (vecs F) with unit tangent vector (vecs T) of (C) with respect to arc length, (∫_C vecs F·vecs T, ds); such an integral is defined in terms of a Riemann sum, similar to a single-variable integral

Line Integrals and Conservative Vector Fields

where C is a curve directed by a choice of forward unit tangent vector T, and F is a vector field defined in a vicinity of C. The key observation is that if r(t) parametrizes C in such a way that the forward direction corresponds to increasing t, then we have the identity

so that the integral takes the form

where and are the initial and terminal values of the parameter t. It is important to understand that the parametrization r(t) and the vector field F are independent of one another except for the requirement that the composition F(r(t)) must make sense for all relevant values of t. Note also that all of this makes equally good sense in the plane, where F and r each have two components, and in 3-space, where each has three components.


Pre-calculus integration Edit

The first documented systematic technique capable of determining integrals is the method of exhaustion of the ancient Greek astronomer Eudoxus (ca. 370 BC), which sought to find areas and volumes by breaking them up into an infinite number of divisions for which the area or volume was known. [1] This method was further developed and employed by Archimedes in the 3rd century BC and used to calculate the area of a circle, the surface area and volume of a sphere, area of an ellipse, the area under a parabola, the volume of a segment of a paraboloid of revolution, the volume of a segment of a hyperboloid of revolution, and the area of a spiral. [2]

A similar method was independently developed in China around the 3rd century AD by Liu Hui, who used it to find the area of the circle. This method was later used in the 5th century by Chinese father-and-son mathematicians Zu Chongzhi and Zu Geng to find the volume of a sphere. [3]

In the Middle East, Hasan Ibn al-Haytham, Latinized as Alhazen ( c. 965 – c. 1040 AD) derived a formula for the sum of fourth powers. [4] He used the results to carry out what would now be called an integration of this function, where the formulae for the sums of integral squares and fourth powers allowed him to calculate the volume of a paraboloid. [5]

The next significant advances in integral calculus did not begin to appear until the 17th century. At this time, the work of Cavalieri with his method of Indivisibles, and work by Fermat, began to lay the foundations of modern calculus, [6] with Cavalieri computing the integrals of x n up to degree n = 9 in Cavalieri's quadrature formula. [7] Further steps were made in the early 17th century by Barrow and Torricelli, who provided the first hints of a connection between integration and differentiation. Barrow provided the first proof of the fundamental theorem of calculus. [8] Wallis generalized Cavalieri's method, computing integrals of x to a general power, including negative powers and fractional powers. [9]

Leibniz and Newton Edit

The major advance in integration came in the 17th century with the independent discovery of the fundamental theorem of calculus by Leibniz and Newton. [10] The theorem demonstrates a connection between integration and differentiation. This connection, combined with the comparative ease of differentiation, can be exploited to calculate integrals. In particular, the fundamental theorem of calculus allows one to solve a much broader class of problems. Equal in importance is the comprehensive mathematical framework that both Leibniz and Newton developed. Given the name infinitesimal calculus, it allowed for precise analysis of functions within continuous domains. This framework eventually became modern calculus, whose notation for integrals is drawn directly from the work of Leibniz.

Formalization Edit

While Newton and Leibniz provided a systematic approach to integration, their work lacked a degree of rigour. Bishop Berkeley memorably attacked the vanishing increments used by Newton, calling them "ghosts of departed quantities". [11] Calculus acquired a firmer footing with the development of limits. Integration was first rigorously formalized, using limits, by Riemann. [12] Although all bounded piecewise continuous functions are Riemann-integrable on a bounded interval, subsequently more general functions were considered—particularly in the context of Fourier analysis—to which Riemann's definition does not apply, and Lebesgue formulated a different definition of integral, founded in measure theory (a subfield of real analysis). Other definitions of integral, extending Riemann's and Lebesgue's approaches, were proposed. These approaches based on the real number system are the ones most common today, but alternative approaches exist, such as a definition of integral as the standard part of an infinite Riemann sum, based on the hyperreal number system.

Historical notation Edit

The notation for the indefinite integral was introduced by Gottfried Wilhelm Leibniz in 1675. [13] He adapted the integral symbol, , from the letter ſ (long s), standing for summa (written as ſumma Latin for "sum" or "total"). The modern notation for the definite integral, with limits above and below the integral sign, was first used by Joseph Fourier in Mémoires of the French Academy around 1819–20, reprinted in his book of 1822. [14]

Isaac Newton used a small vertical bar above a variable to indicate integration, or placed the variable inside a box. The vertical bar was easily confused with . x or x′ , which are used to indicate differentiation, and the box notation was difficult for printers to reproduce, so these notations were not widely adopted. [15]

First use of the term Edit

The term was first printed in Latin by Jacob Bernoulli in 1690: "Ergo et horum Integralia aequantur". [16]

In general, the integral of a real-valued function f(x) with respect to a real variable x on an interval [a, b] is written as

The integral sign ∫ represents integration. The symbol dx , called the differential of the variable x , indicates that the variable of integration is x . The function f(x) is called the integrand, the points a and b are called the limits of integration, and the integral is said to be over the interval [a, b] , called the interval of integration. [17] A function is said to be integrable if its integral over its domain is finite, and when limits are specified, the integral is called a definite integral.

When the limits are omitted, as in

the integral is called an indefinite integral, which represents a class of functions (the antiderivative) whose derivative is the integrand. [18] The fundamental theorem of calculus relates the evaluation of definite integrals to indefinite integrals. There are several extensions of the notation for integrals to encompass integration on unbounded domains and/or in multiple dimensions (see later sections of this article).

In advanced settings, it is not uncommon to leave out dx when only the simple Riemann integral is being used, or the exact type of integral is immaterial. For instance, one might write ∫ a b ( c 1 f + c 2 g ) = c 1 ∫ a b f + c 2 ∫ a b g < extstyle int _^(c_<1>f+c_<2>g)=c_<1>int _^f+c_<2>int _^g> to express the linearity of the integral, a property shared by the Riemann integral and all generalizations thereof. [19]

Integrals appear in many practical situations. For instance, from the length, width and depth of a swimming pool which is rectangular with a flat bottom, one can determine the volume of water it can contain, the area of its surface, and the length of its edge. But if it is oval with a rounded bottom, integrals are required to find exact and rigorous values for these quantities. In each case, one may divide the sought quantity into infinitely many infinitesimal pieces, then sum the pieces to achieve an accurate approximation.

For example, to find the area of the region bounded by the graph of the function f(x) = √ x between x = 0 and x = 1 , one can cross the interval in five steps ( 0, 1/5, 2/5, . 1 ), then fill a rectangular using the right end height of each piece (thus √ 0 , √ 1/5 , √ 2/5 , . √ 1 ) and sum their areas to get an approximation of

which is larger than the exact value. Alternatively, when replacing these subintervals by ones with the left end height of each piece, the approximation one gets is too low: with twelve such subintervals the approximated area is only 0.6203. However, when the number of pieces increase to infinity, it will reach a limit which is the exact value of the area sought (in this case, 2/3 ). One writes

which means 2/3 is the result of a weighted sum of function values, √ x , multiplied by the infinitesimal step widths, denoted by dx , on the interval [0, 1] .

There are many ways of formally defining an integral, not all of which are equivalent. The differences exist mostly to deal with differing special cases which may not be integrable under other definitions, but also occasionally for pedagogical reasons. The most commonly used definitions are Riemann integrals and Lebesgue integrals.

Riemann integral Edit

The Riemann integral is defined in terms of Riemann sums of functions with respect to tagged partitions of an interval. [20] A tagged partition of a closed interval [a, b] on the real line is a finite sequence

This partitions the interval [a, b] into n sub-intervals [xi−1, xi] indexed by i , each of which is "tagged" with a distinguished point ti ∈ [xi−1, xi] . A Riemann sum of a function f with respect to such a tagged partition is defined as

thus each term of the sum is the area of a rectangle with height equal to the function value at the distinguished point of the given sub-interval, and width the same as the width of sub-interval, Δi = xixi−1 . The mesh of such a tagged partition is the width of the largest sub-interval formed by the partition, maxi=1. n Δi . The Riemann integral of a function f over the interval [a, b] is equal to S if: [21]

When the chosen tags give the maximum (respectively, minimum) value of each interval, the Riemann sum becomes an upper (respectively, lower) Darboux sum, suggesting the close connection between the Riemann integral and the Darboux integral.

Lebesgue integral Edit

It is often of interest, both in theory and applications, to be able to pass to the limit under the integral. For instance, a sequence of functions can frequently be constructed that approximate, in a suitable sense, the solution to a problem. Then the integral of the solution function should be the limit of the integrals of the approximations. However, many functions that can be obtained as limits are not Riemann-integrable, and so such limit theorems do not hold with the Riemann integral. Therefore, it is of great importance to have a definition of the integral that allows a wider class of functions to be integrated. [22]

Such an integral is the Lebesgue integral, that exploits the following fact to enlarge the class of integrable functions: if the values of a function are rearranged over the domain, the integral of a function should remain the same. Thus Henri Lebesgue introduced the integral bearing his name, explaining this integral thus in a letter to Paul Montel: [23]

I have to pay a certain sum, which I have collected in my pocket. I take the bills and coins out of my pocket and give them to the creditor in the order I find them until I have reached the total sum. This is the Riemann integral. But I can proceed differently. After I have taken all the money out of my pocket I order the bills and coins according to identical values and then I pay the several heaps one after the other to the creditor. This is my integral.

As Folland puts it, "To compute the Riemann integral of f , one partitions the domain [a, b] into subintervals", while in the Lebesgue integral, "one is in effect partitioning the range of f ". [24] The definition of the Lebesgue integral thus begins with a measure, μ. In the simplest case, the Lebesgue measure μ(A) of an interval A = [a, b] is its width, ba , so that the Lebesgue integral agrees with the (proper) Riemann integral when both exist. [25] In more complicated cases, the sets being measured can be highly fragmented, with no continuity and no resemblance to intervals.

Using the "partitioning the range of f " philosophy, the integral of a non-negative function f : RR should be the sum over t of the areas between a thin horizontal strip between y = t and y = t + dt . This area is just μ< x : f(x) > t> dt . Let f ∗ (t) = μ< x : f(x) > t > . The Lebesgue integral of f is then defined by

where the integral on the right is an ordinary improper Riemann integral ( f ∗ is a strictly decreasing positive function, and therefore has a well-defined improper Riemann integral). [26] For a suitable class of functions (the measurable functions) this defines the Lebesgue integral.

A general measurable function f is Lebesgue-integrable if the sum of the absolute values of the areas of the regions between the graph of f and the x -axis is finite: [27]

In that case, the integral is, as in the Riemannian case, the difference between the area above the x -axis and the area below the x -axis: [28]

Other integrals Edit

Although the Riemann and Lebesgue integrals are the most widely used definitions of the integral, a number of others exist, including:

  • The Darboux integral, which is defined by Darboux sums (restricted Riemann sums) yet is equivalent to the Riemann integral - a function is Darboux-integrable if and only if it is Riemann-integrable. Darboux integrals have the advantage of being easier to define than Riemann integrals.
  • The Riemann–Stieltjes integral, an extension of the Riemann integral which integrates with respect to a function as opposed to a variable.
  • The Lebesgue–Stieltjes integral, further developed by Johann Radon, which generalizes both the Riemann–Stieltjes and Lebesgue integrals.
  • The Daniell integral, which subsumes the Lebesgue integral and Lebesgue–Stieltjes integral without depending on measures.
  • The Haar integral, used for integration on locally compact topological groups, introduced by Alfréd Haar in 1933.
  • The Henstock–Kurzweil integral, variously defined by Arnaud Denjoy, Oskar Perron, and (most elegantly, as the gauge integral) Jaroslav Kurzweil, and developed by Ralph Henstock.
  • The Itô integral and Stratonovich integral, which define integration with respect to semimartingales such as Brownian motion.
  • The Young integral, which is a kind of Riemann–Stieltjes integral with respect to certain functions of unbounded variation.
  • The rough path integral, which is defined for functions equipped with some additional "rough path" structure and generalizes stochastic integration against both semimartingales and processes such as the fractional Brownian motion.
  • The Choquet integral, a subadditive or superadditive integral created by the French mathematician Gustave Choquet in 1953.

Linearity Edit

The collection of Riemann-integrable functions on a closed interval [a, b] forms a vector space under the operations of pointwise addition and multiplication by a scalar, and the operation of integration

is a linear functional on this vector space. Thus, the collection of integrable functions is closed under taking linear combinations, and the integral of a linear combination is the linear combination of the integrals: [29]

Similarly, the set of real-valued Lebesgue-integrable functions on a given measure space E with measure μ is closed under taking linear combinations and hence form a vector space, and the Lebesgue integral

is a linear functional on this vector space, so that: [28]

More generally, consider the vector space of all measurable functions on a measure space (E,μ) , taking values in a locally compact complete topological vector space V over a locally compact topological field K, f : EV . Then one may define an abstract integration map assigning to each function f an element of V or the symbol ,

that is compatible with linear combinations. [30] In this situation, the linearity holds for the subspace of functions whose integral is an element of V (i.e. "finite"). The most important special cases arise when K is R , C , or a finite extension of the field Qp of p-adic numbers, and V is a finite-dimensional vector space over K , and when K = C and V is a complex Hilbert space.

Linearity, together with some natural continuity properties and normalization for a certain class of "simple" functions, may be used to give an alternative definition of the integral. This is the approach of Daniell for the case of real-valued functions on a set X , generalized by Nicolas Bourbaki to functions with values in a locally compact topological vector space. See Hildebrandt 1953 for an axiomatic characterization of the integral.

Inequalities Edit

A number of general inequalities hold for Riemann-integrable functions defined on a closed and bounded interval [a, b] and can be generalized to other notions of integral (Lebesgue and Daniell).

    Upper and lower bounds. An integrable function f on [a, b] , is necessarily bounded on that interval. Thus there are real numbers m and M so that mf (x) ≤ M for all x in [a, b] . Since the lower and upper sums of f over [a, b] are therefore bounded by, respectively, m(ba) and M(ba) , it follows that

Conventions Edit

In this section, f is a real-valued Riemann-integrable function. The integral

over an interval [a, b] is defined if a < b . This means that the upper and lower sums of the function f are evaluated on a partition a = x0x1 ≤ . . . ≤ xn = b whose values xi are increasing. Geometrically, this signifies that integration takes place "left to right", evaluating f within intervals [x i , x i +1] where an interval with a higher index lies to the right of one with a lower index. The values a and b , the end-points of the interval, are called the limits of integration of f . Integrals can also be defined if a > b : [17]

With a = b , this implies:

The first convention is necessary in consideration of taking integrals over subintervals of [a, b] the second says that an integral taken over a degenerate interval, or a point, should be zero. One reason for the first convention is that the integrability of f on an interval [a, b] implies that f is integrable on any subinterval [c, d] , but in particular integrals have the property that if c is any element of [a, b] , then: [29]

With the first convention, the resulting relation

is then well-defined for any cyclic permutation of a , b , and c .

The fundamental theorem of calculus is the statement that differentiation and integration are inverse operations: if a continuous function is first integrated and then differentiated, the original function is retrieved. [33] An important consequence, sometimes called the second fundamental theorem of calculus, allows one to compute integrals by using an antiderivative of the function to be integrated. [34]

First theorem Edit

Let f be a continuous real-valued function defined on a closed interval [a, b] . Let F be the function defined, for all x in [a, b] , by

Then, F is continuous on [a, b] , differentiable on the open interval (a, b) , and

for all x in (a, b) .

Second theorem Edit

Let f be a real-valued function defined on a closed interval [ a, b ] that admits an antiderivative F on [a, b] . That is, f and F are functions such that for all x in [a, b] ,

If f is integrable on [a, b] then

Improper integrals Edit

A "proper" Riemann integral assumes the integrand is defined and finite on a closed and bounded interval, bracketed by the limits of integration. An improper integral occurs when one or more of these conditions is not satisfied. In some cases such integrals may be defined by considering the limit of a sequence of proper Riemann integrals on progressively larger intervals.

If the interval is unbounded, for instance at its upper end, then the improper integral is the limit as that endpoint goes to infinity: [35]

If the integrand is only defined or finite on a half-open interval, for instance (a, b] , then again a limit may provide a finite result: [36]

That is, the improper integral is the limit of proper integrals as one endpoint of the interval of integration approaches either a specified real number, or ∞ , or −∞ . In more complicated cases, limits are required at both endpoints, or at interior points.

Multiple integration Edit

Just as the definite integral of a positive function of one variable represents the area of the region between the graph of the function and the x-axis, the double integral of a positive function of two variables represents the volume of the region between the surface defined by the function and the plane that contains its domain. [37] For example, a function in two dimensions depends on two real variables, x and y, and the integral of a function f over the rectangle R given as the Cartesian product of two intervals R = [ a , b ] × [ c , d ] can be written

where the differential dA indicates that integration is taken with respect to area. This double integral can be defined using Riemann sums, and represents the (signed) volume under the graph of z = f(x,y) over the domain R. [38] Under suitable conditions (e.g., if f is continuous), Fubini's theorem states that this integral can be expressed as an equivalent iterated integral [39]

This reduces the problem of computing a double integral to computing one-dimensional integrals. Because of this, another notation for the integral over R uses a double integral sign: [38]

Integration over more general domains is possible. The integral of a function f, with respect to volume, over an n-dimensional region D of R n ^> is denoted by symbols such as:

Line integrals and surface integrals Edit

The concept of an integral can be extended to more general domains of integration, such as curved lines and surfaces inside higher-dimensional spaces. Such integrals are known as line integrals and surface integrals respectively. These have important applications in physics, as when dealing with vector fields.

A line integral (sometimes called a path integral) is an integral where the function to be integrated is evaluated along a curve. [40] Various different line integrals are in use. In the case of a closed curve it is also called a contour integral.

The function to be integrated may be a scalar field or a vector field. The value of the line integral is the sum of values of the field at all points on the curve, weighted by some scalar function on the curve (commonly arc length or, for a vector field, the scalar product of the vector field with a differential vector in the curve). [41] This weighting distinguishes the line integral from simpler integrals defined on intervals. Many simple formulas in physics have natural continuous analogs in terms of line integrals for example, the fact that work is equal to force, F , multiplied by displacement, s , may be expressed (in terms of vector quantities) as: [42]

For an object moving along a path C in a vector field F such as an electric field or gravitational field, the total work done by the field on the object is obtained by summing up the differential work done in moving from s to s + ds . This gives the line integral [43]

A surface integral generalizes double integrals to integration over a surface (which may be a curved set in space) it can be thought of as the double integral analog of the line integral. The function to be integrated may be a scalar field or a vector field. The value of the surface integral is the sum of the field at all points on the surface. This can be achieved by splitting the surface into surface elements, which provide the partitioning for Riemann sums. [44]

For an example of applications of surface integrals, consider a vector field v on a surface S that is, for each point x in S , v(x) is a vector. Imagine that a fluid flows through S , such that v(x) determines the velocity of the fluid at x . The flux is defined as the quantity of fluid flowing through S in unit amount of time. To find the flux, one need to take the dot product of v with the unit surface normal to S at each point, which will give a scalar field, which is integrated over the surface: [45]

The fluid flux in this example may be from a physical fluid such as water or air, or from electrical or magnetic flux. Thus surface integrals have applications in physics, particularly with the classical theory of electromagnetism.

Contour integrals Edit

In complex analysis, the integrand is a complex-valued function of a complex variable z instead of a real function of a real variable x . When a complex function is integrated along a curve γ in the complex plane, the integral is denoted as follows

Integrals of differential forms Edit

A differential form is a mathematical concept in the fields of multivariable calculus, differential topology, and tensors. Differential forms are organized by degree. For example, a one-form is a weighted sum of the differentials of the coordinates, such as:

E ( x , y , z ) d x + F ( x , y , z ) d y + G ( x , y , z ) d z

where E, F, G are functions in three dimensions. A differential one-form can be integrated over an oriented path, and the resulting integral is just another way of writing a line integral. Here the basic differentials dx, dy, dz measure infinitesimal oriented lengths parallel to the three coordinate axes.

A differential two-form is a sum of the form

G ( x , y , z ) d x ∧ d y + E ( x , y , z ) d y ∧ d z + F ( x , y , z ) d z ∧ d x .

Here the basic two-forms d x ∧ d y , d z ∧ d x , d y ∧ d z measure oriented areas parallel to the coordinate two-planes. The symbol ∧ denotes the wedge product, which is similar to the cross product in the sense that the wedge product of two forms representing oriented lengths represents an oriented area. A two-form can be integrated over an oriented surface, and the resulting integral is equivalent to the surface integral giving the flux of E i + F j + G k +Fmathbf +Gmathbf > .

Unlike the cross product, and the three-dimensional vector calculus, the wedge product and the calculus of differential forms makes sense in arbitrary dimension and on more general manifolds (curves, surfaces, and their higher-dimensional analogs). The exterior derivative plays the role of the gradient and curl of vector calculus, and Stokes' theorem simultaneously generalizes the three theorems of vector calculus: the divergence theorem, Green's theorem, and the Kelvin-Stokes theorem.

Summations Edit

The discrete equivalent of integration is summation. Summations and integrals can be put on the same foundations using the theory of Lebesgue integrals or time scale calculus.

Integrals are used extensively in many areas. For example, in probability theory, integrals are used to determine the probability of some random variable falling within a certain range. [46] Moreover, the integral under an entire probability density function must equal 1, which provides a test of whether a function with no negative values could be a density function or not. [47]

Integrals can be used for computing the area of a two-dimensional region that has a curved boundary, as well as computing the volume of a three-dimensional object that has a curved boundary. The area of a two-dimensional region can be calculated using the aforementioned definite integral. [48] The volume of a three-dimensional object such as a disc or washer can be computed by disc integration using the equation for the volume of a cylinder, π r 2 h h> , where r is the radius. In the case of a simple disc created by rotating a curve about the x -axis, the radius is given by f(x) , and its height is the differential dx . Using an integral with bounds a and b , the volume of the disc is equal to: [49]

Integrals are also used in thermodynamics, where thermodynamic integration is used to calculate the difference in free energy between two given states.

Analytical Edit

The most basic technique for computing definite integrals of one real variable is based on the fundamental theorem of calculus. Let f(x) be the function of x to be integrated over a given interval [a, b] . Then, find an antiderivative of f that is, a function F such that F′ = f on the interval. Provided the integrand and integral have no singularities on the path of integration, by the fundamental theorem of calculus,

Sometimes it is necessary to use one of the many techniques that have been developed to evaluate integrals. Most of these techniques rewrite one integral as a different one which is hopefully more tractable. Techniques include integration by substitution, integration by parts, integration by trigonometric substitution, and integration by partial fractions.

Alternative methods exist to compute more complex integrals. Many nonelementary integrals can be expanded in a Taylor series and integrated term by term. Occasionally, the resulting infinite series can be summed analytically. The method of convolution using Meijer G-functions can also be used, assuming that the integrand can be written as a product of Meijer G-functions. There are also many less common ways of calculating definite integrals for instance, Parseval's identity can be used to transform an integral over a rectangular region into an infinite sum. Occasionally, an integral can be evaluated by a trick for an example of this, see Gaussian integral.

Computations of volumes of solids of revolution can usually be done with disk integration or shell integration.

Specific results which have been worked out by various techniques are collected in the list of integrals.

Symbolic Edit

Many problems in mathematics, physics, and engineering involve integration where an explicit formula for the integral is desired. Extensive tables of integrals have been compiled and published over the years for this purpose. With the spread of computers, many professionals, educators, and students have turned to computer algebra systems that are specifically designed to perform difficult or tedious tasks, including integration. Symbolic integration has been one of the motivations for the development of the first such systems, like Macsyma and Maple.

A major mathematical difficulty in symbolic integration is that in many cases, a relatively simple function does not have integrals that can be expressed in closed form involving only elementary functions, include rational and exponential functions, logarithm, trigonometric functions and inverse trigonometric functions, and the operations of multiplication and composition. The Risch algorithm provides a general criterion to determine whether the antiderivative of an elementary function is elementary, and to compute it if it is. However, functions with closed expressions of antiderivatives are the exception, and consequently, computerized algebra systems have no hope of being able to find an antiderivative for a randomly constructed elementary function. On the positive side, if the 'building blocks' for antiderivatives are fixed in advance, it may still be possible to decide whether the antiderivative of a given function can be expressed using these blocks and operations of multiplication and composition, and to find the symbolic answer whenever it exists. The Risch algorithm, implemented in Mathematica, Maple and other computer algebra systems, does just that for functions and antiderivatives built from rational functions, radicals, logarithm, and exponential functions.

Some special integrands occur often enough to warrant special study. In particular, it may be useful to have, in the set of antiderivatives, the special functions (like the Legendre functions, the hypergeometric function, the gamma function, the incomplete gamma function and so on). Extending the Risch's algorithm to include such functions is possible but challenging and has been an active research subject.

More recently a new approach has emerged, using D-finite functions, which are the solutions of linear differential equations with polynomial coefficients. Most of the elementary and special functions are D-finite, and the integral of a D-finite function is also a D-finite function. This provides an algorithm to express the antiderivative of a D-finite function as the solution of a differential equation. This theory also allows one to compute the definite integral of a D-function as the sum of a series given by the first coefficients, and provides an algorithm to compute any coefficient.

Numerical Edit

Definite integrals may be approximated using several methods of numerical integration. The rectangle method relies on dividing the region under the function into a series of rectangles corresponding to function values and multiplies by the step width to find the sum. A better approach, the trapezoidal rule, replaces the rectangles used in a Riemann sum with trapezoids. The trapezoidal rule weights the first and last values by one half, then multiplies by the step width to obtain a better approximation. [52] The idea behind the trapezoidal rule, that more accurate approximations to the function yield better approximations to the integral, can be carried further: Simpson's rule approximates the integrand by a piecewise quadratic function. [53]

Riemann sums, the trapezoidal rule, and Simpson's rule are examples of a family of quadrature rules called the Newton–Cotes formulas. The degree n Newton–Cotes quadrature rule approximates the polynomial on each subinterval by a degree n polynomial. This polynomial is chosen to interpolate the values of the function on the interval. [54] Higher degree Newton–Cotes approximations can be more accurate, but they require more function evaluations, and they can suffer from numerical inaccuracy due to Runge's phenomenon. One solution to this problem is Clenshaw–Curtis quadrature, in which the integrand is approximated by expanding it in terms of Chebyshev polynomials.

Romberg's method halves the step widths incrementally, giving trapezoid approximations denoted by T(h0) , T(h1) , and so on, where hk+1 is half of hk . For each new step size, only half the new function values need to be computed the others carry over from the previous size. It then interpolate a polynomial through the approximations, and extrapolate to T(0) . Gaussian quadrature evaluates the function at the roots of a set of orthogonal polynomials. [55] An n -point Gaussian method is exact for polynomials of degree up to 2n − 1 .

The computation of higher-dimensional integrals (for example, volume calculations) makes important use of such alternatives as Monte Carlo integration. [56]

Mechanical Edit

The area of an arbitrary two-dimensional shape can be determined using a measuring instrument called planimeter. The volume of irregular objects can be measured with precision by the fluid displaced as the object is submerged.

Math Insight

Let egin dllp(t) = (3t-2,t+1), qquad 1 le t le 2 end be a parameterization of a wire. Let the density of the wire at point $(x,y)$ be given by egin f(x,y)= x + y. end Compute the mass of the wire.

Solution: Mass is the integral of the density along the wire. So we must compute $int_ f, ds$. Since, egin dllp'(t) &= (3,1), | dllp'(t) | &= sqrt <3^2+1^2>= sqrt<10>, f(dllp(t)) &= (3t-2)+(t+1) =4t-1, end the integral is egin int_ f, ds &= int_a^b f(dllp(t)) | dllp'(t)| dt &= int_<1>^2 (4t-1) sqrt <10>dt &= (2 t^2 - t)left.left.sqrt <10> ight|_<1>^2 ight. &= left(8-2-(2-1) ight) sqrt <10>= 5sqrt <10>end

So, if $f$ were given in grams/cm and $dllp(t)$ were given in cm, then the mass of the wire would $5sqrt<10>$ grams.

Example 2

Neither the length of the wire nor its mass can depend on parametrization. Check that you get the same answer with the parametrization egin adllp(t) = (9t-2,3t+1), qquad 1/3 le t le 2/3. end Not that this is the same wire as in Example 1, which is a straight line from the point $(1,2)$ to $(4,3)$.

Solution: We repeat the same calculations as in Example 1. (Recall that $f(x,y)=x+y$.) Since egin adllp'(t) &= (9,3), | adllp'(t) | &= sqrt <9^2+3^2>= sqrt <90>= 3 sqrt<10>, f(adllp(t)) &= (9t-2)+(3t+1) =12t-1, end the integral is egin int_ f, ds &= int_<1/3>^ <2/3>f(adllp(t)) | adllp'(t)| dt &= int_<1/3>^ <2/3>(12t-1) 3sqrt <10>dt &= (6 t^2 - t)left.left.3sqrt <10> ight|_<1/3>^<2/3> ight. &= left[6left(frac<2><3> ight)^2-frac<2> <3>-left(6left(frac<1><3> ight)^2 -frac<1><3> ight) ight] 3sqrt<10> &= left[frac<24> <9>- frac<2> <3>- frac<6> <9>+ frac<1><3> ight] 3sqrt <10>= frac<5> <3>3sqrt <10>= 5sqrt<10>, end which matches Example 1.

Note that the &ldquospeed&rdquo of the parametrization $ | adllp'(t) |= 3 sqrt<10>$ was three times greater than the speed $ | dllp'(t) |= sqrt<10>$ of Example 1. But the range of integration $1/3 le t le 2/3$ was one third the range of integration from Example 1.

Example 3

Here's another parametrization of the same straight-line wire from $(1,2)$ to $(4,3)$. This time, the &ldquospeed&rdquo of the parametrization is not constant, but depends on t: egin sadllp(t) = (3t^2-2,t^2+1), qquad 1 le t le sqrt<2>. end Still using the density $f(x,y)=x+y$, calculate the mass of the wire.

Solution: Since egin sadllp'(t) &= (6t,2t), | sadllp'(t) | &= sqrt <(6t)^2+(2t)^2>= sqrt <40t^2>= 2t sqrt<10>, f(sadllp(t)) &= (3t^2-2)+(t^2+1) =4t^2-1. end the integral is egin int_ f, ds &= int_<1>^> f(sadllp(t)) |sadllp'(t)| dt &= int_<1>^> (4t^2-1) 2tsqrt <10>dt &= int_<1>^> (8t^3-2t)sqrt <10>dt &= (2t^4 - t^2)left.left.sqrt <10> ight|_<1>^> ight. &= left[2igl(sqrt<2>igr)^4 - igl(sqrt<2>igr)^2 -2 +1 ight] sqrt <10>= 5sqrt<10>, end which matches Examples 1 and 2.

Example 4

For the slinky $dlc$ parametrized by $dllp(t)=(cos t, sin t, t)$ for le t le 2pi$, let its density at point $(x,y,z)$ be given by $f(x,y,z) = 1+x+z$. Find the mass of the slinky.

Solution: Since egin f(dllp(t)) &= 1+cos t + t dllp'(t) &= (-sin t, cos t, 1) |dllp'(t)| &= sqrt = sqrt<2>, end the line integral giving the mass is egin slint &= pslint<0><2pi> &= int_0^<2pi>(1+cos t + t)sqrt<2>dt &= sqrt<2>(t + sin t + t^2/2)Big|_0^ <2pi>= 2sqrt<2>pi + 2sqrt<2>pi^2. end

9.2: Line Integrals

This page is a collection of some more complicated integrals. I know that there are plenty of websites these days where you can find solved problems, including integrals. That was never as true as during the COVID-19 pandemic of 2020-21, when I'm writing this. This abundance of solved problems has produced a sometimes-overwhelming temptation for math students to look up solutions to problems rather than to struggle through them. It's in that struggle, however, that learning occurs.

I'm not trying to reproduce those sites here, nor am I simply trying to supply you with an answer to a problem that might be similar, or even identical, to one you've been assigned.

I strongly suggest that you try these integrals yourself first, then use the solution for hints and to expand your own repertoire of techniques. In the solutions, I've tried to add a bit of detailed explanation to help you understand how to tackle difficult integrals.

always bear in mind that integration and differentiation aren't completely inverse operations. While you should, if you're here, be able to find the derivative of any function, not every function can be integrated analytically &mdash that is, on paper. Some just have to be done numerically using Riemann sums or some other numerical technique. It's not a two-way street.

Example 1 $int frac dx$

Solution : Notice that the denominator of the integrand has no real roots. The discriminant,

so we can't factor it to solve by decomposition of the rational function. We'll have to try something else.

Instead, we can complete the square on the denominator. First set it equal to zero, then complete the square, then re-gather all of the terms of the function back on the left side. It looks like this:

$ egin x^2 - x + 1 &= 0 [5pt] x^2 - x &= -1 [5pt] x^2 - x + left(frac<1><2> ight)^2 &= frac<-3> <4>[5pt] left( x - frac<1> <2> ight)^2 + frac<3> <4>&= f(x) end$

You can prove to yourself that this function is identical to our original integrand. Now our integral is

Now we'll do a substitution: Let $u = x - frac<1><2>,$ then $du = dx.$ The resulting integral is

Now we'd like to aim toward an integral that gives us an inverse tangent function. Recall that

Now we need to get our integrand denominator to look something like $x^2 + 1,$ so we'll multiply through by $frac<3><4>:$

Now we'll do just one more substitution, strategically letting $v = frac<2>> u,$ (note that $frac<2>>$ which is the square root of $frac<4><3>,$ which means that $v^2 = frac<4><3>u^2$ and $dv = frac<2>> du,$ giving us

In the last couple of steps we just re-substituted, first u for v, then x for u.

Example 2 $int frac(x + 1)> dx$

Solution : This is an example of an integral that can be done by simple u-substitution, but it's easy to miss if you're not careful. Solve it by letting $u = sqrt,$ then $du = frac<1>>,$ and $x + 1 = u^2 + 1.$ So we have

Resubstituting for u gives

Integrals like this underscore that it's handy to have a table of derivatives nearby so that you remember these:

Derivatives of inverse trig. functions

Example 3 $int x , tan^2(x) , dx$

Solution : Like a lot of integrals involving trig. functions, this one is more easily-solved by replacing the $tan^2(x)$ term using the Pythagorean identity, $tan^2(x) = sec^2(x) - 1:$

$ egin int x , tan^2(x) , dx &= int x (sec^2(x) - 1) , dx [5pt] &= int x , sec^2(x) , dx - int x , dx end$

Now the second integral is easy, and we can save it for later. For the first, do it by parts in this way:

$color<#E90F89> < egin ext u &= x, phantom <0000>dv = sec^2(x) , dx [5pt] ext du &= dx phantom <0000>v = tan(x) end>$

$=x , tan(x) - int tan(x) , dx - frac<2>,$

where we've done the easy integral at the end. Now the one integral that's left is easy to look up, but it's also easy to do, and another example of when rearrangement using trig identities is helpful:

$ ext u = cos(x), : ext < then >du = -sin(x) , dx$

$ egin ightarrow -int frac &= ln(u) [5pt] & ightarrow -ln|cos(x)| end$

It's really worth remembering at least the first of the Pythagorean identities from your studies of trigonometry. They really come in handy:

The Pythagorean identities

$ egin sin^2(x) + cos^2(x) &= 1 [5pt] csc^2(x) - cot^2(x) &= 1 [5pt] sec^2(x) - tan^2(x) &= 1 end$

If you just remember the first, you can always easily recreate the other two by dividing through by $sin^2(x)$ or $cos^2(x),$ respectively.

Example 4 $int frac , dx$

Solution : The first thing you might think of trying with this integral is u-substitution, but it just won't work here. The power of both x-containing terms in the integrand is 2, so taking the derivative of one doesn't make it match the other to within a constant. This might be a good candidate for rational decomposition of the fraction, so we can try it. Our decomposition will need to look like this:

Not all of the A, B, C, D parameters will turn out to be non-zero here, but we need to cover our bases from the beginning. Now multiplying both sides by the denominator on the left side gives the "basic equation"

$A x(x^2 + 25) + B(x^2 + 25) + (Cx + D)x = 1$

Now the basic equation is good for any value of x, so we can substitute in any way we want that makes sense to find our coefficients, A, B, C and D. Letting x = 0 makes it easy to find B:

Substituting x = 1 and x = -1 will give us these two equations, which we can reduce by adding them and simplifying:

$ equire egin cancel <-26A>+ 26B + C - cancel &= 0 [5pt] underline + 26B + C + cancel> &= underline<1 color<#E90F89>>> [5pt] 52B + 2C &= 2 [5pt] 26B + C &= 1 [5pt] C &= 1 - frac<26> <25>[5pt] C &= frac<-1> <25>end$

In the last two steps we inserted $frac<1><25>$ for B. Now we'll use x = 1 again and x = -2 to make some decisions about the remaining constants, B and C:

$ egin color<#E90F89>< ext> -58A + 29B + 4C - 2D &= 1 [5pt] underline< ext> -26A + 26B + C - D> &= 1 [5pt] -58A + 29B + 4C - 2D &= 1 [5pt] color<#E90F89>< imes , 4 ightarrow>underline <104A - 104B - 4C + 4D>&= -4 [5pt] 46A - 75B + 2D &= -3 [5pt] color<#E90F89> <25>, ightarrow> 46A + cancel <-3>+ 2D &= cancel <-3>end$

From the last line, it's clear that $D = 23A,$ but that also works if $A = D = 0,$ and that's our simplest decomposition of our integrand:

$A = 0, : : B = frac<1><25>, : : C = frac<-1><25>, : : D = 0$

So our original integrand can be expressed as

You can add those terms and convince yourself that this is a valid decomposition. Now our integral is

The first of those is easy, and we'll save it for last. The second resembles an inverse tangent integral with integrand $1/(x^2 + 25).$ Let's see if we can hammer it into shape. Let's divide the terms of the denominator by 25, which is the same as multiplying the integrand by 25, so we'll have to compensate by placing another $frac<1><25>$ outside the integral:

Modeling PID Controllers With Euler in Excel

As with many engineering systems, PID controllers can be modeled in Excel via numerical methods such as Euler's Method. First begin with the initial value for a given parameter. Determine the change in that parameter at a certain time-step by summing the three controllers P, I, and D at that step, which are found using the equations listed in the P, I, D, PI, PD, PID Control section above. Take this change, multiply it by the chosen time-step and add that to the previous value of the parameter of interest. For more detailed information see Numerical ODE Solving in Excel. An example of a chemical engineering problem that uses this method can be seen in Example 4 below.

Troubleshooting PID Modeling in Excel

When setting up an Excel spreadsheet to model a PID controller, you may receive an error message saying that you have created a circular reference. Say you are controlling the flow rate of one reactant ((B)) to a reactor which is dependent upon the concentration of another reactant ((A)) already inside the reactor. Your PID equations look as follows:

After you have set up your columns for (A - A_), (d(A - A_)/dt), (x_i), and the cells for your parameters like (K_c), ( au_i) and ( au_d), you will need to set up your PID column with your PID equation in it. After entering your equation into the first cell of the PID column, you may receive the Circular Reference error message when trying to drag the equation down to the other cells in your column.

There are two things you can do:

  1. It is likely that you need to start your PID equation in the second or third cell of your PID column. Enter reasonable values into the first couple of cells before you start the PID equation, and you will find that these values shouldn&rsquot affect the end result of your controller.
  2. You can also try decreasing the step size ((&Deltat)).

Summary Tables

A summary of the advantages and disadvantages of the three controls is shown below is shown in Table 1.

Table 1. Advantages and disadvantages of controls

A guide for the typical uses of the various controllers is shown below in Table 2.

Table 2. Typical uses of P, I, D, PI, and PID controllers

A summary of definitions of the terms and symbols are shown below in Table 3.

Table 3. Definitions of terms and symbols.

Hypothetical Industries has just put you in charge of one of their batch reactors. Your task is to figure out a way to maintain a setpoint level inside of the reactor. Your boss wants to use some type regulator controller, but he is not quite sure which to use. Help your boss find the right type of controller. It is extremely important that the level inside the reactor is at the setpoint. Large fluctuation and error cannot be tolerated.

You would want to use a PID controller. Because of the action of P control, the system will respond to a change very quickly. Due to the action of I control, the system is able to be returned to the setpoint value. Finally, because it is so critical for the system to remain at a constant setpoint, D control will measure the change in the error, and help to adjust the system accordingly.

You go back to your high school and you notice an oven in your old chemistry class. The oven is used to remove water from solutions. Using your knowledge from ChE 466, you begin to wonder what type of controller the oven uses to maintain its set temperature. You notice some high school students eager to learn, and you decide to share your knowledge with them in hopes of inspiring them to become Chemical Engineers. Explain to them the type of controller that is most likely located within the oven, and how that controller works.

Since the oven is only used to remove water from a solution, fluctuation, error, and lag between the set point and the actual temperature are all acceptable. Therefore, the easiest and simplest controller to use would be the On-Off controller. The On-Off controller turns on the heating mechanism when the temperature in the oven is below the setpoint temperature. If the temperature of the oven increases above the set temperature, the controller will turn the heating mechanism off.

Having taken your advice, your boss at Hypothetical Industries decides to install a PID controller to control the level in the batch reactor. When you first start up the reactor, the controller initially received a step input. As the reactor achieves steady state, the level in the reactor tends to fluctuate, sending pulse inputs into the controller. For a pulse input, provide a grahical representation of the PID controller output.

Figure 8. Pulse input.

The PID-controller output will be a combination of the P-only, I-only and D-only controller outputs. Analogous to the P-controller output for the step input, the P-controller output for the pulse input will exactly resemble the input.

Figure 9. P-controller output for pulse input.

The I-controller output represents the area under the input graph. Unlike the step input, the area under the pulse input graph dropped back down to zero once the pulse has passed. Therefore, rather than continually increase, the I-controller output graph will level off in the end.

Figure 10. I-controller output for pulse input.

The D-controller output represents the derivative of the input graph. The derivative at the first discontinuity of the graph would be positive infinity. The derivative of the second downward discontinuity is negative infinity.

Figure 11. D-controller output for pulse input.

Combining the qualitative characteristics of all three graphs we can determine the PID-controller output for a pulse input.

Figure 12. PID-controller output for pulse input.

Different kinds of disturbances are possible when determining the PID controller robustness. These different disturbances are used to simulate changes that might occur within your system. For a CSTR reactor, you decide to heat up your system to account for the cold outside weather. The disturbance in the input temperature is a ramp disturbance, as shown in figure #. If the controller responds to the input temperature, what will be the PID controller output?

Figure 13. Ramp input.

Using a controller with a p-only controller only, we will see a proportional change in the controller output corresponding to the input variable change. See figure 14 below

Figure 14. P-controller output for ramp input.

Using an I-only controller, we will see the controller corresponding to the area under the graph, which in this case, seem to increase exponentially with the ramp geometry.

Figure 15. I-controller output for ramp input.

Using a D-only controller, we will see a step response to the ramp disturbance. This is because the D-component corresponds to the derivative, and a ramp input shows a constant slope (positive in this case) which is different than the starting condition slope (zero usually). See figure 16.

Figure 16. D-controller output for ramp input.

Using a PID controller, the three components all come to play in the controller output. As we would expect, the result will be just a simple addition of the three separate component graphs.

Figure 17. D-controller output for ramp input.

Following is a P&ID of the process A+B-->C.

Figure 18. P&ID for a reaction process.

What is the PID controller expression on V3 controlling the volume in TK001 to a setpoint of 50 liters? Note: The PID controller uses LC1 to measure the volume.

The general equation for a PID controller is:

[c(t)=K_left[e(t)+frac<1><>> int e(t) d t+T_ frac ight]+C onumber]

  • (c(t)) = controller output
  • (K_c) = controller gain
  • (e(t)) = error
  • (T_i) = integral time
  • (T_d) = derivative time constant
  • (C) = initial value of controller

Therefore, for this example, the solution is:

In this problem, the differential equations describing a particular first-order system with a PID controller will be determined. This is designed to show how well-defined systems can be modeled or explained mathematically. As a supplement to this problem, visit Constructing Block Diagrams. Note that this is an example of solution using integro-differential operators rather than Laplace transforms. Here we have set (K_p = 1).

Consider a general first-order process:

Where Y(t) is the output of the system and X(t) is the input. Add a PID controller to the system and solve for a single, simple differential equation. The operator or equation for a PID controller is below. Assume there is no dead time in the measurement.

Solution: Use Constructing Block Diagrams as a reference when solving this problem.
Equations defining system,

  • Process: &taupY'(t) + Y(t) = X(t)
  • Controller: X(t) = G&epsilon(t)
  • Comparator: &epsilon(t) = R(t) &minus M(t)
  • Measurement: M(t) = Y(t)

When these equations are combined into one equation, the following equation results. This is achieved by adding the measurement to the comparator to the controller to the process equation.

Substituting the controller operator and then evaluating yields:

[ au_

Y^(t)+Y(t)=K_left[1+frac<1>< au_> int_<0>^ d au+ au_ frac(R(t)-Y(t)) ight]]

Because there is an integral in the differential equation, it is necessary to take the derivative with respect to time.

To put this in standard notation for solving a second order differential equation, the (Y(t)) need to be on one side, and the (R(t)) terms need to be on the opposite side. Also, the coefficient of the (Y(t)) term needs to be one.

The above equation can then be solved by hand or using a program such as Mathematica. If using a computer program, different values for the control parameters Kc, &tauI, &tauD can be chosen, and the response to a change in the system can be evaluated graphically.

What type of controller is displayed by the equation below?

[c(t)=K_left[e(t)+frac<1><>> int e(t) d t ight] onumber]

Which type of controller increases the stability of the system by keeping it at a consistent setting?

Which type of controller increases the speed of response to reach the desired set point the fastest while eliminating offset?

A microbiology laboratory discovered a deadly new strain of bacteria, named P. Woolfi, in the city's water supply. In order to sterilize the water, the bacteria has to be heat killed at a temperature of 105 degrees Celsius. However, this is above the boiling point of water at 1 atm and the bacteria is only susceptible to heat when in liquid due to spore formation when in gas or vapor. To accomplish this sterilization it was suggested that an auto-clave be used to keep the water in the liquid state by keeping it at a pressure of 5 atm while heated for 30 seconds. The auto-clave can only handle up to 7 atm of pressure before exploding, so to ensure that the process is running at the desired specifications, a PID Controller Model must be created in Excel. See figure 18 for a visual of the system.

Figure 18.Auto-clave with PID Controls for Temperature and Pressure

Click on this link for the worked out Excel Solution

To simulate the real situation of pressure varying in the system, column B calls an equation to generate a random fluctuation in pressure. Pset is simply the desired specification. Error is the difference between the set pressure and measured signal. du/dt is the sum of the P, I, and D terms. The equations used to calculate each of these can be found in the article, these take into account the error associated with each time-step. dU/dt is the parameter that is varied in order to correct for the difference between the measured pressure and desired pressure.

The meaning of $dx$ in an indefinite integral

This semester I'm taking integral calculus for the first time. We started with the differential (i.e. $dy=f'(x),dx$ ) and right after that with the indefinite integral. Since then, I've been trying to make sense of the $dx$ when it's part of an indefinite integral (i.e. $int f(x) , oldsymbol$ ). I know there are already a bazillion answers regarding this question, but all of them refer to the definite integral and the ones that do touch on indefinite integrals only say things like "it's just a syntactical device to tell you the variable to differentiate with respect to or the integration variable" (Ihf, 2012, web). I don't like this answer, especially because I was taught that given two functions $f(x)$ , $g(x)$ and the antiderivative of their product $int f(x)g(x),dx$ , if I were to assign $f(x)$ to $u$ and $g(x),dx$ to $dv$ in order to integrate by parts, then I would have to integrate $dv$ to find $v$ . This only makes sense if $dx$ means something by itself and is not just a quirk of the notation, otherwise we would end up with something like the following: $int g(x),dxspace dx$

After thinking about it a lot, I believe I finally found a way to make sense of the $dx$ as something that isn't purely and simply a notation device. My reasoning is as follows:

  1. Given a function $f(x)$ , let $y=f(x)$ . Then $frac=f'(x)$
  2. Then from the fundamental theorem of calculus, we know that $intfrac,dx=y$
  3. Let $dy=f'(x),dx$ . Then the equation $dy=frac,dx$ holds and $intfrac,dx=int dy=y$
  4. Finally, integrate both sides of the equation $dy=f'(x),dx$ in order that $int dy=int f'(x),dximplies y=f(x)$

From this I conclude that, by integrating a function, what we are really doing is integrating the differential of that function. This makes perfect sense to me, although I'm aware that seemingly logical things aren't necessarily logical. That's why I would appreciate it if someone could tell me whether the above is mathematically correct or pure gibberish.

PS, I had never written a mathematical proof before and I have taken no proofs courses yet, so any suggestions are welcome.

9.2 Induced Electric Fields

Earlier we have seen that if a magnetic flux passing through an area surrounded by a conducting loop is changing then we end up with an induced electromotive force enhanced induced current along that loop directly from Faraday’s law. If we consider magnetic field, let us say, pointing into the plane, something like this, then let’s assume that it is increasing into the plane. And if we place a closed conducting loop inside of this region, let’s consider a circular loop, then the flux through the area surrounded by this loop is going to be changing. As a result of this we will end up with an induced electromotive force from Faraday’s law, which will in turn cause an induced current flowing through this loop.

And from Lenz’s law, once we determine the direction of the current, which says that it has to be flowing in such a direction that it will oppose its course, and its course is the increasing magnetic field into the plane, therefore the only way that it can oppose that by generating a current whose magnetic field will be in opposite direction to this external magnetic field, and in order to have the current to flow in this direction along this loop by using right-hand rule, we want the magnetic field coming out of the plane through the area surrounded by this loop, therefore the current has to be flowing in counterclockwise direction throughout this loop.

Well, when we look at this process, this is in a way equivalent process to say that that the same magnetic field that we have over here pointing into the plane, and if we just consider one of the charges that’s moving along this path, for a charge, for a point charge to move along this direction, along this circular trajectory, we have to have an electric field in the medium, in a circular form, like this. In other words, that electric field is going to exert the Coulomb force on that charge so that the charge is going to move in the direction of that force. In order to go along a circular orbit like this, that force has to be always tangent to a circle, something like this. To do that the corresponding electric field line has to be in circular form.

So this is going to be, in other words, equivalent to the case that we’re going to have an induced electric field line, which will be in the form of a circle. Something like this. And if we place a charge, for simplicity let’s consider a positive charge here, and that charge will be under the influence of Coulomb force, which will be tangent always to this field line, and that field line is the electric field, and at every point along this trajectory under the influence of this Coulomb force, the charge is going to move along this circular electric field line.

Therefore, we can link this case to the next case by saying that while we start with a change in magnetic field which is increasing into the plane, we end up with electric field in the form of concentric electric field lines. In other words, change in magnetic field is generating electric field, whose electric field lines are in the form of concentric circles in this medium. Of course if B is not changing, if it is constant, then the magnetic flux through this circular wire, or through the area surrounded by the circular wire will be equal to a constant, and since it is not changing, from Faraday’s law, derivative of a constant will give us 0, we’re not going to end up with any induced electromotive force and hence the current also. But if it is changing, then that change will result with the induction of an electric field in the medium, like this.

So if we summarize up to this point, we can say that for this case, i induced will show up in counterclockwise direction. That is from Lenz’s law and Faraday’s law. And i induced is of course directly associated with the induced electric field, and we can see, by linking this first case to this case, this is in a way equivalent to this case, because if we just consider one charge’s motion and it will look like this. And in this case a changing magnetic field produced electric field.

If we look at this part, let’s say our wire has the radius of r, therefore we’re looking at the field line, induced field line, with the same radius r over here. From Faraday’s law, induced EMF is the change in flux with respect to time, and if we look at this process over here of course a work will be done by the Coulomb force in moving the charge along this slope. Work done during that process, if we denote that by W, will be equal to force dotted with the displacement, integrated overall the path, let’s call it F dot dl, integrated overall path.

Here, dl is an incremental displacement vector in the direction, or along the direction of path, and where we will go we will see that the angle between F and dl is going to be equal to 0, so the work done is going to be equal to therefore integral of the magnitude of F times dl times cosine of the angle between them, which is 0 degree. Cosine of 0 is just 1, and the magnitude of F is constant over here, and that’s the Coulomb force which is equal to q times the induced electric field E.

So moving on, work done will be equal to qE times dl, and these quantities are constant we can take it outside of the integral. Therefore the work done becomes qE times integral of dl along this path. Of course the path is a closed path, and as we go all along this path, and adding all these dl‘s to one another along that path, we will end up with the length of that path and that is the circumference of that circle, which is 2πr. So the work done will be equal to qE times 2πr.

On the other hand, as you recall from the definition of potential, which we defined the potential as work done per unit charge, one can also express this work done as charge times the potential, or the voltage, or the potential difference. Well, that potential, or the voltage, is the induced voltage ε. So we have two expressions for the work. One of them is induced EMF times the charge, and the other one is q times E times 2πr. Since the left-hand sides of these equations are equal, we can equate the right hand sides. In doing so we will have q times ε is equal to qE times 2πr. Here the charges will cancel on both sides, and induced EMF will be equal to E times 2πr.

Well, in other words, the product of the electric field magnitude, and the length of the loop, we can generalize this expression by saying that induced EMF is equal to integral over a closed path of E dot dl. The reason for that is that once the electric field is generated as a result of change in magnetic field in the region, those field lines are going to be always closed field lines. Therefore the path integral will be taken over a closed path, or closed loop.

Well, induced EMF was also equal to, from Faraday’s law, dΦB over dt, in other words rate of change of magnetic flux. We can combine these two expressions to express the Faraday’s law in its most general form by saying that integral of E dot dl over a closed contour, or closed loop, will be equal to minus, and again, we can generalize this N number of terms, by multiplying with the number of terms N over here, times the rate of change of flux. So this is the most general form of Faraday’s law of induction.

Now, it is simply stating that if the magnetic flux is changing through the area surrounded by a conducting loop, then we’re going to end up with an induced electromotive force. Now, if we take the integral of E dot dl along a closed conducting loop, that will also give us the induced electromotive force along that loop. This quantity will be equal to 0 if the flux through the area surrounded by that loop is constant. It will be different than 0 if it is changing, if the flux is changing with time.

Well, this is going to bring us to an interesting point, which will make us, to give a new look to the electric potential. Let’s say a new look at electric potential concept. And that is electric potential has meaning only for electric fields set up by static charges. It does not have any meaning for electric fields set up by induction. Let’s make a note of this by saying that electric potential has meaning only for electric fields set up by static charges. It has no meaning for electric fields set up by induction.

Now, for static charges, we had positive charges collected at some point, and then negative charges collected at some point, like this. Once we have a charge separation in this way, or polarization, then we immediately end up with a net electric field pointing from positive charge to negative charge, and as you recall, since the potential associated with the positive charge is greater than the potential associated with the negative charge, or negative point charge, then we end up with a certain potential difference of V volts between these two points, and that was equal to Vf minus Vi, and which was equal to work done in moving the charge from initial to final point. Let’s say this is initial, this is final, on per unit charge, and that was also equal to minus, negative of E dot dl integrated from initial to final point.

So in the case of induction, we end up with closed electric field lines. In other words, for the static charges, the electric field lines are always open field lines, originate from positive enter into the negative terminal. But through induction, as we have seen moments ago, we end up with closed field lines like this. And the electric field is tangent to these field lines at every point.

Well, in this case if we look at the potential difference between two points, that will be equal to minus integral of E dot dl over a closed loop, because the field line is a closed loop. It means that we’re going to start a certain point, initial point, and then we end up with the same point. The final point will be the same point that we started with. Therefore, the potential between initial and final point will be the same and this is going to give us always 0. That’s why the electric potential, or the potential difference doesn’t have any meaning for the electric field set up through induction.

This quantity from Faraday’s law, is such that induced EMF is equal to integral E dot dl over a closed loop and that is also equal to minus change in magnetic flux with respect to time. So this becomes equal to 0 whenever the magnetic flux is constant. If it is changing, then we will end up with a non-zero result, and that is going to be equal to the induced electromotive force. So in this sense, we have to always recall that potential difference does not have any meaning for the electric fields which are set up by induction.

Fix buffer overruns in to_char() (Bruce Momjian)

When to_char() processes a numeric formatting template calling for a large number of digits, PostgreSQL would read past the end of a buffer. When processing a crafted timestamp formatting template, PostgreSQL would write past the end of a buffer. Either case could crash the server. We have not ruled out the possibility of attacks that lead to privilege escalation, though they seem unlikely. (CVE-2015-0241)

Fix buffer overrun in replacement *printf() functions (Tom Lane)

PostgreSQL includes a replacement implementation of printf and related functions. This code will overrun a stack buffer when formatting a floating point number (conversion specifiers e, E, f, F, g or G) with requested precision greater than about 500. This will crash the server, and we have not ruled out the possibility of attacks that lead to privilege escalation. A database user can trigger such a buffer overrun through the to_char() SQL function. While that is the only affected core PostgreSQL functionality, extension modules that use printf-family functions may be at risk as well.

This issue primarily affects PostgreSQL on Windows. PostgreSQL uses the system implementation of these functions where adequate, which it is on other modern platforms. (CVE-2015-0242)

Fix buffer overruns in contrib/pgcrypto (Marko Tiikkaja, Noah Misch)

Errors in memory size tracking within the pgcrypto module permitted stack buffer overruns and improper dependence on the contents of uninitialized memory. The buffer overrun cases can crash the server, and we have not ruled out the possibility of attacks that lead to privilege escalation. (CVE-2015-0243)

Fix possible loss of frontend/backend protocol synchronization after an error (Heikki Linnakangas)

If any error occurred while the server was in the middle of reading a protocol message from the client, it could lose synchronization and incorrectly try to interpret part of the message's data as a new protocol message. An attacker able to submit crafted binary data within a command parameter might succeed in injecting his own SQL commands this way. Statement timeout and query cancellation are the most likely sources of errors triggering this scenario. Particularly vulnerable are applications that use a timeout and also submit arbitrary user-crafted data as binary query parameters. Disabling statement timeout will reduce, but not eliminate, the risk of exploit. Our thanks to Emil Lenngren for reporting this issue. (CVE-2015-0244)

Fix information leak via constraint-violation error messages (Stephen Frost)

Some server error messages show the values of columns that violate a constraint, such as a unique constraint. If the user does not have SELECT privilege on all columns of the table, this could mean exposing values that the user should not be able to see. Adjust the code so that values are displayed only when they came from the SQL command or could be selected by the user. (CVE-2014-8161)

Lock down regression testing's temporary installations on Windows (Noah Misch)

Use SSPI authentication to allow connections only from the OS user who launched the test suite. This closes on Windows the same vulnerability previously closed on other platforms, namely that other users might be able to connect to the test postmaster. (CVE-2014-0067)

Cope with the Windows locale named "Norwegian (Bokmål)" (Heikki Linnakangas)

Non-ASCII locale names are problematic since it's not clear what encoding they should be represented in. Map the troublesome locale name to a plain-ASCII alias, "Norwegian_Norway" .

Avoid possible data corruption if ALTER DATABASE SET TABLESPACE is used to move a database to a new tablespace and then shortly later move it back to its original tablespace (Tom Lane)

Avoid corrupting tables when ANALYZE inside a transaction is rolled back (Andres Freund, Tom Lane, Michael Paquier)

If the failing transaction had earlier removed the last index, rule, or trigger from the table, the table would be left in a corrupted state with the relevant pg_class flags not set though they should be.

Ensure that unlogged tables are copied correctly during CREATE DATABASE or ALTER DATABASE SET TABLESPACE (Pavan Deolasee, Andres Freund)

Fix DROP's dependency searching to correctly handle the case where a table column is recursively visited before its table (Petr Jelinek, Tom Lane)

This case is only known to arise when an extension creates both a datatype and a table using that datatype. The faulty code might refuse a DROP EXTENSION unless CASCADE is specified, which should not be required.

Fix use-of-already-freed-memory problem in EvalPlanQual processing (Tom Lane)

In READ COMMITTED mode, queries that lock or update recently-updated rows could crash as a result of this bug.

Fix planning of SELECT FOR UPDATE when using a partial index on a child table (Kyotaro Horiguchi)

In READ COMMITTED mode, SELECT FOR UPDATE must also recheck the partial index's WHERE condition when rechecking a recently-updated row to see if it still satisfies the query's WHERE condition. This requirement was missed if the index belonged to an inheritance child table, so that it was possible to incorrectly return rows that no longer satisfy the query condition.

Fix corner case wherein SELECT FOR UPDATE could return a row twice, and possibly miss returning other rows (Tom Lane)

In READ COMMITTED mode, a SELECT FOR UPDATE that is scanning an inheritance tree could incorrectly return a row from a prior child table instead of the one it should return from a later child table.

Reject duplicate column names in the referenced-columns list of a FOREIGN KEY declaration (David Rowley)

This restriction is per SQL standard. Previously we did not reject the case explicitly, but later on the code would fail with bizarre-looking errors.

Restore previous behavior of conversion of domains to JSON (Tom Lane)

This change causes domains over numeric and boolean to be treated like their base types for purposes of conversion to JSON. It worked like that before 9.3.5 and 9.2.9, but was unintentionally changed while fixing a related problem.

Fix bugs in raising a numeric value to a large integral power (Tom Lane)

The previous code could get a wrong answer, or consume excessive amounts of time and memory before realizing that the answer must overflow.

In numeric_recv() , truncate away any fractional digits that would be hidden according to the value's dscale field (Tom Lane)

A numeric value's display scale (dscale) should never be less than the number of nonzero fractional digits but apparently there's at least one broken client application that transmits binary numeric values in which that's true. This leads to strange behavior since the extra digits are taken into account by arithmetic operations even though they aren't printed. The least risky fix seems to be to truncate away such "hidden" digits on receipt, so that the value is indeed what it prints as.

Fix incorrect search for shortest-first regular expression matches (Tom Lane)

Matching would often fail when the number of allowed iterations is limited by a ? quantifier or a bound expression.

Reject out-of-range numeric timezone specifications (Tom Lane)

Simple numeric timezone specifications exceeding +/- 168 hours (one week) would be accepted, but could then cause null-pointer dereference crashes in certain operations. There's no use-case for such large UTC offsets, so reject them.

Fix bugs in tsquery @> tsquery operator (Heikki Linnakangas)

Two different terms would be considered to match if they had the same CRC. Also, if the second operand had more terms than the first, it would be assumed not to be contained in the first which is wrong since it might contain duplicate terms.

Improve ispell dictionary's defenses against bad affix files (Tom Lane)

Allow more than 64K phrases in a thesaurus dictionary (David Boutin)

The previous coding could crash on an oversize dictionary, so this was deemed a back-patchable bug fix rather than a feature addition.

Fix namespace handling in xpath() (Ali Akbar)

Previously, the xml value resulting from an xpath() call would not have namespace declarations if the namespace declarations were attached to an ancestor element in the input xml value, rather than to the specific element being returned. Propagate the ancestral declaration so that the result is correct when considered in isolation.

Ensure that whole-row variables expose nonempty column names to functions that pay attention to column names within composite arguments (Tom Lane)

In some contexts, constructs like row_to_json(tab.*) may not produce the expected column names. This is fixed properly as of 9.4 in older branches, just ensure that we produce some nonempty name. (In some cases this will be the underlying table's column name rather than the query-assigned alias that should theoretically be visible.)

Fix mishandling of system columns, particularly tableoid, in FDW queries (Etsuro Fujita)

Avoid doing indexed_column = ANY (array) as an index qualifier if that leads to an inferior plan (Andrew Gierth)

In some cases, = ANY conditions applied to non-first index columns would be done as index conditions even though it would be better to use them as simple filter conditions.

Fix planner problems with nested append relations, such as inherited tables within UNION ALL subqueries (Tom Lane)

Fail cleanly when a GiST index tuple doesn't fit on a page, rather than going into infinite recursion (Andrew Gierth)

Exempt tables that have per-table cost_limit and/or cost_delay settings from autovacuum's global cost balancing rules (Álvaro Herrera)

The previous behavior resulted in basically ignoring these per-table settings, which was unintended. Now, a table having such settings will be vacuumed using those settings, independently of what is going on in other autovacuum workers. This may result in heavier total I/O load than before, so such settings should be re-examined for sanity.

Avoid wholesale autovacuuming when autovacuum is nominally off (Tom Lane)

Even when autovacuum is nominally off, we will still launch autovacuum worker processes to vacuum tables that are at risk of XID wraparound. However, such a worker process then proceeded to vacuum all tables in the target database, if they met the usual thresholds for autovacuuming. This is at best pretty unexpected at worst it delays response to the wraparound threat. Fix it so that if autovacuum is turned off, workers only do anti-wraparound vacuums and not any other work.

During crash recovery, ensure that unlogged relations are rewritten as empty and are synced to disk before recovery is considered complete (Abhijit Menon-Sen, Andres Freund)

This prevents scenarios in which unlogged relations might contain garbage data following database crash recovery.

Fix race condition between hot standby queries and replaying a full-page image (Heikki Linnakangas)

This mistake could result in transient errors in queries being executed in hot standby.

Fix several cases where recovery logic improperly ignored WAL records for COMMIT/ABORT PREPARED (Heikki Linnakangas)

The most notable oversight was that recovery_target_xid could not be used to stop at a two-phase commit.

Prevent latest WAL file from being archived a second time at completion of crash recovery (Fujii Masao)

Avoid creating unnecessary .ready marker files for timeline history files (Fujii Masao)

Fix possible null pointer dereference when an empty prepared statement is used and the log_statement setting is mod or ddl (Fujii Masao)

Change "pgstat wait timeout" warning message to be LOG level, and rephrase it to be more understandable (Tom Lane)

This message was originally thought to be essentially a can't-happen case, but it occurs often enough on our slower buildfarm members to be a nuisance. Reduce it to LOG level, and expend a bit more effort on the wording: it now reads "using stale statistics instead of current ones because stats collector is not responding" .

Fix SPARC spinlock implementation to ensure correctness if the CPU is being run in a non-TSO coherency mode, as some non-Solaris kernels do (Andres Freund)

Warn if macOS's setlocale() starts an unwanted extra thread inside the postmaster (Noah Misch)

Fix processing of repeated dbname parameters in PQconnectdbParams() (Alex Shulgin)

Unexpected behavior ensued if the first occurrence of dbname contained a connection string or URI to be expanded.

Ensure that libpq reports a suitable error message on unexpected socket EOF (Marko Tiikkaja, Tom Lane)

Depending on kernel behavior, libpq might return an empty error string rather than something useful when the server unexpectedly closed the socket.

Clear any old error message during PQreset() (Heikki Linnakangas)

If PQreset() is called repeatedly, and the connection cannot be re-established, error messages from the failed connection attempts kept accumulating in the PGconn's error string.

Properly handle out-of-memory conditions while parsing connection options in libpq (Alex Shulgin, Heikki Linnakangas)

Fix array overrun in ecpg 's version of ParseDateTime() (Michael Paquier)

In initdb , give a clearer error message if a password file is specified but is empty (Mats Erik Andersson)

Fix psql 's s command to work nicely with libedit, and add pager support (Stepan Rutz, Tom Lane)

When using libedit rather than readline, s printed the command history in a fairly unreadable encoded format, and on recent libedit versions might fail altogether. Fix that by printing the history ourselves rather than having the library do it. A pleasant side-effect is that the pager is used if appropriate.

This patch also fixes a bug that caused newline encoding to be applied inconsistently when saving the command history with libedit. Multiline history entries written by older psql versions will be read cleanly with this patch, but perhaps not vice versa, depending on the exact libedit versions involved.

Improve consistency of parsing of psql 's special variables (Tom Lane)

Allow variant spellings of on and off (such as 1/0) for ECHO_HIDDEN and ON_ERROR_ROLLBACK. Report a warning for unrecognized values for COMP_KEYWORD_CASE, ECHO, ECHO_HIDDEN, HISTCONTROL, ON_ERROR_ROLLBACK, and VERBOSITY. Recognize all values for all these variables case-insensitively previously there was a mishmash of case-sensitive and case-insensitive behaviors.

Fix psql 's expanded-mode display to work consistently when using border = 3 and linestyle = ascii or unicode (Stephen Frost)

Improve performance of pg_dump when the database contains many instances of multiple dependency paths between the same two objects (Tom Lane)

Fix pg_dumpall to restore its ability to dump from pre-8.1 servers (Gilles Darold)

Fix possible deadlock during parallel restore of a schema-only dump (Robert Haas, Tom Lane)

Fix core dump in pg_dump --binary-upgrade on zero-column composite type (Rushabh Lathia)

Prevent WAL files created by pg_basebackup -x/-X from being archived again when the standby is promoted (Andres Freund)

Fix failure of contrib/auto_explain to print per-node timing information when doing EXPLAIN ANALYZE (Tom Lane)

Fix upgrade-from-unpackaged script for contrib/citext (Tom Lane)

Fix block number checking in contrib/pageinspect's get_raw_page() (Tom Lane)

The incorrect checking logic could prevent access to some pages in non-main relation forks.

Fix contrib/pgcrypto's pgp_sym_decrypt() to not fail on messages whose length is 6 less than a power of 2 (Marko Tiikkaja)

Fix file descriptor leak in contrib/pg_test_fsync (Jeff Janes)

This could cause failure to remove temporary files on Windows.

Handle unexpected query results, especially NULLs, safely in contrib/tablefunc's connectby() (Michael Paquier)

connectby() previously crashed if it encountered a NULL key value. It now prints that row but doesn't recurse further.

Avoid a possible crash in contrib/xml2's xslt_process() (Mark Simonetti)

libxslt seems to have an undocumented dependency on the order in which resources are freed reorder our calls to avoid a crash.

Mark some contrib I/O functions with correct volatility properties (Tom Lane)

The previous over-conservative marking was immaterial in normal use, but could cause optimization problems or rejection of valid index expression definitions. Since the consequences are not large, we've just adjusted the function definitions in the extension modules' scripts, without changing version numbers.

Numerous cleanups of warnings from Coverity static code analyzer (Andres Freund, Tatsuo Ishii, Marko Kreen, Tom Lane, Michael Paquier)

These changes are mostly cosmetic but in some cases fix corner-case bugs, for example a crash rather than a proper error report after an out-of-memory failure. None are believed to represent security issues.

Detect incompatible OpenLDAP versions during build (Noah Misch)

With OpenLDAP versions 2.4.24 through 2.4.31, inclusive, PostgreSQL backends can crash at exit. Raise a warning during configure based on the compile-time OpenLDAP version number, and test the crashing scenario in the contrib/dblink regression test.

In non-MSVC Windows builds, ensure libpq.dll is installed with execute permissions (Noah Misch)

Make pg_regress remove any temporary installation it created upon successful exit (Tom Lane)

This results in a very substantial reduction in disk space usage during make check-world, since that sequence involves creation of numerous temporary installations.

Support time zone abbreviations that change UTC offset from time to time (Tom Lane)

Previously, PostgreSQL assumed that the UTC offset associated with a time zone abbreviation (such as EST) never changes in the usage of any particular locale. However this assumption fails in the real world, so introduce the ability for a zone abbreviation to represent a UTC offset that sometimes changes. Update the zone abbreviation definition files to make use of this feature in timezone locales that have changed the UTC offset of their abbreviations since 1970 (according to the IANA timezone database). In such timezones, PostgreSQL will now associate the correct UTC offset with the abbreviation depending on the given date.

Update time zone abbreviations lists (Tom Lane)

Add CST (China Standard Time) to our lists. Remove references to ADT as "Arabia Daylight Time" , an abbreviation that's been out of use since 2007 therefore, claiming there is a conflict with "Atlantic Daylight Time" doesn't seem especially helpful. Fix entirely incorrect GMT offsets for CKT (Cook Islands), FJT, and FJST (Fiji) we didn't even have them on the proper side of the date line.

Update time zone data files to tzdata release 2015a.

The IANA timezone database has adopted abbreviations of the form AxST/AxDT for all Australian time zones, reflecting what they believe to be current majority practice Down Under. These names do not conflict with usage elsewhere (other than ACST for Acre Summer Time, which has been in disuse since 1994). Accordingly, adopt these names into our "Default" timezone abbreviation set. The "Australia" abbreviation set now contains only CST, EAST, EST, SAST, SAT, and WST, all of which are thought to be mostly historical usage. Note that SAST has also been changed to be South Africa Standard Time in the "Default" abbreviation set.

Also, add zone abbreviations SRET (Asia/Srednekolymsk) and XJT (Asia/Urumqi), and use WSST/WSDT for western Samoa. Also, there were DST law changes in Chile, Mexico, the Turks & Caicos Islands (America/Grand_Turk), and Fiji. There is a new zone Pacific/Bougainville for portions of Papua New Guinea. Also, numerous corrections for historical (pre-1970) time zone data.

This is the list of problem reports (PRs) from GCC's bug tracking system that are known to be fixed in the 9.4 release. This list might not be complete (that is, it is possible that some PRs that have been fixed are not listed here).

Target Specific Changes


  • The option -moutline-atomics has been added to aid deployment of the Large System Extensions (LSE) on GNU/Linux systems built with a baseline architecture targeting Armv8-A. When the option is specified code is emitted to detect the presence of LSE instructions at run time and use them for standard atomic operations. For more information please refer to the documentation.
  • GCC now supports the Fujitsu A64FX. The associated -mcpu and -mtune options are -mcpu=a64fx and -mtune=a64fx respectively. In particular, -mcpu=a64fx generates code for Armv8.2-A with SVE and tunes the code for the A64FX. This includes tuning the SVE code, although by default the code is still length-agnostic and so works for all SVE implementations. Adding -msve-vector-bits=512 makes the code specific to 512-bit SVE.

Copyright (C) Free Software Foundation, Inc. Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.

Watch the video: Pre-Calculus 12 Section (December 2021).