CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Programming & Development

Looking for paper "Implementation of level set method ..." by Bitan Shu, et al

Register Blogs Community New Posts Updated Threads Search

Like Tree1Likes

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   August 2, 2015, 02:39
Default
  #41
Senior Member
 
Freedom
Join Date: May 2014
Posts: 209
Rep Power: 12
wenxu is on a distinguished road
Dear, Matteo

I also have the same questions as you. Have you solved your problem now? Could you give me some hints?

Regards,
Wen
wenxu is offline   Reply With Quote

Old   August 2, 2015, 11:33
Default
  #42
New Member
 
Mostafa Mobli
Join Date: Feb 2015
Posts: 8
Rep Power: 11
moblimostafa is on a distinguished road
Quote:
Originally Posted by wenxu View Post
Could you tell me how you reinitialize the level set field?

regards,
Wen
Hi Wen

I am using the method used by bitan shu in his paper.

Bests
Mostafa
moblimostafa is offline   Reply With Quote

Old   August 2, 2015, 21:06
Default
  #43
Senior Member
 
Freedom
Join Date: May 2014
Posts: 209
Rep Power: 12
wenxu is on a distinguished road
Dear Mostafa,

Thank you for your reply. I want to know how you implement this into OF.

Do you solve Eq. (10) directly or to solve equation (13) which is the discrete form? If you iterate the discrete form, how do you implement the equation (11) and (12)?

Could you speak more specifically? Thank you in advance!

Best.
Wen
wenxu is offline   Reply With Quote

Old   August 3, 2015, 08:42
Default
  #44
Senior Member
 
Freedom
Join Date: May 2014
Posts: 209
Rep Power: 12
wenxu is on a distinguished road
Quote:
Originally Posted by wenxu View Post
Dear Mostafa,

Thank you for your reply. I want to know how you implement this into OF.

Do you solve Eq. (10) directly or to solve equation (13) which is the discrete form? If you iterate the discrete form, how do you implement the equation (11) and (12)?

Could you speak more specifically? Thank you in advance!

Best.
Wen
So no one help me? Do anyone know how to reinitialize the level set field?
wenxu is offline   Reply With Quote

Old   August 3, 2015, 11:35
Default
  #45
New Member
 
Mostafa Mobli
Join Date: Feb 2015
Posts: 8
Rep Power: 11
moblimostafa is on a distinguished road
Quote:
Originally Posted by wenxu View Post
Dear Mostafa,

Thank you for your reply. I want to know how you implement this into OF.

Do you solve Eq. (10) directly or to solve equation (13) which is the discrete form? If you iterate the discrete form, how do you implement the equation (11) and (12)?

Could you speak more specifically? Thank you in advance!

Best.
Wen

Dear Wen

Actually I have used equation 13 for the reinitialization. To calculate the Goundav coefficient you can refer to this repository:

https://github.com/suhasjains/OpenFOAM

I have followed the same procedure and my code is running but there is no reasonable result yet. Right now I am dealing with calculation of Psi fluxes. I don't know whether it should something calculation of phiAlpha in interFoam or not?

Bests
Mostafa
moblimostafa is offline   Reply With Quote

Old   August 3, 2015, 20:42
Default
  #46
Senior Member
 
Freedom
Join Date: May 2014
Posts: 209
Rep Power: 12
wenxu is on a distinguished road
Thank you for your reply,Mostafa !

I also know that there is a open source ( LSMLIB ) of the level set library.

regards,
Wen

Last edited by wenxu; August 3, 2015 at 22:55.
wenxu is offline   Reply With Quote

Old   August 3, 2015, 23:02
Default
  #47
Senior Member
 
Freedom
Join Date: May 2014
Posts: 209
Rep Power: 12
wenxu is on a distinguished road
Dear Mostafa,

I have looked into the Goundav coefficient you can refer to. But there are some details I cannot understand.
Quote:
//Differential Coefficients
if((i+xy)<xyz) t=(psi[i+xy]-psi[i])/zDim; //top differential

if((i-xy)>=0) b=(psi[i]-psi[i-xy])/zDim; //bottom differential

if((i-1)>=0) l=(psi[i]-psi[i-1])/xDim; //left differential

if((i+1)<xyz) r=(psi[i+1]-psi[i])/xDim; //right differential

if((i-x)>=0) s=(psi[i]-psi[i-x])/yDim; //south differential

if((i+x)<xyz) n=(psi[i+x]-psi[i])/yDim; //north differential
In my opinion, the upwind scheme should be applied to neighbour cells. However, the differential calculated here is not the normal upwind scheme, the deltax,deltay,deltaz is the the value of the whole domain, but not the cell width. Furthermore, I do not understand why he use the number of cells along the different directions here (x, y,z)?

regards,
Wen
wenxu is offline   Reply With Quote

Old   August 7, 2015, 05:20
Default
  #48
Senior Member
 
Freedom
Join Date: May 2014
Posts: 209
Rep Power: 12
wenxu is on a distinguished road
Dear everybody on this thread.

I do not know anyone has successfully implement level set into OF. But I found that the discrete form (Equation 11) of the reinitialization equation in Shu's paper is not correct!!! He just directly follows Sussman's paper of equation 29.

Because the discrete form of the reinialization equation in the reference paper (Sussman et al 1994) is based on FDM with structured mesh. However, it is not the same thing in OF, since in OF every mesh can have many faces. That means the sign distance function can not be simply discritized like that.

If I am wrong, please correct me!

Regards,
Wen
wenxu is offline   Reply With Quote

Old   August 7, 2015, 10:02
Default
  #49
New Member
 
Mostafa Mobli
Join Date: Feb 2015
Posts: 8
Rep Power: 11
moblimostafa is on a distinguished road
Quote:
Originally Posted by wenxu View Post
Dear Mostafa,

I have looked into the Goundav coefficient you can refer to. But there are some details I cannot understand.

In my opinion, the upwind scheme should be applied to neighbour cells. However, the differential calculated here is not the normal upwind scheme, the deltax,deltay,deltaz is the the value of the whole domain, but not the cell width. Furthermore, I do not understand why he use the number of cells along the different directions here (x, y,z)?

regards,
Wen
Dear Wen

Sorry for the late reply, As far as I understand this code is re meshing the domain and solve and reinitialize the level set in defined mesh of its own and I think as long as you use a uniform structured mesh this method should work, ( at leastworks for me).
Also why should the deltax, deltay and deltaz values refer to whole domain instead of mesh step size?

You can also solve the equation by writing these few lines of code:
for (int corr=0; corr<nCorr; corr++)
{
psi = psi + sign(phi0)*(1)-mag(fvc::grad(psi)*dimChange))*deltaTau;
}
this also worked for me, when using CLSVOF method.




Bests
Mostafa
moblimostafa is offline   Reply With Quote

Old   August 7, 2015, 10:20
Default
  #50
Senior Member
 
Freedom
Join Date: May 2014
Posts: 209
Rep Power: 12
wenxu is on a distinguished road
Sorry, first I misunderstand the author's opinion. Now I almost understand it. But how to define the number of cells in three directions? That means how to set values to x, y and z? Also I do no fully understand six "if statements"....What the meaning of them?

Quote:
psi = psi + sign(phi0)*(scalar(1)-mag(fvc::grad(psi)*dimChange))*deltaTau;
Now I can not judge whether this equation will work for me. But I am relative sure the equation (Eq.11) in Shu's paper can not be directly used in OF.

Thank you for your reply. Many thanks.

Best,
Wen
wenxu is offline   Reply With Quote

Old   August 7, 2015, 11:01
Default
  #51
Senior Member
 
Freedom
Join Date: May 2014
Posts: 209
Rep Power: 12
wenxu is on a distinguished road
Also how to set the number of correction steps nCorr to ensure that the solution will be converged.
wenxu is offline   Reply With Quote

Old   August 20, 2015, 17:31
Default Open source of LS
  #52
New Member
 
Zhilong Liu
Join Date: Jul 2015
Posts: 1
Rep Power: 0
Zhilong Liu is on a distinguished road
Quote:
Originally Posted by wenxu View Post
Also how to set the number of correction steps nCorr to ensure that the solution will be converged.
Dear Wen Xu

My name is Zhilong Liu, a doctoral student working on CFD with OpenFOAM.
I would like to inquire that is there any open source code or OpenFOAM solver of Level set Method.

Thank you very much.

Regards.

Zhilong
Zhilong Liu is offline   Reply With Quote

Old   September 2, 2015, 07:21
Default
  #53
Senior Member
 
Freedom
Join Date: May 2014
Posts: 209
Rep Power: 12
wenxu is on a distinguished road
In OF, the VOF solver is available. I do not know any other open source with the level set solver. But you will see that someone has implemented the level set into OF.

Best,
Wen
wenxu is offline   Reply With Quote

Old   September 25, 2015, 04:55
Default
  #54
New Member
 
Join Date: Aug 2015
Posts: 8
Rep Power: 10
inginheiro is on a distinguished road
Quote:
Originally Posted by wenxu View Post
Also how to set the number of correction steps nCorr to ensure that the solution will be converged.
I'm facing now the same problem. Did you work further on the LS?
As far as I understood the LS-method, the number of correction steps shouldn't mather that much. mag(Grad(psi)) should be 1 wether you have 10 or 1000 nCorr. Or am I missing something?
inginheiro is offline   Reply With Quote

Old   September 25, 2015, 06:50
Default
  #55
Senior Member
 
Freedom
Join Date: May 2014
Posts: 209
Rep Power: 12
wenxu is on a distinguished road
Only when the PDE get a converged solution, the distance function can be almost achieved.

I use the LS method to simulate the premixed flame based on flamelet model. It is very complicated, Now the code is going on validation.

I follow this paper to achieve the reinitialization:Setting and Usage of OpenFOAM multiphase solver(S-‐‐‒CLSVOF)


Best regards,
Wen
wenxu is offline   Reply With Quote

Old   September 25, 2015, 07:34
Default
  #56
New Member
 
Join Date: Aug 2015
Posts: 8
Rep Power: 10
inginheiro is on a distinguished road
thanks for your answer.

I'm following the same paper and using it for simulation of coallescing drops. Wich criteria are you using for the nCorr?

is it something like (as described in the paper):

corr<int(interfacePsi.epsilon().value()/interfacePsi.deltaTau().value())


In my case, I actually get better results by dividing the the upper value by 3. (increasing nCorr causes me a weird solution near the contactAngle boundary).
inginheiro is offline   Reply With Quote

Old   September 25, 2015, 21:14
Default
  #57
Senior Member
 
Freedom
Join Date: May 2014
Posts: 209
Rep Power: 12
wenxu is on a distinguished road
You can use that criteria in clsvofSolver, but to my knowledge, this value is not very large (2 to 3 is OK). So, I think you use 3 has no problem. (One of my college use 2 as nCorr).

Best regards,
Wen
wenxu is offline   Reply With Quote

Old   October 28, 2015, 08:21
Default
  #58
Senior Member
 
Freedom
Join Date: May 2014
Posts: 209
Rep Power: 12
wenxu is on a distinguished road
Quote:
Originally Posted by inginheiro View Post
thanks for your answer.

I'm following the same paper and using it for simulation of coallescing drops. Wich criteria are you using for the nCorr?

is it something like (as described in the paper):

corr<int(interfacePsi.epsilon().value()/interfacePsi.deltaTau().value())


In my case, I actually get better results by dividing the the upper value by 3. (increasing nCorr causes me a weird solution near the contactAngle boundary).
Now I also want to know why we use larger value of corrector then the solution become weird while the smaller one works. Have you solved it?

Best
wenxu is offline   Reply With Quote

Old   November 2, 2015, 07:15
Default
  #59
New Member
 
Join Date: Aug 2015
Posts: 8
Rep Power: 10
inginheiro is on a distinguished road
I had a formulation error (my fault). The nCorr condition from the paper works fine.

Im validating the solver with a droplet oscillation case. The oscillation frequency is nearly perfect but the pressure isn't.
Still working on it.

Edit: Im using a cAlpha of 1.5 (against 0.25 for VOF)

Cheers
inginheiro is offline   Reply With Quote

Old   January 14, 2016, 14:25
Default paper
  #60
New Member
 
Join Date: Apr 2015
Posts: 2
Rep Power: 0
Mosayeb is on a distinguished road
Hi everyone!

Could you please email me this paper:
Implementation of level set method based on OpenFOAM for Capturing the free interface in incompressible fluid flows

my email: mashpot139@gmail.com

thanks
Mosayeb is offline   Reply With Quote

Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
setting of level set method as initial condition sooroo3 FLUENT 4 July 31, 2018 04:20
calculating Normal vector in level set method amir2920 Main CFD Forum 1 July 21, 2009 07:25
Level set vs VOF steve Main CFD Forum 11 September 16, 2008 00:22
level set for multi-fluids system? Pei-Ying Hsieh Main CFD Forum 1 July 19, 2000 16:42
level set method with TVD scheme? zhanglei Main CFD Forum 1 April 25, 2000 14:01


All times are GMT -4. The time now is 15:40.