An interesting PDE Log Out | Topics | Search
Moderators | Register | Edit Profile

FlexPDE User's Forum » User Postings » An interesting PDE « Previous Next »

Author Message
Top of pagePrevious messageNext messageBottom of page Link to this message

rplcs (rpl)
New member
Username: rpl

Post Number: 1
Registered: 04-2009
Posted on Friday, April 24, 2009 - 11:48 am:   

I am trying to solve the following PDE

x(1-x)dxx(u)+y(1-y)dyy(u)-2xydxy(u)+(1-x)dx(u)+(1-y)dy(u)=0
over a traingle with vertices (0,0)(1,0)(0,1)
with BC U = x on base of the triangle U =x on diagonal and U =y(1-y)on the height of the triangle.

TITLE 'New Problem'
COORDINATES cartesian2
VARIABLES
u

EQUATIONS
x*(1-x)*dxx(u) +y*(1-y)*dyy(u)-2*x*y*dxy(u)+(1-x)*dx(u)+(1-y)*dy(u)=0

BOUNDARIES
REGION 1
START(0,0)
value(u)=x
LINE TO (1,0)value(u)=x LINE TO (0,1) value(u)=y*(1-y) LINE TO CLOSE

MONITORS
PLOTS
CONTOUR(u)
END

Can anybody please tell me whether this code is correct or not??
Thanks
Top of pagePrevious messageNext messageBottom of page Link to this message

Robert G. Nelson (rgnelson)
Moderator
Username: rgnelson

Post Number: 1249
Registered: 06-2003
Posted on Friday, April 24, 2009 - 02:51 pm:   

If you run the script as you have posed it, it runs to completion and the displayed solution satisfies the imposed boundary conditions. So as far as the requirements of the FlexPDE scripting language, you have correctly posed the problem.

You will see, however, that there are some very sharp transitions in the solution along the axes.
This MAY indicate that the boundary conditions are in conflict with the needs of the PDE, and that a solution that satisfies both the PDE and the boundary conditions does NOT, in fact, exist.

In such cases, the finite element solution process will find a COMPROMISE solution in each cell, one that reduces the AVERAGE error in the cell to less than the prescribed ERRLIM. This does not necessarily imply that an ANALYTIC solution exists.

If you reduce the ERRLIM specified in the script, you will see that FlexPDE continues to refine the mesh along the axes, again indicating a conflict. (You will not be able to do this with the Student version of FlexPDE, because of the limits on the number of mesh nodes.)

You can test the solution process by the following technique:
1) ASSUME a functional form for the solution.
2) Impose boundary conditions that agree with the assumed solution.
3) Manually compute the terms of the PDE and add a source term to the PDE that exactly cancels these derivative terms.
4) Run the script and compare the computed and assumed solutions.
Top of pagePrevious messageNext messageBottom of page Link to this message

rplcs (rpl)
New member
Username: rpl

Post Number: 2
Registered: 04-2009
Posted on Friday, April 24, 2009 - 11:53 pm:   

Thank you very much for your suggestions, Robert.
I dont know much about FEM for PDE as I work on Functional Analysis. But I want to show computationally that the PDE I mentioned has no solutions excepts constants. Can I do that with FlexPDE??

The boundary condition is in fact implicitly given as U(x,0) = U(x,1-x). Can I take BC as I mentioned in the last post?


Thanks again

Top of pagePrevious messageNext messageBottom of page Link to this message

Robert G. Nelson (rgnelson)
Moderator
Username: rgnelson

Post Number: 1250
Registered: 06-2003
Posted on Thursday, April 30, 2009 - 02:05 pm:   

1.
FlexPDE uses automatic techniques to construct a finite element model of the equations you pose in your script. It then finds an approximation that minimizes the error in each cell. The minimum may not be zero, and the approximation may not match an analytic solution, even if such a solution exists. It may find a "solution" even if none exists, because it is merely fitting a polynomial over each mesh cell so that the error is reduced below the given tolerance.

FlexPDE is not an artificial intelligence program. It cannot analyze the stated PDE system in light of the theory of partial differential equations, nor can it enumerate all possible solutions or detect the lack of them.

2.
Your boundary condition could probably be posed as VALUE(U)=EVAL(U,x,1-x), but this leaves open the question of what boundary condition to apply on the diagonal. As you have posed it, the diagonal is specified as VALUE(U)=x. The bottom line is therefore VALUE(U)=x as well, and the EVAL scheme is pointless.
Top of pagePrevious messageNext messageBottom of page Link to this message

rplcs (rpl)
Junior Member
Username: rpl

Post Number: 3
Registered: 04-2009
Posted on Monday, May 18, 2009 - 04:15 am:   

When I run the following script the solution is generated only near the height of the triangle. What does it imply?? Does it imply there is no solution


TITLE 'New Problem'
COORDINATES cartesian2
VARIABLES
u

EQUATIONS
x*(1-x)*dxx(u) +y*(1-y)*dyy(u)-2*x*y*dxy(u)+(14-x)*dx(u)+(1-y)*dy(u)=0

BOUNDARIES
REGION 1
START(0,0)
value(u)=x
LINE TO (1,0)value(u)=x LINE TO (0,1) value(u)=y*(1-y) LINE TO CLOSE

MONITORS
PLOTS
CONTOUR(u)
END



Add Your Message Here
Post:
Username: Posting Information:
This is a private posting area. Only registered users and moderators may post messages here.
Password:
Options: Enable HTML code in message
Automatically activate URLs in message
Action:

Topics | Last Day | Last Week | Tree View | Search | Help/Instructions | Program Credits Administration