Gravity, geomagnetism, and many other things are often given in terms of spherical harmonics.
I am stupid. What does this mean?
0*1 + 1*0 = 0
Those are finite, 2d vectors. They also happen to be orthogonal unit length (orthonormal) basis vectors, because you can write any 2-d vector with linear combinations of those:
(2, 1) = 2*(1, 0) + 1*(0, 1)
We could do the same with any pair of non-parallel 2d vectors, but it's much easier to have an orthonormal basis.
The same intuition almost completely carries over to infinite-dimensional vector spaces. Here, vectors are well-behaved functions on the sphere.
The inner product (or dot product) of two such functions (e.g. f and g) is the integral of their product over the sphere, which pretty much multiplies the value of both f and g at every point, and adds up the pointwise values by area weighting (some other orthogonal function series are orthogonal under other weightings or spaces).
Spherical harmonic functions form an orthonormal basis over the sphere (viewed as an infinite-dimensional vector space), just like those two vectors do over a 2d space. So, two different spherical harmonic functions have an inner product of zero. This makes a lot of things much easier!
Fourier modes are very similar. Any nice periodic function on the real line can be written as a sum of the trigonmetric basis functions, called its Fourier series.*
A vibrating bubble form spherical harmonics.
Essentially: Spherical harmonics are one of the classic methods to solve PDEs on spheres, modeling complex processes like climate change, or black hole physics, etc. The spherical harmonic transform is part of this process. torch-harmonics implements the transform in way that it's differentiable with the standard automatic processes, allowing you to play the traditional tricks (optimizing over it, sensitivity analysis, etc.) The first paper linked on the repo uses it to learn the dynamics of a set of shallow water equations first and then over a larger timescale from the ERA5 climate dataset. These types approaches are beginning to gain traction for solving actual climate-scale problems (speaking from inside a national lab context). Which is not to say the problem is solved, this is a nice proof of concept that may accelerate others wanting to solve this type of problem.
TLDR: To enable data-driven deep learning methods based off of physics on a sphere (read: Earth), torch-harmonics is an important middle step.
Simply put, it also makes a terrific benchmark for supercomputers.
Using on TC Disrupt / Aero dataset: "overhead infrared" ;)
https://techcrunch.com/events/tc-disrupt-2023/space-domain-p...