|
[Sponsors] |
September 20, 2021, 08:21 |
A question about Immersed Boundary Method
|
#1 |
Senior Member
mohammad
Join Date: Sep 2015
Posts: 274
Rep Power: 11 |
Hi Everyone,
I have a question about immersed boundary method. As you know, IBM tries to solve Navier-Stokes equation using a Cartesian grid. So why we have something like the attached image for pressure field, even with non-zero values inside the rigid object? i should mention that the image is showing the motion of particle. Cheers, Mohammad |
|
September 20, 2021, 12:05 |
|
#2 | |
Senior Member
Filippo Maria Denaro
Join Date: Jul 2010
Posts: 6,768
Rep Power: 71 |
Quote:
There are cases where the elastic membrane is closed around a fluid, a further grid refinement is performed, too. Thus, you have a flow field outside and inside. |
||
September 20, 2021, 12:33 |
|
#3 |
Senior Member
|
Point is that the IBM actually exists in many flavors and nuances. A very common approach, as you can imagine (bacause of its implicity, etc.) is based on having the fields, and sometimes solving them, on the whole grid, including parts where they are, ideally, meaningless.
However, there are also approaches that completely discard those parts and treat the remaining grid as an unstructured one with more complex boundary conditions. What you have in the image is kind of a mixture of approaches, which might or not depend from what the scope is. They have an unstructured grid, but somehow they keep the whole grid. Of course,as we don't see the immersed boundary here, we are just trusting you on your interpretation of the picture |
|
September 20, 2021, 19:14 |
|
#4 | |
Senior Member
mohammad
Join Date: Sep 2015
Posts: 274
Rep Power: 11 |
Quote:
Thank you for your reply. Of course this is immersed boundary method but a special version of it which is called Fictitious Domain. The idea is: 1- Solving Navier-Stokes equations in entire domain, regardless the domain is related to fluid or solid object. 2- Imposing solid object velocity in the previously obtained domain, 3- Correct the pressure and velocity fields to make the solution divergence-free, using Poisson equation, because of the violation in continuity in second step. This idea was proposed by Shirgaonkar & Patankar(2009). The solver works very well well for Newtonian fluid. However, when I look at pressure field, because of the corrections, we have some non-Zero values inside the solid. Why? |
||
September 20, 2021, 19:17 |
|
#5 | |
Senior Member
mohammad
Join Date: Sep 2015
Posts: 274
Rep Power: 11 |
Quote:
Thank you for your reply, Indeed, the refinement is just because of a dynamic refinement using void fraction field. The result is the outcome of immersed boundary method but a special version of it which is called Fictitious Domain. The idea is: 1- Solving Navier-Stokes equations in entire domain, regardless the domain is related to fluid or solid object. 2- Imposing solid object velocity in the previously obtained domain, 3- Correct the pressure and velocity fields to make the solution divergence-free, using Poisson equation, because of the violation in continuity in second step. This idea was proposed by Shirgaonkar & Patankar(2009). The solver works very well well for Newtonian fluid. However, when I look at pressure field, because of the corrections, we have some non-Zero values inside the solid. Why? |
||
September 20, 2021, 19:35 |
|
#6 | |
Senior Member
|
Quote:
As you said, pressure is solved everywhere in order to enforce the divergence free constraint on the velocity, which is fixed in the body. Not an expert on the specific method but, unless something specific is done in the solid after solving for the pressure, I expect that what is done outside the body and across the boundary to enforce the soleinodal velocity field also influences the pressure solution in the body, as the equation is elliptic |
||
September 21, 2021, 00:16 |
|
#7 | |
Senior Member
mohammad
Join Date: Sep 2015
Posts: 274
Rep Power: 11 |
Quote:
I expect the pressure to be zero because I need to enforce a high viscosity value for inside the solid domain. Indeed, the solid object to be actually an object. Therefore, when I enforce high viscosity inside the solid object, because of having a pressure field inside the object, the pressure messes up. |
||
September 21, 2021, 02:46 |
|
#8 | |
Senior Member
Filippo Maria Denaro
Join Date: Jul 2010
Posts: 6,768
Rep Power: 71 |
Quote:
Why are you supposing that a different viscosity needs to be prescribed inside the object??? It is the pressure field inside the object that mimics the effect of the force opposing to the fluid pressure normal to the wall. The issue could be in the resulting tangential component of the velocity that approximates the physical no-slip condition. |
||
September 21, 2021, 02:55 |
|
#9 | |
Senior Member
mohammad
Join Date: Sep 2015
Posts: 274
Rep Power: 11 |
Quote:
OK, you mean the pressure inside the particle mimics the force on the particle. Is it right? I need to have the particle high viscosity inside the particle as I want to change my simulation to Non-Newtonian Herschel-Bulkley model. Therefore, in the computational domain the viscosity is calculated based on strain rate. So for the inside the particle, because of having constant particle velocity, the viscosity needs to be high. Is this correct? What do you mean by "resulting tangential component of the velocity that approximates the physical no-slip condition"? |
||
September 21, 2021, 04:07 |
|
#10 |
Senior Member
|
I think we need to be clear about what you actually want to know.
If you have doubts that something might be wrong in the code you are using, then I think I can't be of much help. Otherwise, to me, it's not that surprising that your pressure field within the body is non 0, even if you assing a very high viscosity. Actually, if you look into VOF literature (to which your IBM is very closely connected), I think you will find most of the answers you need |
|
September 21, 2021, 04:35 |
|
#11 | |
Senior Member
mohammad
Join Date: Sep 2015
Posts: 274
Rep Power: 11 |
Quote:
No. The code works very well for Newtonian case. The problem is that the final result at the end of time step seems to have non-Zero value inside the solid object. Now, I want to turn the code into a Non-Newtonian Herschel-Bulkley fluid, which obtains the viscosity based on strain rate. Therefore, I can't impose high viscosity value inside the particle because it violates the pressure field inside the solid object. The question is that why we should have a non-zero pressure field inside the solid object for Newtonian simulation and still getting some reasonable results for drag value? Cheers, Mohammad |
||
September 21, 2021, 04:58 |
|
#12 | |||
Senior Member
|
Quote:
Note that this is different from saying: "this purely fictitious pressure field, that for some obscure reason I decided to solve in any case, is now messing up with my solution outside the body". This is part of the IBM you picked up. Also, "works very well" means nothing to me. Has this code been verified to respect its formal accuracy? On which case? Quote:
I stress, again, that I don't see why such non 0 value would be an issue per se. What sort of problems does it cause or you think will it cause? Not clear to me. Quote:
Do you have a reference for the method you are using? Otherwise I think we're not going anywhere here. Indeed, consider how far we are here from your original question above. |
||||
September 21, 2021, 05:10 |
|
#13 |
Senior Member
|
Ok, I probably start to understand what you mean, so let me see if I can rephrase things to clear everything up:
1) You are using this IBM code for a Newtonian fluid. So far so good. You impressed by pressure not 0 in the body. 2) You started modifying this code to work with a non-newtonian fluid, whose viscosity is dependent from the velocity gradient. Code doesn't work. You decided it's pressure fault, as it is not 0 in the body. You want to know how to solve this. First of all, do you have references where this has been done already? If you have them, this might either be a coding problem or a reference problem. If you don't, this is not going to be solved over a post or two here. We can help you to decide if this is a reference problem (once you cite it here) or a coding problem. If it is a coding problem we can also help solving it, somehow. For example, adding a non-netwonian viscosity to an otherwise newtonian code is something to be done very carefully by someone who knows the code well. Because it potentially changes the code workflow as a whole (i.e., viscosity not anymore available until you have velocity gradients) |
|
September 21, 2021, 05:13 |
|
#14 | |
Senior Member
mohammad
Join Date: Sep 2015
Posts: 274
Rep Power: 11 |
Quote:
Thank you Paolo for your response. However, I think you don't want to hear what I am saying. You just want to have a nitpicking manner on my sentences. I can share with you this reference: https://www.cfdem.com/resolved-cfd-d...ersed-boundary if you want find out more about the solver. My question is clear. why in this immersed boundary (or fictitious domain) method, the pressure has a value inside the solid object? Then this pressure value is affecting drag value over solid object. |
||
September 21, 2021, 05:30 |
|
#15 | |
Senior Member
mohammad
Join Date: Sep 2015
Posts: 274
Rep Power: 11 |
Quote:
Ok. Thank you for your kind response. No I don't have actually a reference for Herschel-Bulkley fluid using this solver. There are lots of Newtonian references and also viscoelastic non-Newtonian papers using this method. https://www.cfdem.com/featured-work But not for viscoplastic Herschel-Bulkley model. However, I think it should work as I am changing the viscosity to a strain-rate dependent model. The original solver assumes the constant fluid viscosity for entire domain when it wants to solve NSE. Then it imposes the solid object velocity in the previously solved velocity fields. Then for making the field divergence-free, it solves a Poisson equation and modifies both velocity and pressure field, specifically around the solid object. Finally, the calculated pressure and velocity fields are used to find the drag force and position/velocity of the particle (from Newton's law) for the next timestep. Now, I need to change the viscosity in domain based on Herschel-Bulkley model. What should I do? So in first step, NSE calculation, I should have a varying viscosity field based on strain-rate. Now I can't say the viscosity can be constant even in particle domain. So what can I do for particle? I should consider a high viscosity value because of low strain rate. So I have: 1- Solving NSE in entire domain but with varying viscosity (here the viscosity inside the particle cannot be constant, should be based on low strain rate) 2-Imposing particle velocity. 3-Doing the correction in pressure and velocity field for having a divergence-free solution. 4- Calculating drag forces on particle. Giving them to Newton's equation for finding new position/velocity of solid object. But this gives me some incorrect pressure field and wrong drag force. This is making me crazy. I will be so happy if I can provide for you more information. |
||
September 21, 2021, 05:31 |
|
#16 | |
Senior Member
|
Quote:
Is it good or bad? Depends. The scenario where it is used, particles, really has no other choice. This is the best you can get, honestly, if you want to resolve moving particles. But, in general, there are much better IB choices, waaayyyy better than this. Is this specific implementation you are using good or not? I have no idea. I would tipically call bullshit on openfoam itself, but commercial products on top of OpenFOAM? Let's say I'm not a fan. Still, their reference section has some sort of works that used it for non-newtonian cases. But it seems that part of the work was indeed the code, so maybe it isn't straighforward as you imagine. I think you have better chances by directly asking in the OpenFOAM forums, and you should have mentioned this code from the very beginning. |
||
September 21, 2021, 05:35 |
|
#17 | |
Senior Member
mohammad
Join Date: Sep 2015
Posts: 274
Rep Power: 11 |
Quote:
Everyone just ignores me mate. I have posted several times but they only want to find OpenFoam problem. Here My question is about algorithm. They don't understand what algorithm says! |
||
September 21, 2021, 05:35 |
|
#18 | |
Senior Member
|
Quote:
|
||
September 21, 2021, 05:38 |
|
#19 | |
Senior Member
mohammad
Join Date: Sep 2015
Posts: 274
Rep Power: 11 |
Quote:
So can you answer a question about algorithm? The algorithm is talking about constant viscosity assumption, even in particle region, for NSE calculation? Does having viscosity-varying for NSE calculation make any fundamental change to our algorithm? |
||
September 21, 2021, 05:39 |
|
#20 |
Senior Member
|
Ok, I see... the only suggestion I have, for now, is to first try to replicate some work that is as close as possible to what you want. Then from there try to move in your direction one step at the time.
|
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
sliding mesh problem in CFX | Saima | CFX | 46 | September 11, 2021 07:38 |
UDF for Automatic Solution Initialization for previous case data file | gartz89 | Fluent UDF and Scheme Programming | 6 | March 30, 2020 07:38 |
CFD analaysis of Pelton turbine | amodpanthee | CFX | 31 | April 19, 2018 18:02 |
Centrifugal fan-reverse flow in outlet lesds to a mass in flow field | xiexing | CFX | 3 | March 29, 2017 10:00 |
Question about heat transfer coefficient setting for CFX | Anna Tian | CFX | 1 | June 16, 2013 06:28 |