jburkardt

SPRING_ODE2\ Gnuplot Graphics to Display Spring ODE Solution {#spring_ode2-gnuplot-graphics-to-display-spring-ode-solution align=”center”} ===============================================


SPRING_ODE2 is a C++ program which shows how Gnuplot graphics can be used to illustrate a solution of the ordinary differential equation (ODE) that describes the motion of a weight attached to a spring.

This program is a revision of the SPRING_ODE program. A second change that we make is that we use vectors (C arrays) to store the data.

Hooke’s law for a spring observes that the restoring force is proportional to the displacement:

        F = - k x

and Newton’s law relates the force to acceleration:

        F = m a

Putting these equations together, we have:

        m * d^2 x/dt^2 = - k * x

We can add a damping force with coefficient c:

        m * d^2 x/dt^2 = - k * x - c * dx/dt

If we write this as a pair of first order equations for (x,v), we have

            dx/dt = v
        m * dv/dt = - k * x - c * v

and now we can approximate these values for small time steps.

Licensing: {#licensing align=”center”}

The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.

Languages: {#languages align=”center”}

SPRING_ODE2 is available in a C version and a C++ version and a FORTRAN77 version and a FORTRAN90 version and a MATLAB version.

GNUPLOT, C++ programs which illustrate the use of the gnuplot graphics program.

LORENZ_ODE, a C++ program which approximates solutions to the Lorenz system, creating output files that can be displayed by Gnuplot.

GRAPHICS_EXAMPLES_GNUPLOT, gnuplot scripts which illustrate how various kinds of data can be displayed and analyzed graphically using the interactive executable graphics program GNUPLOT.

SPRING_ODE, a C++ program which shows how line printer graphics can be used to make a crude illustration of a solution of the ordinary differential equation (ODE) that describes the motion of a weight attached to a spring.

Source Code: {#source-code align=”center”}

Examples and Tests: {#examples-and-tests align=”center”}

List of Routines: {#list-of-routines align=”center”}

You can go up one level to the C++ source codes.


Last revised on 09 October 2013.