I have made a Python program in which I have computed the deflection of a beam.

I am plotting the deflected beam and am now asked to show the length of the beam.

If the beam is not deflected, it is easy to show the length of the beam but when the beam is deflected, I guess the length of the beam is longer than the undeflected beam. How can I compute the length of the deflected beam? Is it correct to distinguish between the length of the deflected and undeflected beam?


The dimensions of the beam and magnitude of the deflection are important here. In most structural applications, it's reasonable to assume the length of a beam is unchanged by a small deformation. One of the basic assumptions of beam theory is that there is some internal surface of the beam called the neutral axis that holds no tension or compression stress, meaning no change in length.

As with any approximation, we know the truth is more complex. The beam will lengthen slightly on one side of the neutral axis/surface and shorten slightly on the other. The question becomes, is your application sensitive enough to a change in length that you need to take into account a very slight amount of lengthening and shortening along the top and bottom surfaces of the beam? If you only want to draw a beam with small deformations so that the user can see an illustration, you don't need to consider this complexity.

One example of when you would need to look at the change in length of any part of the beam is if you have a very tight tolerance between one end of your beam and some other element that must not come into contact with the beam. In that case you might have good reason to make sure that a very slight elongation along the top fibers of the beam doesn't cause it to scrape or bind up against the neighboring element when the beam is deforming under load.

Note that beam theory assumes there is no loading in the longitudinal direction; otherwise the member would be considered a beam-column.

  • $\begingroup$ Assuming we're talking about a gravity load on a simple span, wouldn't it be the bottom fibers that elongate, under tension? The top fibers are under compression and would contract slightly. $\endgroup$ – Ethan48 May 5 '15 at 23:05
  • $\begingroup$ I was thinking of a cantilevered beam, but it doesn't really matter either way for the example. $\endgroup$ – Air May 5 '15 at 23:52

Adding to @Air's answer, there's also the issue of boundary conditions. A simple span where neither support allows for axial displacements will have a slight gain in length, including along the "neutral axis". This is because, in this case, the "neutral axis" will hold a tensile stress. Since the beam deforms, the neutral axis changes from a horizontal straight line to a polynomial curve, which obviously has a greater length going from A to B. This increase in length of the neutral axis implies in a uniform tensile stress along the entire beam (in addition to the transversely linear stress profile due to bending). This tensile stress is usually not taken into account since the increase in length (and therefore the requisite tensile stress) is very small.

However, if one of the supports allows for axial displacements, then there will be no increase in length of the neutral axis, since the support will simply move slightly inwards to compensate. Obviously, in the case of the cantilever there is also no change in neutral axis length since the free end simply moves closer to the fixed end. This does, however, imply that a horizontal beam of length $L$ will, once loaded, have a horizontal length of $L - \Delta$ (and a vertical displacement such that the total length equals $L$).


A subtle bit of wording - the exact length does not change, as pointed out by Air above in his answer. However, the horizontal projection of the beam does change, as the shortest path between two points will always be a straight line. Thus, by curving, the tip of the beam will have to move backwards a bit in the x direction, to account for the deflection in the y direction.

The exact change is minimal. For a beam whose deflection $y(x)$ has been defined in terms of x, the change in "length" can be determined by the slope function $\theta(x) = y'(x)$

$$\Delta L = -\frac{1}{2}\int^L_0(\theta(x))^2dx $$

(Ref Roark's formulas for stresses and strains, 8th edition), Eq. 8.1-14. Note it is always a shrinking of the beam.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.