Skip to content

Commit 94cea5d

Browse files
committed
docs: add paper
1 parent d1acd2b commit 94cea5d

File tree

2 files changed

+34
-7
lines changed

2 files changed

+34
-7
lines changed

paper/paper.bib

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -157,3 +157,27 @@ @article{szwajcowski_continuous_2023
157157
keywords = {continuous functional model, directivity, {HRTF}, hyperspherical harmonics, spherical harmonics},
158158
file = {Full Text PDF:/home/z/Zotero/storage/7XXZZTC9/Szwajcowski - 2023 - Continuous Head-related Transfer Function Representation Based on Hyperspherical Harmonics.pdf:application/pdf},
159159
}
160+
161+
@ARTICLE{2020SciPy-NMeth,
162+
author = {Virtanen, Pauli and Gommers, Ralf and Oliphant, Travis E. and
163+
Haberland, Matt and Reddy, Tyler and Cournapeau, David and
164+
Burovski, Evgeni and Peterson, Pearu and Weckesser, Warren and
165+
Bright, Jonathan and {van der Walt}, St{\'e}fan J. and
166+
Brett, Matthew and Wilson, Joshua and Millman, K. Jarrod and
167+
Mayorov, Nikolay and Nelson, Andrew R. J. and Jones, Eric and
168+
Kern, Robert and Larson, Eric and Carey, C J and
169+
Polat, {\.I}lhan and Feng, Yu and Moore, Eric W. and
170+
{VanderPlas}, Jake and Laxalde, Denis and Perktold, Josef and
171+
Cimrman, Robert and Henriksen, Ian and Quintero, E. A. and
172+
Harris, Charles R. and Archibald, Anne M. and
173+
Ribeiro, Ant{\^o}nio H. and Pedregosa, Fabian and
174+
{van Mulbregt}, Paul and {SciPy 1.0 Contributors}},
175+
title = {{{SciPy} 1.0: Fundamental Algorithms for Scientific
176+
Computing in Python}},
177+
journal = {Nature Methods},
178+
year = {2020},
179+
volume = {17},
180+
pages = {261--272},
181+
adsurl = {https://rdcu.be/b08Wh},
182+
doi = {10.1038/s41592-019-0686-2},
183+
}

paper/paper.md

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -34,19 +34,22 @@ bibliography: paper.bib
3434
# Summary
3535

3636
Spherical harmonics, which are the solutions to the angular part of the laplace equation, have been widely used in various fields of science and engineering.
37-
Spherical harmonics in 3D are well-known
38-
Especially, hyperspherical harmonics, which are spherical harmonics in higher dimensions, have been applied to many-body problems in quantum mechanics [@fock_zur_1935], representation of crystallographic textures [@bonvallet_3d_2007], description of 3D models [@bonvallet_3d_2007], representation of brain structures [@hosseinbor_4d_2013], representation of the Head-Related Transfer Function, which characterizes how an ear receives a sound from a point in space [@szwajcowski_continuous_2023], and so on.
37+
Spherical harmonics in 3D are well-known and have various applications, and many software packages have been developed for them.
38+
Hyperspherical harmonics, which are spherical harmonics in higher dimensions, have been applied to many-body problems in quantum mechanics [@fock_zur_1935], representation of crystallographic textures [@bonvallet_3d_2007], description of 3D models [@bonvallet_3d_2007], representation of brain structures [@hosseinbor_4d_2013], representation of the Head-Related Transfer Function, which characterizes how an ear receives a sound from a point in space [@szwajcowski_continuous_2023], and so on.
39+
However, an attempt to develop a framework which allows codes to work on both 3D and higher dimensions has not been made.
40+
Therefore, we aim to provide a unified framework for implementing spherical harmonics techniques in arbitrary dimensions and coordinate systems.
41+
Our packages would allow researchers to easily extend their work to higher dimensions, for example, from 2D to 3D and further to 4D, without having to duplicate code for each dimension.
3942

4043
# Statement of need
4144

42-
`ultrasphere` is a Python package for Vilenkin–Kuznetsov–Smorodinsky polyspherical coordinate systems [@vilenkin_representation_1993].
45+
`ultrasphere` is a Python package for Vilenkin–Kuznetsov–Smorodinsky (VKS) polyspherical coordinate systems [@vilenkin_representation_1993].
4346
`ultrasphere-harmonics` implements hyperspherical harmonics methods for any type of polyspherical coordinates based on `ultrasphere`.
44-
The main goal of these packages is to provide a unified framework for implementing spherical harmonics techniques in arbitrary dimensions and coordinate systems.
45-
This would allow researchers to easily extend their work to higher dimensions, for example, from 2D to 3D and further to 4D, without having to duplicate code for each dimension.
46-
To demonstrate this, we implemented code for solving acoustic scattering from a single sound-soft sphere using any type of polyspherical coordinates as a command-line application.
47+
While spherical harmonics in 3D itself have been widely implemented in various software packages, such as [@2020SciPy-NMeth], hyperspherical harmonics are rarely implemented, and software packages which supports arbitrary VKS polyspherical coordinates are not known.
48+
The main goal of out packages is to provide a unified framework for implementing spherical harmonics techniques in arbitrary VKS polyspherical coordinates and dimensions.
49+
To demonstrate this, code for solving acoustic scattering from a single sound-soft sphere using any type of polyspherical coordinates is implemented within `ultrasphere-harmonics` as a command-line application.
4750

4851
Spherical expansion methods are sometimes computationally expensive, especially in higher dimensions.
49-
To address the recent diversification of HPC environment, our api is made to be compatible with the array API standard [@meurer_python_2023], which enables writing code which runs on multiple array libraries (e.g., NumPy[@harris_array_2020], PyTorch[@paszke_pytorch_2019]) and multiple hardware (e.g., CPU, GPU).
52+
To utilize HPC resources, which environment is recently diversified, our api is made to be compatible with the array API standard [@meurer_python_2023], which enables writing code which runs on multiple array libraries (e.g., NumPy[@harris_array_2020], PyTorch[@paszke_pytorch_2019]) and multiple hardware (e.g., CPU, GPU).
5053
Our packages fully support vectorization to leverage the performance of these libraries.
5154

5255
# Acknowledgements

0 commit comments

Comments
 (0)