4.3  Subroutines AIBEM2 , AIBEM3 and AIBEMA

In this Section the subroutines AIBEM2 , AIBEM3 and AIBEMA are introduced. The purpose of the subroutines is to solve the interior acoustic problem. Each subroutine's parameter list has the following general form:

SUBROUTINE AIBEM{2 or 3 or A(}

real wavenumber,

description of boundary and set of interior solution points,

boundary condition,

incident field at boundary points and at interior solution points,

control and validation parameters,

solution at boundary points and at interior solution points (solution),

working space )

The subroutines require input of the conditions of the acoustic field - the wavenumber, a geometrical description of the boundary of the domain (as covered in Chapter 2) and a list of the points in the interior domain where a solution is sought, the boundary condition and the incident field (if any). The subroutine returns the solution at the boundary points and at the selected points in the domain. The use of the subroutines are demonstrated by the programs AIBEM2_T, AIBEM3_T and AIBEMA_T in the next Section.

4.3.1  Solution Strategy of the AIBEM* routines

In the AIBEM* routines the interior Helmholtz equation is solved by the improved direct boundary element method. That is finding the solution of (4.17) subject to the discrete boundary condition (4.18). This will result in obtaining (approximations to) both f and v on S. The solution in the domain is then found using equation (4.19).

A simple analysis of the magnitude of the integral operators suggests that a weighting of the form m ~ 1/k tends to ensure that the relative contribution from each integral operator on either side of the equation remains in balance, whatever the value of k. m is a parameter in the Fortran subroutines for solving the interior acoustic problem. In the test problems the parameter is chosen as follows:

m = i
k+1
 .

4.3.2  Subroutine AIBEM2

Subroutine AIBEM2 computes the solution of the two-dimensional Helmholtz equation in the domain interior to a closed boundary. The boundary (S) is approximated by a set of straight line elements.

The subroutine parameters that specify the interior two-dimensional Helmholtz problem must be set up in the main program. Let this be called MAIN.FOR. The following files must be linked together to construct the complete program:

MAIN.FOR (and files containing any user-defined sub-programs),

AIBEM2.FOR,

H2LC.FOR, the file for computing the discrete operators - see Chapter 3,

FNHANK.FOR, the Hankel function - see Appendix 5,

CGLS.FOR , the file for computing the solution to a linear system - see Appendix 3,

GEOM2D.FOR , the file for 2D geometry - see Appendix 6.

4.3.3  Subroutine AIBEM3

Subroutine AIBEM3 computes solution of the three-dimensional Helmholtz equation in the domain interior to a closed surface. The boundary (S) is approximated by a set of planar triangular elements.

The subroutine parameters that specify the interior three-dimensional Helmholtz problem must be set up in the main program. Let this be called MAIN.FOR. The following files must be linked together to construct the complete program:

MAIN.FOR (and files containing any user-defined sub-programs),

AIBEM3.FOR ,

H3LC.FOR , the file for computing the discrete operators - see Chapter 3,

CGLS.FOR , the file for computing the solution to a linear system - see Appendix 3,

GEOM3D.FOR , the file for 3D geometry - see Appendix 6.

4.3.4  Subroutine AIBEMA

Subroutine AIBEMA computes solution of the three-dimensional axisymmetric Helmholtz equation in the domain interior to a closed surface. The boundary (S) is approximated by a set of truncated cone elements.

The subroutine parameters that specify the interior three-dimensional axisymmetric Helmholtz problem must be set up in the main program. Let this be called MAIN.FOR. The following files must be linked together to construct the complete program:

MAIN.FOR (and files containing any user-defined sub-programs),

AIBEMA.FOR,

H3ALC.FOR , the file for computing the discrete operators - see Chapter 3,

CGLS.FOR , the file for computing the solution to a linear system - see Appendix 3,

GEOM2D.FOR , the file for 2D geometry - see Appendix 6.

GEOM3D.FOR , the file for 3D geometry - see Appendix 6.


Return to boundary-element-method.com/acoustics
Return to boundary-element-method.com