===========================================================================
  Rotation invariant patterns for a nonlinear Laplace-Beltrami equation: 
                a Taylor-Chebyshev series approach
===========================================================================
Authors: - Jan Bouwe van den Berg
         - Gabriel William Duchesne
         - Jean-Philippe Lessard

---------------------------------------------------------------------------
DESCRIPTION 
---------------------------------------------------------------------------
This code gives us the rigorous numerical computations found in the
paper "Rotation invariant patterns for a nonlinear Laplace-Beltrami 
equation: a Taylor-Chebyshev series approach". 

This code can also be used on its own too:
- Find approximations of the solution on the branch lambda_n near the 
  trivial solution.
- Prove the local existence of the solution in a ball centered at the 
  numerical approximation.
- Plot the proven solutions.

Each of these points are explained in more details in the following 
sections.

---------------------------------------------------------------------------
SOFTWARE REQUIMENTS
---------------------------------------------------------------------------
- A MATLAB license is required to use this code and can be acquired here:
  https://www.mathworks.com/products/matlab.html
  The code was made using version R2020b and may not be compatible with 
  older versions of the software.

- An INTLAB license is required to use this code and can be acquired here: 
  https://www.tuhh.de/ti3/rump/intlab/
  The code was made using version 11 and may not be compatible with older 
  versions of the software.

---------------------------------------------------------------------------
NUMERICAL APPROXIMATIONS
---------------------------------------------------------------------------
The numerical approximations and associated data for all the solutions 
of the nonlinear Laplace-Beltrami equation presented in the paper can be 
found in \Solution\data. 

Using the findinitalpoint.m function, we can find an approximation of the
solutions on the branch lambda_n = 2n*(2n+1) for 
lambda  = 2n*(2n+1) + deltalambda. From there, other approximations can be
found on the branch lambda_n using a parameter continuation.

---------------------------------------------------------------------------
PROOFS OF SOLUTIONS
---------------------------------------------------------------------------
Using proof_of_solutions.m, we prove the local existence of a solution for
the nonlinear Laplace-Beltrami equation as defined in the paper. 
The rigorous computation of the solutions use the numerical approximations
in \Solution\data and save the proven solutions and associated data in
\Solution\Proven_Solutions.

---------------------------------------------------------------------------
PLOT OF PROVEN SOLUTIONS
---------------------------------------------------------------------------
Using plot_solutions.m, we can generated the same figures of the solutions 
as in the paper for any proven solutions. To use it, simply load the data 
of the wanted proven solution from \Solution\Proven_Solutions and run the 
function plot_solutions.m.