Menu

NumCalc

Fabian Brinkmann Jeffrey Thomsen

NumCalc

The folder NumCalc contains the BEM code and a shell script to start and organize the calculations on the cluster. NumCalc takes the previously exported data and uses it to numerically calculate the HRTF.

Here we explain how NumCalc can be used. The installation is described here

Running NumCalc

Run the command NumCalc in a terminal in the subdirectories of the NumCalc directory in your project folder (directories containing a file named NC.inp)

Results

The results are saved in the subdirectories mentioned above, in the folders 'be.out' and 'fe.out', and the shell output is written to the file 'NC.out'. For details refer to Mesh2HRTF Project Folder.

Running NumCalc on multiple CPU cores

In order to exploit multi-core processing and thus immensely speeding up your simulations when calculating many frequency steps, you can start multiple NumCalc processes at once handling different frequency steps by running multiple commands in the fashion of NumCalc -istart m -iend n & NumCalc -istart m -iend n & NumCalc -istart..., with m and n being the first and last frequency step you want the respective process to run. For example, to speed up a simulation with 100 frequency steps in total, you might execute the following to have 4 seperate processes running at once: NumCalc -istart 1 -iend 25 & NumCalc -istart 26 -iend 50 & NumCalc -istart 51 -iend 75 & NumCalc -istart 76 -iend 100

The output files created by using the -istart and -iend arguments are similar to the ones described in Mesh2HRTF Project Folder, but instead of NC.out you will receive a file NCm-n.out for every process that you ran with the respective first and last frequency steps m and n that you defined in the command line. In the example mentioned above the files would be named NC1-25.out, NC26-50.out, NC51-75.out and NC76-100.out.

Additional command line arguments

  • The required RAM per frequency step can be estimated with the flag -estimate_ram. The estimated values in GB are written to Memory.txt
  • You can control the maximum number of iterations done for each frequency step by passing the -nitermax option followed by the number, i.e. NumCalc -nitermax 10.
  • Adding >NumCalc.txt to the command creates an additional log file.
  • Adding 2>NumCalcErr.txt to the command creates an additional error log file, i.e. NumCalc >NumCalc.txt 2>NumCalcErr.txt

Structure of the input and output files
Structure of NC.inp
Nodes and Elements
Output File Structure


Related

Wiki: Installation
Wiki: Installation_2
Wiki: Mesh2HRTF 1.0 and above
Wiki: Mesh2HRTF Project Folder
Wiki: Mesh2HRTF Source Code
Wiki: Nodes and Elements
Wiki: Output File Structure
Wiki: Structure of NC.inp
Wiki: Unix Tutorials