PDE solver on 2D sphere

Hi,
I would like to solve a spatio-temporal non-linear PDE on a 2D sphere (not a 'shell' with a finite thickness).
I see there is a number of mesh generators (cubed sphere, icosahedral grid) for Matlab, but how to integrate them with a PDE solver?
Is it possible with PDEtoolbox or other Matlab tools? Any examples?
Climate modelers probably do this all the time...

5 Comments

Hi Mark,
MATLAB Partial Differential Equations Toolbox support both 2D and 3D geometries. You can find a couple of examples at this link . Time dependency can also be integrated into the problem, by providing a list of time instances to the ' solvepde ' function.
Syntax:
result = solvepde(model,timelist);
Here is an example involving time-varying results.
Hope this helps.
Thank you, but I would like to solve on a sphere, which is a 2D object embedded in 3D space.
I don't see how that fits in the PDEtoolbox which either requires 3D objects (which a sphere is not) or 2D objects embedded in 2D space.
The only solution I currently see is to make it a shell of finite thickness.
You could calculate on a rectangle if you use spherical coordinates ...
Best wishes
Torsten.
That's a good idea Torsten. Will the poles give trouble, and do I need special boundary conditions there?
I don't know. My guess is that the periodic boundary condition will be the most difficult part to deal with when using the PDE toolbox.
Best wishes
Torsten.

Sign in to comment.

Answers (1)

If you are referring to thin walled hollow sphere, a 3-D volume as your problem domain, then you can create such geometry in PDE Toolbox as:
radius = 1;
thickness = radius/10;
gm = multisphere([radius-thickness, radius], 'Void',[1,0]);
model = createpde;
model.Geometry = gm;
pdegplot(model,'FaceLabels','on','FaceAlpha',0.3,'CellLabels','on')
print('Hollow_Sphere','-dpng','-r200')

Products

Release

R2018a

Asked:

on 29 Aug 2018

Answered:

on 4 Sep 2018

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!