BUCKLING_SPRING
The Buckling Spring
BUCKLING_SPRING is a Mathematica program
which illustrates solutions of the buckling spring equations.
We are given three points A, B, and C:
-
A is at the origin (0,0);
-
B has coordinates (X,Y) with Y nonnegative, and the ray from A to B
makes an angle of THETA with the horizontal axis.
-
C is at the point (2*X,0).
Springs:
-
A spring extends from A to B; it is normally of length 1, and is
currently of length L.
-
A spring extends from B to C; it is normally of length 1, and is
currently of length L.
-
A spring force is also exerted, which tends to draw the two
springs together, proportional to the angle between the two springs.
Forces:
A vertical load MU is applied at point B (downward is positive);
A horizontal load LAMBDA is applied at point C (leftware is positive);
The spring force is applied perpendicularly to the axes of the two springs.
If we compute F(1), the force along the axis of one spring, and
F(2), the force perpendicular to the axis of one spring, we have that
F(L,THETA,LAMBDA,MU) is given by:
-
F(1) = - 2 ( 1 - L ) + 2 * LAMBDA * cos ( THETA ) + MU * sin ( THETA )
-
F(2) = 0.5 * THETA - 2 * LAMBDA * L * sin ( THETA ) + MU * L * cos ( THETA )
To explore these equations, we can first solve for MU and LAMBDA in terms
of L and THETA:
-
LAMBDA(L,THETA) = (1-L) * cos(THETA) + 0.25 * THETA * sin(THETA) / L
-
MU(L,THETA) = 2 * (1-L) * sin(THETA) - 0.5 * THETA * cos(THETA) / L
We can then study the behavior of solutions by choosing a fixed value of
THETA (say pi/8), and plotting LAMBDA(L,THETA) versus MU(L,THETA) over a range
of values of L, say from 0.25 to 1.75. Recall that L = 1 when the springs
are at their "natural" length.
Licensing:
The computer code and data files described and made available on this web page
are distributed under
the GNU LGPL license.
Related Data and Programs:
BUCKLING_SPRING
is a MATLAB program which
plots solutions of the buckling spring equations.
TEST_CON
is a FORTRAN program which
sets up sample problems for continuation, including the buckling spring.
Author:
Jim Fink, Gettysburg College.
Reference:
-
Tim Poston, Ian Stewart,
Catastrophe Theory and its Applications,
Dover, 1996,
ISBN13: 978-0486692715,
LC: QA614.58.P66.
Source Code:
Computing a single curve:
-
BucklingSpring.nb,
a MATHEMATICA script which determines LAMBDA(L,THETA) and MU(L,THETA), chooses
a value for THETA and makes one plot of LAMBDA versus MU over the
range 0.25 <= L <= 1.75.
-
buckling_spring.png
a PNG image of the plot.
Computing and displaying multiple curves:
-
BucklingSprings.nb,
a MATHEMATICA script which determines LAMBDA(L,THETA) and MU(L,THETA), chooses
a value for THETA and plots LAMBDA versus MU over the
range 0.25 <= L <= 1.75, for 49 values of THETA between -3Pi/8
and +3Pi/8.
-
buckling_springs.png
a PNG image of the plot.
You can go up one level to
the Mathematica packages and notebooks.
Last revised on 14 October 2008.