fd1d_bvp, a Fortran77 code which applies the finite difference method (FDM) to solve a two point boundary value problem in one spatial dimension.
The boundary value problem (BVP) that is to be solved has the form:
- d/dx ( a(x) * du/dx ) + c(x) * u(x) = f(x)in the interval X(1) < x < X(N) The functions a(x), c(x), and f(x) are given functions, and a formula for a'(x) is also available.
Boundary conditions are applied at the endpoints, and in this case, these are assumed to have the form:
u(X(1)) = 0.0; u(X(N)) = 0.0.
To compute a finite difference approximation, a set of n nodes is defined over the interval, and, at each interior node, a discretized version of the BVP is written, with u''(x) and u'(x) approximated by central differences.
call fd1d_bvp ( n, a, aprime, c, f, x, u )where
The computer code and data files described and made available on this web page are distributed under the MIT license
fd1d_bvp is available in a C version and a C++ version and a Fortran90 version and a MATLAB version and an Octave version and a Python version.
bvpsol, a Fortran77 library which solves highly nonlinear two point boundary value problems using a local linear solver (condensing algorithm) or a global sparse linear solver for the solution of the arising linear subproblems, by Deuflhard, Bader, Weimann.
FD1D_BURGERS_LAX, a Fortran77 program which applies the finite difference method and the Lax-Wendroff method to solve the non-viscous time-dependent Burgers equation in one spatial dimension.
FD1D_BURGERS_LEAP, a Fortran77 program which applies the finite difference method and the leapfrog approach to solve the non-viscous time-dependent Burgers equation in one spatial dimension.
FD1D_DISPLAY, a MATLAB program which reads a pair of files defining a 1D finite difference model, and plots the data.
FD1D_HEAT_EXPLICIT, a Fortran77 program which uses the finite difference method and explicit time stepping to solve the time dependent heat equation in 1D.
FD1D_HEAT_IMPLICIT, a Fortran77 program which uses the finite difference method and implicit time stepping to solve the time dependent heat equation in 1D.
FD1D_HEAT_STEADY, a Fortran77 program which uses the finite difference method to solve the steady (time independent) heat equation in 1D.
FD1D_PREDATOR_PREY, a Fortran77 program which implements a finite difference algorithm for predator-prey system with spatial variation in 1D.
FD1D_PREDATOR_PREY_PLOT, a Fortran90 program which plots the output from the FD1D_PREDATOR_PREY program;
FD1D_WAVE, a Fortran77 program which applies the finite difference method to solve the time-dependent wave equation utt = c * uxx in one spatial dimension.
FEM1D, a Fortran77 program which applies the finite element method to a linear two point boundary value problem in a 1D region.
FEM1D_BVP_LINEAR, a Fortran77 program which applies the finite element method, with piecewise linear elements, to a two point boundary value problem in one spatial dimension.
MUS, a Fortran77 library which implements the multiple shooting method for two point boundary value problems, for linear or nonlinear cases, by Robert Mattheij and G Staarink.