BETIS
Boundary Element Method for Laplace's Equation


BETIS is a FORTRAN77 program which applies the boundary element method to solve Laplace's equation in a 2D region, by Federico Paris and Jose Canas.

The program uses linear continuous elements and Dirichlet, Neumann as well as mixed boundary conditions can be taken into consideration.

Input File Format:

The input to the program involves a file containing five sets of data:

  1. The title line (a character string)
  2. The parameter line, listing NP, NPI and NANU:
  3. The coordinates of internal points; For each of the NPI internal points, there must be a record specifying XINT(I) and YINT(I):
  4. The coordinates of boundary points; The boundary points are indexed from 1 to NP+1, and are assumed to be given in counterclockwise order; Logically, the boundary point information is given consecutively; however, if one or more points are omitted, their values will be determined by linear interpolation from the preceding and succeeding values that are given. Thus, the very least input would specify points 1 and NP+1; the fullest information would specify all NP+1 points. Most input would omit points that are interior to an equally spaced line.
  5. The boundary conditions, specifying the boundary node index, the boundary code, and the values of the potential, and the "before" and "after" fluxes at the node. A typical boundary condition will only specify the potential or the flux; the values not specified can be given as 0. A boundary condition must be given for every boundary node. Logically, the boundary nodes are input in order; however boundary nodes may be omitted, in which case the data will be linearly interpolated; however, the preceding and succeeding boundary conditions must have the same value of NCOD for this to be done.

Note that if the boundary condition code NCOD(I) is 4, then the unknown value of DFI(I,2) is assumed to be associated with a node at a corner; if the boundary condition is 5, then the value of DFI(I,2) is assumed to be associated with a node in a "continuous" boundary.

Usage:

betis
The user will be prompted for

Related Data and Programs:

FEM_50, a MATLAB program which solves Laplace's equation in an arbitrary region using the finite element method.

FEM2D_POISSON, a FORTRAN90 program which solves Poisson's equation in an arbitrary triangulated region using the finite element method.

FEM2D_POISSON_RECTANGLE, a FORTRAN77 program which solves Poisson's equation in a 2D rectangle using the finite element method.

FISHPACK, a FORTRAN77 library which solves Poisson, Laplace or Helmholtz equations in a variety of 2D and 3D geometries, using the finite difference method.

SERBA, a FORTRAN77 program which solves problems in planar elasticity using the boundary element method.

Author:

Federico Paris and Jose Canas,
Department of Elasticity and Strength of Materials,
Industrial Engineering School,
University of Seville, Spain.

Reference:

  1. Federico Paris, Jose Canas,
    Boundary Element Method: Fundamentals and Applications,
    Oxford, 1997,
    ISBN: 0-19-856543-7,
    LC: TA347.B69.P34.

Source Code:

Examples and Tests:

Example 1 is a heat conduction problem in a square with mixed boundary conditions, using 12 elements:

Example 2 is a heat conduction problem in a square with mixed boundary conditions, using 4 elements:

Example 3 is a heat conduction problem in a square with Neumann boundary conditions, using 12 elements:

Example 4 is a heat conduction problem in a square with Dirichlet boundary conditions, using 12 elements:

Example 5 is a torsion problem in a region bounded by two circular arcs, using 20 elements, and applies boundary conditions on the discretized boundary:

Example 6 is a torsion problem in a region bounded by two circular arcs, using 20 elements, and applies boundary conditions on the original boundary:

Example 7 is a torsion problem in a region bounded by two circular arcs, which takes advantage of the symmetry of the region and only treats half of it, using 10 elements, and applies boundary conditions on the discretized boundary:

List of Routines:

You can go up one level to the FORTRAN77 source codes.


Last revised on 15 December 2007.