You are now following this question
- You will see updates in your followed content feed.
- You may receive emails, depending on your communication preferences.
Is there a tutorial in MATLAB for solving a radial PDE ?
4 views (last 30 days)
Show older comments
Hi, I have a PDE with radial coordinates that has no analytic solution. Is there a way to generate the plot of the function using numerical methods in MATLAB?
Is there a tutorial for this? I could not find anything on MATLAB for a specific PDE that is not part of the MATLAB toolbox sets.
6 Comments
Sergio Manzetti
on 6 Mar 2018
Edited: Sergio Manzetti
on 6 Mar 2018
It is the polar form of this:
y'''+(1-x^2)y=0
with initial conditions.
Torsten
on 7 Mar 2018
Could you please clearly write down the transformation from
y'''+(1-x^2)*y=0
to the u-formulation ?
I must admit that I don't understand what you are talking about.
Best wishes
Torsten.
Answers (1)
Sergio Manzetti
on 7 Mar 2018
Edited: Sergio Manzetti
on 7 Mar 2018
For u(phi, theta):
u(0,0)=0
u'(0,0)=0
u''(pi,0)=0
u''(0,2pi)=10
14 Comments
Sergio Manzetti
on 7 Mar 2018
Edited: Sergio Manzetti
on 7 Mar 2018
From Cartesian coordinates to polar coordinates:
First, the ODE is:
d^3y/dx^3 + (1-x^2)y=0
Here we rewrite first x and y in polar coordinates using
x = r(phi)cos(phi)
y = r(phi)sin(phi)
and get:
d^3/dx^3 + [1-(r(phi)cos(phi))^2]r(phi)sin(phi)=0
Now, d^3y/dx^3 must be transformed first to polar form and:
d/dx = cos(phi)*d/dr + 1/r*sin(phi)*d/d(phi)
so
d^3/dx^3 = [(cos(phi)*d/dr + 1/r*sin(phi)*d/d(phi))]^3
which gives the original ODE transformed to the following radial PDE, where y= u(r,phi) = r(phi)sin(phi)
u(r,phi)*[(cos(phi)*d/dr + 1/r*sin(phi)*d/d(phi))]^3+[1-(r(phi)cos(phi))^2]u(r,phi)=0
How can I solve this numerically with the given I.C.? Is there a tutorial or a script like ODE45 that is not too complex?
Sergio Manzetti
on 7 Mar 2018
Edited: Sergio Manzetti
on 7 Mar 2018
Do you mean I should use the third order Laplacian instead of the apparent converted third-order operator in radial dimensions?
Torsten
on 7 Mar 2018
An ODE is an ODE and won't become a PDE by a coordinate transformation.
Your ODE depends on one independent variable, namely x, and y is the solution of the ODE (the dependent variable).
In your PDE, y suddenly becomes an independent variable and you introduce a new solution u depending on x and y which has absolutely nothing to do with the former solution y.
How can you make sense of all this ?
Maybe you can give a link to a website where it is explained what you are trying to do.
Best wishes
Torsten.
Sergio Manzetti
on 7 Mar 2018
Edited: Sergio Manzetti
on 7 Mar 2018
Indeed you are right.
A similar example is done on the Schrödinger equation. I attach the scan here.
From this:
where you set H = E Psi
and expand the operator to regard the radial system as shown below:
To this:
However, in my case it is a third order operator, and hence I tried that approach to convert to radial coordinates as eqn 3.18 in the figure above shows.
Torsten
on 7 Mar 2018
d^2/dx^2 is the Laplace-Operator in one dimension and d^2/dr^2 + 1/r*d/dr + 1/r^2*d^2/dphi^2 is the Laplace-Operator in two dimensions (polar coordinates).
I don't know how your third-order operator is extended to several dimensions.
Best wishes
Torsten.
Sergio Manzetti
on 7 Mar 2018
Edited: Sergio Manzetti
on 7 Mar 2018
Thanks I try to get back with an allowed PDE, but would this be completely wrong:
D^3u(r, phi)+(1-rcos^2(phi))u(r,phi)=0
where D^3 is the to present, unknown Laplace third order operator?
Torsten
on 8 Mar 2018
Edited: Torsten
on 8 Mar 2018
The extension of an operator from 1d to 2d, e.g., is not a mathematical formalism, but depends on the physics of the problem you want to describe by the differential equation.
Consider your case
z'''(x)+(1-x^2)*z(x)=0.
Now what is the two-dimensional extension ?
One could choose the extension as
d^3u(x,y)/dx^3 + d^3u(x,y)/dy^3 = (1-x^2-y^2)*u(x,y),
but this is pretty arbitrary.
Why should this be better than
d^3u(x,y)/dx^3 - d^2u(x,y)/dy^2 = (1-x^2+sin(y))*u(x,y)
?
And to answer your question:
There is no ready-to-use MATLAB software or tutorials for the solution of PDEs of order > 2.
Usually, you will find numerical solution methods for standard equations (heat conduction, wave equation, ...) in the literature. MATLAB's PDE toolbox solves PDEs of order 2 of a special structure.
For an arbitrary PDE of order >2, you will have to use the method of lines and solve the resulting system of ordinary differential equations or algebraic equations using a standard solver (ODE15S, fsolve). But usually, setting appropriate boundary conditions will be a non-trivial task.
Best wishes
Torsten.
John D'Errico
on 8 Mar 2018
Edited: John D'Errico
on 8 Mar 2018
The problem is, you are (I will argue) misusing the mathematics here.
The ODE you show describes a single path in the (x,y) plane, dependent on initial conditions. However, it is not a PDE, nor can it be used in that form.
The transformation, by a change of variables to polar form, would allow you to develop a form that is valid in polar coordinates. But it will still describe a specific path through the plane, only you are now plotting the path using polar coordinates. The conversion to polar form does not magically convert an ODE into a PDE.
The website that you linked uses mathematics that applies to a completely different problem, unrelated to what you describe here.
So while you may have a valid physical system that you are trying to model, the mathematics that you have written so far is invalid.
Sergio Manzetti
on 8 Mar 2018
Edited: Sergio Manzetti
on 8 Mar 2018
I am sorry I confused things. I confused operators with ODE and delayed the time to reach a simple question:
How can I study this PDE numerically in MATLAB with some I.C. and B.C.? Is there a tutorial or a link to a similar system that is easy to follow?
ODE15S, fsolve is mentioned, but does it work with this PDE form?
Torsten
on 8 Mar 2018
Can you write out what you mean by
(cos(phi)*d/dr + 1/r*sin(phi)*d/dphi)^3 r cos^2(phi) psi(r,phi)
?
Sergio Manzetti
on 8 Mar 2018
Edited: Sergio Manzetti
on 8 Mar 2018
it's the operator.
on the left side side of equal sign:
Psi is first multiplied with rcos^2(phi) then it is multiplied with the large operator at the third order, and hence multiplied with its third order form (I can write it ou here if you like). That invokes derivations at the third order, derivations with respect to r and phi as well as multiplication with r and cos(phi).
The unknown function is PSI
pooja sudha
on 16 May 2021
you can use numerical methods to solve schrodinger equations like this for ex. Finite difference method.
See Also
Categories
Find more on Eigenvalue Problems in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!An Error Occurred
Unable to complete the action because of changes made to the page. Reload the page to see its updated state.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom(English)
Asia Pacific
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本Japanese (日本語)
- 한국Korean (한국어)