Discussion Closed This discussion was created more than 6 months ago and has been closed. To start a new discussion with a link back to this one, click here.
strange boundary condition of "general form PDE "
Posted 17.10.2010, 21:34 GMT-4 8 Replies
Please login with a confirmed email address before reporting spam
I found a strange problem when solve a PDE with "general form".
The setting are:
“gamma”=u
f=2*x
da=0
ea=0
It is a very simple problem and the result should be u=x^2
When I set the boundary condition of "x=1 u=1", correct result can be obtained. However, when I set the boundary condition of "x=0 u=0", the result is oscillating. I considered that the correct result should be obtained only with discretional one of the boundary conditions.
It is so strange, why?
The version of Comsol is 4.0.
youf.
Attachments:
Please login with a confirmed email address before reporting spam
why is it so strange ?
try to change your mesh and see how it changes,
then use linear elements to not have the 2nd order elements
then I would say solve the issue analytically for your r=0 flux= 0 at "1" case and think over it
Your conclusions ...?
--
Good luck
Ivar
Please login with a confirmed email address before reporting spam
Thank you for your help very much!
Then I can not overcome the error.
If I only use the boundary condition of "x=1 u=1", the result is correct. But if I only use the condition of "x=0 u=0", the result is wrong. But the two conditions are equivalent. It is why so strange.
Using the condition "x=0 u=0", change the mesh, the result oscillate still.
I think I already used the linear elements.
strange!
youf.
Please login with a confirmed email address before reporting spam
my conclusions are rather that these BC are NOT equivalent and that the second one "oscilalting" is not a clean BVP, there are probably 2 solutions that COMSOL cannot choose from, alone, check it out by hand
Always ask yourself if the BVP is correct when you see "oscillations" related to the mesh, it's most likely that you have two solutions, or just that you have missed one of your BC conditions
--
Good luck
Ivar
Please login with a confirmed email address before reporting spam
Thank you very much!
I understund your advice entirely. I will try again.
youf.
Please login with a confirmed email address before reporting spam
I still not understand the Comsol' computing principle.
I change the parameters of my model. I am using the "general form PDE" and the BC is "Birichlet Boundary condition" with V4.0.
The equation is "du/dx=2*x", the boundary condition is "when x=1, u=1" x(-[1,2]. What I want is only obtain the final result "u=x^2". The result is very obvious and the principle is very simple.
However, the result is oscillating. In your opinion, the BC is error. So I change the BC to "when x=1, u=-3", it just stop oscillating but the final result change to "u=x^2-4". The result is not what I want. Alike, only set BC of "when x=2, u=3", it will stop oscillating and the final result turn to "u=x^2-1", which is not what I want neither.
So my conclusion is that the "computing region", such as x(-[1,2], and the point, which is choosed to be boundary, are very important. Because they directly determine the final result.
So, it is no way to solve the problem of "The equation is "du/dx=2*x", the boundary condition is "when x=1, u=1" x(-[1,2]" with Comsol. Because the reslut is oscillating, which means the BC is error. But if change the BVP to stop oscillatation, the result is not what I want. In fact, we can got the "u=x^2" by hand in faith.
contradiction.
Then how to solve the problem?
what's your opinion?
Thank you very much!
youf.
Attachments:
Please login with a confirmed email address before reporting spam
Arent you mixing a little point 1 and point 2 at coordinates x=1 and x=2 respectively ?
If you as for du/dx=2*x the reply is obviously u=x^2+C but C is to be defined by a boundary condition
if you say at x=2 Dirichelet BC u=3 then C must be =-1 and at x=1 u=0
if you say at x=2 Dirichelet BC u=-3 then C must be =-7 or +5 as at x=1 u!=0=+/-6
In the PDE (g) node set the discretisation to lagrange LINEAR to see better
I believe you are forgetting the other "Zero Flux" condition on "1"
Try to plot the limit curves and the first derivative "ux" too
--
Good luck
Ivar
Please login with a confirmed email address before reporting spam
Thank your for your patient guidance this days very much!
I am sure that my negligence is forgetting the "Zero Flux" condition. However, I think the conditon is needless but can not be deleted. By this time, I can not got the entitative meaning of the special condition which can not be refered from my books. Can you give some threads of the "Zero Flux" condition? Thank you.
youf.
Please login with a confirmed email address before reporting spam
I has understood the meaning of "Zero flux" by try and try agian. Explained simply, "Zero flux" is a confine conditon which restrict "gamma" must be zero at the poiont which is not be defined (not be shadowed) by "Dirichlet condition" or other boudary condition.
Thank you for your nice advices.
youf.
Note that while COMSOL employees may participate in the discussion forum, COMSOL® software users who are on-subscription should submit their questions via the Support Center for a more comprehensive response from the Technical Support team.
Suggested Content
- BLOG How to Implement the Weak Form for Time-Dependent Equations
- KNOWLEDGE BASE How do I solve a PDE with space derivatives of order higher than two?
- KNOWLEDGE BASE Improving Convergence of Transient Models
- KNOWLEDGE BASE Avoiding Negative Concentrations
- FORUM strange result on static analysis