|
[Sponsors] |
Specifying BC for LES simulation of pollutant dispersion problem in environment |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
March 2, 2018, 05:43 |
Specifying BC for LES simulation of pollutant dispersion problem in environment
|
#1 |
New Member
Josip Žužul
Join Date: Sep 2016
Location: Genova, Italy
Posts: 4
Rep Power: 10 |
Dear Foamers, I was looking all over the forum for a similar thread but I couldn't find anything, so I decided to open the new one. Since this is my first thread, I hope I followed all the forum rules
I am dealing with the environmental problem of pollutant dispersion from the chimney over the complex residential area. Since the unsteadiness is a key factor here, the problem is going to be investigated within LES approach in OpenFOAM. My domain is a big box with complex geometry (industrial zone, buildings, hills...) and has dimensions of 1500x1000x600m. The solver in use is a slightly modified buoyantBoussinesqPimpleFoam (operating in PISO mode) with additional transport equation for the pollutant. In order to get the "most realistic" results, the idea is to use the so-called nesting procedure, where another software (that is considered standard in meteorological forecasts and dispersion problems) is used for providing velocity field on each side of the domain in different time steps of a simulation. NOTE: OpenFOAM is not coupled with the other software; it is only used for pre-calculation of velocity field that is supposed to be used as a boundary condition. The problem which I encounter is related to boundary conditions. According to the abovementioned nesting procedure, I have known velocity profiles (a function of space and time) on my inlet, outlet and lateral sides. Another thing worth mentioning is that inlet will with time become an outlet, and outlet will become an inlet respectively. Therefore the only way I could eventually attack this problem (according to my knowledge) is by using the timeVaryingMappedFixedValue boundary condition on each boundary that maps and interpolates velocities in space and time according to specified data in constant/boundaryData folder for different time steps. Velocity boundary condition on the top boundary I assume to be the slip BC. On the top of this velocity field, turbulence is going to be triggered by using some filters in a buffer zone to satisfy turbulent inflow requirement for LES simulation. According to my previous experience with OpenFOAM and CFD in general, I am having doubts and I am not sure about the specification of velocity at the outlet. But on the other hand, since I have outlets changing in time due to changing wind conditions, I do not have any other idea. If I take this approach, my main issue is: how should I set boundary conditions for pressure? Or to be more clear: how to set pressure to be consistent with specified velocities on all the boundaries of the domain? I am aware that this question might not be completely OpenFOAM-related but also related to CFD in general. Therefore I hope that I haven't posted the question in the wrong sub-forum. If anyone has any experience, idea, or suggestion and would like to share it, I would highly appreciate it. Best Regards, Josip Last edited by jzuzul; March 2, 2018 at 07:31. |
|
March 2, 2018, 07:05 |
|
#2 |
Senior Member
Uwe Pilz
Join Date: Feb 2017
Location: Leipzig, Germany
Posts: 744
Rep Power: 15 |
I don't think that you need a solver in closer sense, because you still have the volocity field. What you need is to follow the path of probes which are emitted at the places where you your pollutant expect.
__________________
Uwe Pilz -- Die der Hauptbewegung überlagerte Schwankungsbewegung ist in ihren Einzelheiten so hoffnungslos kompliziert, daß ihre theoretische Berechnung aussichtslos erscheint. (Hermann Schlichting, 1950) |
|
March 2, 2018, 08:48 |
|
#3 | ||
New Member
Josip Žužul
Join Date: Sep 2016
Location: Genova, Italy
Posts: 4
Rep Power: 10 |
Dear Uwe Pilz, first of all, thank you for the interest in the topic.
Can you please elaborate a little bit closer your statement? Because I don't understand what is your point. Quote:
Quote:
The main issue here is related to setting up boundary conditions, where as far as I know, I can use only Dirichlet boundary condition type (timeVaryingMappedFixedValue) on my domain sides in the present case. So far I have tried with mapped velocities on the inlet, outlet and side boundaries on a much simpler test case with specifying pressure (fixedValue 0) at the top boundary (where slip BC has been set for velocity), but my pressure field is not satisfactory. Therefore any help regarding setting up pressure BC, or any new idea for tackling this problem would be very appreciated. Regards, Josip Last edited by jzuzul; March 2, 2018 at 16:33. |
|||
March 2, 2018, 16:26 |
|
#4 |
Senior Member
Uwe Pilz
Join Date: Feb 2017
Location: Leipzig, Germany
Posts: 744
Rep Power: 15 |
Sorry, I did not understand your first post to full extend.
In that case my approach cannot be applied. You may use time dependant boundary conditions, which are available in OF. But I don't recommend to give the velocity at all inlets/outlets. You may get problems with the conservation of mass. I would leave at least one outlet open. You may track the velocity there and check whether ist is more or less what you expect.
__________________
Uwe Pilz -- Die der Hauptbewegung überlagerte Schwankungsbewegung ist in ihren Einzelheiten so hoffnungslos kompliziert, daß ihre theoretische Berechnung aussichtslos erscheint. (Hermann Schlichting, 1950) |
|
March 2, 2018, 17:59 |
|
#5 |
New Member
Josip Žužul
Join Date: Sep 2016
Location: Genova, Italy
Posts: 4
Rep Power: 10 |
Dear Uwe,
the boundary condition that I previously mentioned (timeVaryingMappedFixedValue) is a time-dependent BC I absolutely agree with you that it is not a recommended procedure to set velocities at all inlets and outlets due to mass conservation problems, and that is the main issue addressed in the opening post and main reason why I opened this thread. Regarding the suggestion of leaving one side patch boundary as an open boundary and monitor velocities - well, it is a fair suggestion. I will definitely try with this approach but I am not very optimistic, nor sure how to choose the boundary which I'll set as the open one. As I mentioned previously, I do not have a patch that is considered as a let say standard "outlet" patch. I have 4 side boundaries which will behave like both inlets and outlets depending on the current simulation time under consideration. And yeah, I am also aware that the velocity profiles that I would set in this way could also impose mass imbalance in the system so it would be beneficial to have an open boundary. I was considering opening a top boundary which is far away from my region of interest and setting a reference pressure there. What is your opinion about taking this approach instead? Regards, Josip |
|
March 2, 2018, 20:46 |
|
#6 |
Senior Member
Abe
Join Date: May 2016
Posts: 119
Rep Power: 10 |
Hey Josip,
This paper uses RANS, but it might help you with the boundary conditions to get some preliminary runs done with easier boundary conditions: D. M. Hargreaves and N. G. Wright, “On the use of the k-ε model in commercial CFD software to model the neutral atmospheric boundary layer,” Journal of Wind Engineering and Industrial Aerodynamics, vol. 95, no. 5, pp. 355–369, 2007. Seems like you can get away with fixed pressure at the boundaries - any openings at the top sound bad from an atmospheric science perspective. You might check out the #codestream capabilities too. I don't know if you can map with it, but it is pretty useful in general. Here is a good tutorial: https://wiki.openfoam.com/Programming1 Hope it helps a little... |
|
March 4, 2018, 11:53 |
|
#7 | |||
New Member
Josip Žužul
Join Date: Sep 2016
Location: Genova, Italy
Posts: 4
Rep Power: 10 |
Quote:
thank you for recommending me this paper, which I think was very useful. After reading this paper, I can stress out the following: Hargreaves (and Richards & Hoxey as well) highly recommend using of constant shear stress BC at the top boundary instead of the slip BC, because otherwise ABL will not be maintained. There is an appropriate boundary condition called fixedShearStress implemented in OpenFOAM but I still haven't tested it, but I will for sure. According to the description in its .H file: "Set a constant shear stress as tau0 = -nuEff dU/dn", I think that there should be no problem with prescribing it to the top boundary of LES case since it uses nuEff. But I have no idea which value to set for a constant shear, neither I am sure is it physical to set constant shear in my case where I have varying wind conditions. Additionally, in this paper author uses pressure outlet BC in Fluent (which is I assume equivalent to specifying fixedValue in OpenFOAM) because there is one single and obvious outlet patch. Apparently, this is not going to be the case in my example. Hargreaves also uses steady-state k-epsilon turbulence model, while I intend to use LES with dynamic Lagrangian averaging. I already have results of some preliminary simulations with simplified boundary conditions like setting a pressure fixed at the outlet and flow going in one direction, and this works okay. But I have to move on. Somehow... The purpose of this paper was to clarify boundary condition settings for maintaining of ABL while using k-epsilon turbulence model. My question is: is using this fixedShearStress BC a general approach for maintaining ABL or k-epsilon/RANS-specific? Quote:
But how do you mean with fixed pressure at the boundaries? And which boundary in my case to be more specific? I don't want to specify both the pressure and the velocity on the same boundary... Quote:
Regards, Josip |
||||
March 5, 2018, 18:15 |
|
#8 |
Senior Member
Abe
Join Date: May 2016
Posts: 119
Rep Power: 10 |
Yes, I think that given the scale of your problem the treatment of the top boundary will be pretty significant. People still do atmospheric science modeling in wind tunnels, and those have no-slip boundaries - I think it is a deceptively complicated issue. It is an issue of physics though, so I think you should consider the effect no matter what turbulence model you use (hence the geostrophic argument in the paper, regional pressure systems drive the planetary boundary layer from shear above and the side boundaries). Though I am not sure that you want the constant shear boundary condition. I interpreted their argument to mean that a horizontal velocity should be specified at the top boundary, which would be in agreement with the velocities specified at the top of your inlet wind profiles. For your mapped data this would be complicated. I guess I would start with specifying the average velocity at the top elevation, and see if it works. Then maybe move on to spatial interpolation...
Good luck and let us know how it goes! |
|
June 21, 2018, 08:21 |
|
#9 |
New Member
Join Date: Feb 2012
Location: Nantes
Posts: 14
Rep Power: 14 |
Hi Josip,
I hope you found a solution for your problem. If not, i would recommand to you use boundary condition type (timeVaryingMappedFixedValue) on all Boundaries except one. If you apply this condition everywhere using data from a wetter model, no matter which resolution (1km, 500m) you will end up with some mass imbalance. One boundary or more should be specified as an outlet. I usually simulate 1/2 hours and one boundary can always be defined as outlet. Are you simulation neutral ABL? or taking stability into account? Regards, Hydr |
|
Tags |
boundary conditions, environment, les, openfoam, pollutant dispersion |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
indoor simulation convergence problem | jhlee9622 | FLUENT | 0 | July 3, 2017 04:44 |
Problem in initializing transient simulation with a finer mesh | sidd | CFX | 8 | April 29, 2016 03:25 |
Exhaust gases dispersion simulation in open atmosphere | maazz | FLUENT | 0 | June 28, 2013 12:07 |
Dynamic mesh simulation (pimpleDyMFoam) problem | sidlof | OpenFOAM Running, Solving & CFD | 6 | April 12, 2013 12:24 |
simulation problem -- convection BC | pras | FLUENT | 4 | January 30, 2013 11:41 |