The calculation of the acoustic field in or around objects is an important task in acoustic engineering. To numerically solve this task, the boundary element method (BEM) is a commonly used method especially for infinite domains. The open source tool Mesh2HRTF and its BEM core NumCalc provide users with a collection of free software for acoustic simulations without the need of having an in-depth knowledge into numerical methods. However, we feel that users should have a basic understanding with respect to the methods behind the software they are using. We are convinced that this basic understanding helps in avoiding common mistakes and also helps to understand the requirements to use the software. To provide this background is the first motivation for this paper. A second motivation for this paper is to demonstrate the accuracy of NumCalc when solving benchmark problems. Thus, users can get an idea about the accuracy they can expect when using NumCalc as well as the memory and CPU requirements of NumCalc. A third motivation for this paper is to give users detailed information about some parts of the actual implementation that are usually not mentioned in literature, e.g., the specific version of the fast multipole method and its clustering process or how to use frequency-dependent admittance boundary conditions.
翻译:计算物体内部或周围的声场是声学工程中的一项重要任务。在数值求解该任务时,边界元法是一种常用方法,尤其适用于无限域。开源工具Mesh2HRTF及其边界元法核心NumCalc为用户提供了一套免费的声学仿真软件,无需用户深入了解数值方法。然而,我们认为用户应对其使用软件背后的方法具备基本的理解。我们确信,这种基本理解有助于避免常见错误,并有助于理解使用该软件的要求。提供这种背景知识是本文的第一个动机。本文的第二个动机是展示NumCalc在求解基准问题时的准确性。因此,用户可以了解使用NumCalc时所能预期的精度,以及NumCalc的内存和CPU需求。本文的第三个动机是为用户提供关于实际实现中某些部分的详细信息,这些内容通常在文献中未被提及,例如所使用的快速多极子方法的具体版本及其聚类过程,或者如何使用频率相关的导纳边界条件。