現在この質問をフォロー中です
- フォローしているコンテンツ フィードに更新が表示されます。
- コミュニケーション基本設定に応じて電子メールを受け取ることができます。
Is there a tutorial in MATLAB for solving a radial PDE ?
4 ビュー (過去 30 日間)
古いコメントを表示
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 件のコメント
Sergio Manzetti
2018 年 3 月 6 日
編集済み: Sergio Manzetti
2018 年 3 月 6 日
It is the polar form of this:
y'''+(1-x^2)y=0
with initial conditions.
Torsten
2018 年 3 月 7 日
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.
回答 (1 件)
Sergio Manzetti
2018 年 3 月 7 日
編集済み: Sergio Manzetti
2018 年 3 月 7 日
For u(phi, theta):
u(0,0)=0
u'(0,0)=0
u''(pi,0)=0
u''(0,2pi)=10
14 件のコメント
Sergio Manzetti
2018 年 3 月 7 日
編集済み: Sergio Manzetti
2018 年 3 月 7 日
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
2018 年 3 月 7 日
編集済み: Sergio Manzetti
2018 年 3 月 7 日
Do you mean I should use the third order Laplacian instead of the apparent converted third-order operator in radial dimensions?
Torsten
2018 年 3 月 7 日
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
2018 年 3 月 7 日
編集済み: Sergio Manzetti
2018 年 3 月 7 日
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
2018 年 3 月 7 日
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
2018 年 3 月 7 日
編集済み: Sergio Manzetti
2018 年 3 月 7 日
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
2018 年 3 月 8 日
編集済み: Torsten
2018 年 3 月 8 日
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
2018 年 3 月 8 日
編集済み: John D'Errico
2018 年 3 月 8 日
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
2018 年 3 月 8 日
編集済み: Sergio Manzetti
2018 年 3 月 8 日
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
2018 年 3 月 8 日
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
2018 年 3 月 8 日
編集済み: Sergio Manzetti
2018 年 3 月 8 日
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
2021 年 5 月 16 日
you can use numerical methods to solve schrodinger equations like this for ex. Finite difference method.
参考
カテゴリ
Help Center および File Exchange で Eigenvalue Problems についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!エラーが発生しました
ページに変更が加えられたため、アクションを完了できません。ページを再度読み込み、更新された状態を確認してください。
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- 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)
アジア太平洋地域
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本Japanese (日本語)
- 한국Korean (한국어)