A fundamental pinch

The fundamental solution of the wave equation with initial zero velocity in a compact Riemannian manifold is
f_fund_sol
where the lambda's are the increasingly ordered distinct eigenvalues of the Laplace-Beltrami operator, the phi's are the corresponding normalized eigenfunctions and x0 is the point of the manifold where the mass of the Dirac delta lies at. The index m and the (finite) summation on it regards the possibility of multiple eigenvalues for the same eigenvalue (degeneracy).

In the case of the unit sphere with the usual Euclidean metric we have exact and simple formulas for the eigenvalues and also exact (but not so simple) expressions for the eigenfunctions, they are the real spherical harmonics. This formula only makes sense when considered as a distribution because at the initial time it is the Dirac delta and the wave equation does not smooth data as opposed to the heat equation.
If we truncate the series, then for t=0 we obtain a peak approximating the Dirac delta. The wave equation gives an approximation of how vibrations evolve, then we can considered the truncated solution as  an approximation of the evolution of a pinch applied on a elastic sphere. Here we show the figures of the numerical results. The scale of the pinch in terms of the radius has been adjusted to get  a better visual effect. For details, check the matlab code at the end of this page.

If you pinch a rubber sphere the first reaction is a quick and severe rebound:

sph20_0.jpg
sph20_1.jpg
sph20_2.jpg
sph20_3.jpg
t = 0.0000
t = 0.1257 t = 0.2513 t = 0.3770

 In the last image a "lump" shows up but with lesser strength because part of the energy escapes with the huge wavefront surrounding it.
This an other wavefronts travel towards the south pole  producing "love handles" on the sphere.
sph20_5.jpg
sph20_8.jpg
sph20_11.jpg
sph20_14.jpg
t = 0.6283
t = 1.0053 t = 1.3823 t = 1.7593

The waves interfere in the south pole to give a negative pinch that rebounds. Note that the pinch and the rebound occurs at a time close to pi, reflecting the fact that waves travel with speed one.
sph20_18.jpg
sph20_21.jpg
sph20_24.jpg
sph20_27.jpg
t = 2.2619
t = 2.6389 t = 3.0159 t = 3.3929

As expected, the waves come back to the north pole giving a north pinch.
After the works of Colin de Verdière, Chazarain and Duistermaat and Guillemin, we know that in general the trace has a singular support contained in the integer multiples of the length of the geodesics. This sounds natural in our case, because due to the symmetry the trace should be as sitting on the north pole and measuring the amplitude there for each time (analytically, one can appeal to the spherical harmonic addition theorem and the normalization Pl(1)=1). The rationale is that we have to wait 2*pi, the length of a meridian, to notice the same peak because the waves travel with speed one.  On the other hand, the trace for the truncated series is a simple  exponential sum and the frequencies (the square roots of the eigenvalues) are close to k+1/2 for large values of k. Hence one should observe negative peaks at odd multiples of 2*pi. This can be difficult to observe in the previous figures because the rebound is very quick. Let us see the last instants before t=2*pi with a small step:
 
rshort_sph20_6.jpg
rshort_sph20_4.jpg
rshort_sph20_2.jpg
rshort_sph20_0.jpg
t = 6.0947
t = 6.1575 t = 6.2204 t = 6.2832

Although analytically is clear, I do not see a geometric reason for this change in the phase when the time is increased by 2*pi, specially when one compares the situation with the 1D case corresponding to the unit circle. Note also that by the same analytic reason, at t=pi the peak  should be negligible at the south pole because cos(t(k+1/2)) becomes close to zero.



The code

 The matlab code used to generate the images is:
[Note: I confess that I realized too late that the spherical harmonic addition theorem, or the symmetry if you prefer,  allows to write a simpler and much faster program. I keep this code because I want to do also some experiments with other particular solutions of the wave equation under other non-symmetric initial conditions].


nframes = 51
maxl = 20
scale = 0.85;

res = [80,80];

phi = linspace(0,2*pi,res(1));
theta = linspace(0, pi,res(2));
[phi,theta] = meshgrid(phi,theta);


for k = 0:nframes-1
    t = 2*pi*k/(nframes-1)
    S = ones(res)/sqrt(4*pi); % sum. The initial value is Y00
    for l=1:maxl
            [k,l]
            P = legendre(l,cos(theta));
            for m=-l:l
                %--compute Y_{lm}
                Plm = squeeze(P(abs(m)+1,:,:));
                base = sqrt( ((2*l+1)/(2*pi))*factorial(l-abs(m))/factorial(l+abs(m)) )*Plm;
                if m>0
                    Ylm = base.*cos(m*phi);
                elseif m == 0
                    Ylm = base/sqrt(2.0);
                else
                    Ylm = base.*sin(-m*phi);
                end
                %-----

                S = S + Ylm*Ylm(1,1)*cos(t*sqrt(l*(l+1)));
        end
    end

    rho = 1 + scale*S*12.0/maxl/maxl;

    % https://es.mathworks.com/help/matlab/examples/animating-a-surface.html
    r = rho.*sin(theta); % convert to Cartesian coordinates
    x = r.*cos(phi);
    y = r.*sin(phi);
    z = rho.*cos(theta);

    figure(1)
    s = surf(x,y,z);
    colormap gray
    camlight right; lighting gouraud
    % camlight right; lighting phong
    view([40,30])
    camzoom(1.5)
    axis ([-3 3 -3 3 -3 3])
    axis off
    namefig = './images/sph%d_%d.jpg';
    namefig = sprintf(namefig,maxl,k);
    saveas(gcf,namefig)
    pause(1)
end

Some obvious variations apply to generate short time variation around 0 and 2*pi.