BEMLIB
BEMLIB is a boundary-element software library of Fortran 77 (compatible with Fortran 90) and Matlab codes accompanying the book by C. Pozrikidis, A Practical Guide to Boundary Element Methods with the software library BEMLIB,'' Champan & Hall/CRC, (2002). Chapters 8-12 of the book contain the BEMLIB User Guide. BEMLIB is a distillation of its parental library FDLIB.If this sofware is of interest to you, please consider purchasing the book or ordering it through your company or library.
Download
View and download BEMLIB 10.01To unravel the compresed tar file, issue the Unix command: tar xzf BEMLIB.tgz
BEMLIB directories
Directory: num_meth
General-purpose numerical methods in scientific computing. This directory accompanies the second edition of a book, C. Pozrikidis, Numerical Computation in Science and Engineering, Oxford University Press (2008.)
| Subdirectory | Topic |
| 01_num_comp | General aspects of numerical computation. |
| 02_lin_calc | Linear algebra and linear calculus. |
| 03_lin_eq | Solution of systems of linear algebraic equations. |
| 04_nl_eq | Solution of nonlinear algebraic equations. |
| 05_eigen | Computation of eigenvalues and eigenvectors of matrices. |
| 06_interp_diff | Function interpolation and differentiation. |
| 07_integration | Numerical integration of a function of one or two variables. |
| 08_approximation | Approximation of a function of one or two variables. |
| 09_ode | Ordinary differential equations. |
| 10_ode_ddm | Ordinary differential equations; domain discretization methods |
| 11_pde_diff | Partial differential equations; unsteady diffusion equation |
| 12_pde_poisson | Partial differential equations; Poisson equation |
| 13_pde_cd | Partial differential equations; convection-diffusion equation |
| 14_bem | Boundary-element methods. |
| 15_fem | Finite-element methods. |
| 99_spec_fnc | Computation of special functions including Bessel functions, the error function, and others. |
Directory: grids
Boundary-element grid generation.
| Subdirectory | Topic |
| grid_2d | Boundary-element discretization of a planar line into straight or circular elements. |
| prd_2d | Adaptive discretization of a closed line in the xy plane. |
| prd_ax | Adaptive discretization of a line representing the contour of a surface in an azimuthal plane. |
| trgl |
Triangulation of a closed surface into an
unstructured grid of curved triangles based on the successive subdivisions of an octahedron or icosahedron. |
| trgl_flat | Triangulation of a disk, square, square with a circular hole, square with a square hole. |
Directory: laplace
Green and Neumann functions and boundary-element codes for Laplace's equation.
| Subdirectory | Topic |
| flow_1d | Steady unidirectional flow through a tube with arbitrary cross-section. |
| flow_1d_1p | Steady unidirectional shear flow over a periodic array of cylinders or a periodic wall with arbitrary cross-section. |
| lgf_2d | Green's and Neumann functions of Laplace's equation in two dimensions. |
| lgf_3d | Green's and Neumann functions of Laplace's equation in three dimensions. |
| lgf_ax | Green's and Neumann functions of Laplace's equation in axisymmetric domains. |
| body_2d | Two-dimensional flow past, or due to the motion of, a body with arbitrary geometry. |
| body_ax | Axisymmetric flow past, or due to the motion of, a body with arbitrary geometry. |
| flow_2d | Two-dimensional potential flow in a domain with arbitrary geometry. |
| tank_2d | Fluid sloshing in a rectangular tank. |
| ldr_3d |
Solution of Laplace's equation
in the interior or exterior of a three-dimensional surface,
subject to Dirichlet boundary conditions (Green boundary-integral formulation). |
| ldr_3d_ext |
Solution of Laplace's equation
in the exterior of a three-dimensional surface,
subject to Dirichlet boundary conditions (completed double-layer formulation). |
| ldr_3d_int |
Solution of Laplace's equation
in the interior of a three-dimensional surface,
subject to Dirichlet boundary conditions (double-layer formulation). |
| lnm_3d |
Solution of Laplace's equation
in the interior or exterior of a three-dimensional region,
subject to Neumann boundary conditions (boundary-integral formulation). |
Directory: helmholtz
Boundary-element codes for Helmholtz's equation.
| Subdirectory | Topic |
| flow_1d_osc | Oscillatory unidirectional flow through a tube with arbitrary cross-section. |
Directory: stokes
Green functions and boundary-element codes for Stokes flow.
| Subdirectory | Topic |
| bump_3d | Shear flow past a spherical bump on a plane wall. |
| flow_2d | Two-dimensional flow in a domain with arbitrary geometry. |
| prtcl_2d | Flow past a fixed bed of two-dimensional particles with flow configuration. |
| prtcl_3d | Flow past, or due to the motion of, a three-dimensional rigid particle, for several flow configurations. |
| prtcl_3d_mob | Motion of a rigid particle (mobility problem) |
| prtcl_ax | Flow past, or due to the motion of, a collection of axisymmetric particles. |
| prtcl_sw | Swirling flow due to the rotation of an axisymmetric particle. |
| rbc_2d | Numerical simulation of the deformation of a two-dimenional red blood cell. |
| sgf_2d | Green's functions of two-dimensional Stokes flow. |
| sgf_3d | Green's functions of three-dimensional Stokes flow. |
| sgf_ax | Green's functions of axisymmetric Stokes flow. |
Terms
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
To receive a copy of the GNU Lesser General Public License along write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
On the Internet, visit the URL: http://www.gnu.org/copyleft/lesser.html
Acknowledgements
Thanks to Hoaxiang Luo, Mark Blyth, and Bill Baxter (baxter@cs.unc.edu) for bug reports.