# The Boundary Element Method in Acoustics: A Survey
## 6 Areas of Discussion
### Efficiency
#### 6.1.1 The Computational Cost of the Acoustic Boundary Element Method at One Frequency  
In this Sub-subsection, the boundary element method in acoustics is developed in its most typical way for one frequency. The efficiency of the method is analysed and discussed. More disruptive methods for improving the efficiency are considered subsequently. As discussed, the boundary element method is composed of two stages, the first stage involving determining the boundary functions and the domain solution in the second stage. In the first stage one or more \(n\)-\(n\) matrices are formed, where \(n\) is the number of boundary solution points (e.g., collocation points, or elements for simple constant elements). In the second stage, usually one \(n_{P}\)-\(n\) matrix is formed, where \(n_{P}\) is the number of domain points. Hence the storage requirement is \(O\!\left(n^{2}+n_{P}n\right)\) complex numbers. The matrices are normally computed by numerical integration. In general, the number of quadrature points required on each panel would be varied with the size of the panel and the distance between the panel and the point [345]. For each quadrature point, the Green's function would be computed, together with the other geometric information, although the former is likely to incur the greater part of the computational cost. The discretisation could be carried out separately for each operator; however, for efficiency reasons, the computed values should be shared between the operators, as, for example, followed in the author's previous work [61; 91]. The diagonal components of the square matrix (or matrices) in the initial stage may be the result of evaluating singular and hypersingular integrals, as discussed, and, although they require special treatment, it is usually more efficient if the quadrature points are similarly the same for all required discrete operators. Lumping together the matrices, for the \(n\times n\) and \(n_{P}\times n\) components, let the average number of quadrature points be and let the average cost of the evaluation of the Green's function be \(C_{G}\) and the average cost of the geometrical properties be \(C_{g}\), then the total cost (or computer time) of computing the matrices is  
\[N_{Q}\Big{(}n^{2}+n_{P}n\Big{)}\Big{(}\ C_{G}+C_{g}\Big{)}.\]  
Clearly \(C_{g}\) will be larger for the combined operators, used in the primary stage for exterior problems. Alternatively, for the Schenck method, the matrices are augmented by the discrete operators for the interior points. Once, the matrix vector system is formed, the next step is to solve it. The most straightforward method of solution of a square system is the Gaussian elimination or LU factorisation method (re-writing a matrix as the product of a lower and upper triangular matrices). The overall computer time for the acoustic boundary element method at one frequency can be summarised with the equation  
\[N_{Q}\Big{(}n^{2}+n_{P}n\Big{)}\Big{(}\ C_{G}+C_{g}\Big{)}+\Big{(}\frac{4}{3}\ n^{3}+O\Big{(}n^{2}\Big{)}\Big{)}C_{f}\]  
where \(C_{f}\) represents the cost of a floating-point operation, such as multiplication or division. The non-square system that arises in the Schenck method can also easily be resolved as a square system through pre-multiplying both sides by the transpose of the matrix over which the solution is sought and this is equivalent to the least-squares solution. In its earlier development, the cost of computing the matrices generally far outweighed the cost of solving the system. However, in the first stage of the boundary element method, the computational cost of setting up the linear system is \(O\Big{(}n^{2}\Big{)}\), whereas the cost of solving it (using the methods stated) is \(O\Big{(}n^{3}\Big{)}\). For this reason, it has also been understood for a long time that LU factorisation or related methods for solving the linear system was unsustainable, as progress is made towards the finer meshes that are particularly required for high frequency problems.