이 질문을 팔로우합니다.
- 팔로우하는 게시물 피드에서 업데이트를 확인할 수 있습니다.
- 정보 수신 기본 설정에 따라 이메일을 받을 수 있습니다.
Is there a tutorial in MATLAB for solving a radial PDE ?
조회 수: 5 (최근 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!오류 발생
페이지가 변경되었기 때문에 동작을 완료할 수 없습니다. 업데이트된 상태를 보려면 페이지를 다시 불러오십시오.
웹사이트 선택
번역된 콘텐츠를 보고 지역별 이벤트와 혜택을 살펴보려면 웹사이트를 선택하십시오. 현재 계신 지역에 따라 다음 웹사이트를 권장합니다:
또한 다음 목록에서 웹사이트를 선택하실 수도 있습니다.
사이트 성능 최적화 방법
최고의 사이트 성능을 위해 중국 사이트(중국어 또는 영어)를 선택하십시오. 현재 계신 지역에서는 다른 국가의 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 (한국어)