A non-transitory computer-readable storage medium configured to store a program, wherein, if executed, the program causes a computer to execute operations comprising:
- acquiring signals generated at a wave source, as input signals;
- calculating cross-correlation functions based on the acquired input signals;
- extracting envelope functions based on the calculated cross-correlation functions;
- calculating a combined envelope function by combining the extracted envelope functions;
- and
- generating estimated direction information about the wave source based on the calculated combined envelope function.