Implementation of boundary conditions for FVM

 Register Blogs Members List Search Today's Posts Mark Forums Read

 November 6, 2002, 05:28 Implementation of boundary conditions for FVM #1 Tom Guest   Posts: n/a I am fairly new at CFD and want clear some personal misunderstandings on the implementation of boundary conditions. Any comments are most welcome indeed. First of all, I am working with the Finite Volume Method (FVM) where boundaries are represented by cell faces on the "outside" of the mesh, i.e. faces not lying between two cells. I gather from various literature sources that there are 4 posibilities when specifying boundary conditions: (1) Fixed value (Dirichlet) (2) Fixed gradient (von Neumann) (3) Natural boundary condition (dependent on solution) (4) Extrapolated boundary value I also gather that each and every discretized equation to be solved requires either one or a combination of the above boundary conditions. Number (1) and (2) is fairly understandable and the implementation is not too obscured. Questions: [1] Am I right in saying that for (2) the boundary face value is calculated from the given gradient and the cell value lying along the boundary? [2] In the discretized equation we require the value of the cell lying outside the boundary. But we assume that this cell has a zero volume so that its centroid coincides with the boundary face centroid? Therefore the value at the boundary can be used directly in the discretized equation? [3] Another question on the fixed gradient boundary condition (2). Do we specify the FLUX at the boundary per unit area i.e. q=-k d(phi)/d(n) = fixed value where n is a outward pointing init vector on the boundary face, or do we specify only the gradient of the dependent variable? d(phi)/d(n) [4] What is the difference between implicit and explicit treatment of boundary conditions and how does it effect the discretized equation? i.e. how is the diagonal influenced and and what about the explicit source term due to the boundary condition? [5] What is the deal with conditions (3) and (4) and where are they typically used? How will (3) be implemented? [6] Typically which conditions of (1) to (4) is used in which equations for example: momentum equation; pressure equation; pressure correction equation etc. etc. Looking forward to your replies. Tom

 November 13, 2002, 08:51 Re: Implementation of boundary conditions for FVM #2 onno Guest   Posts: n/a I GATHER FROM VARIOUS LITERATURE SOURCES THAT THERE ARE 4 POSIBILITIES WHEN SPECIFYING BOUNDARY CONDITIONS: (1) FIXED VALUE (DIRICHLET) (2) FIXED GRADIENT (VON NEUMANN) (3) NATURAL BOUNDARY CONDITION (DEPENDENT ON SOLUTION) (4) EXTRAPOLATED BOUNDARY VALUE There are only the first two as all the others can be rewritten to one of the first two. For example, the extrapolated boundary value uses a gradient from the inside of the domain to predict the value at the face. Thus for that iteration this gradient is fixed and reduces to your number 2, Von Neumann condition. I ALSO GATHER THAT EACH AND EVERY DISCRETIZED EQUATION TO BE SOLVED REQUIRES EITHER ONE OR A COMBINATION OF THE ABOVE BOUNDARY CONDITIONS. Yes, but it is here where CFD sometimes got confused as text books and codes named these boundaries typically INLET, OUTLET, PRESSURE, CYCLIC etc. For the different properties, the combinations reduce to either DIRICHLET or VON NEUMANN. NUMBER (1) AND (2) IS FAIRLY UNDERSTANDABLE AND THE IMPLEMENTATION IS NOT TOO OBSCURED. QUESTIONS: [1] AM I RIGHT IN SAYING THAT FOR (2) THE BOUNDARY FACE VALUE IS CALCULATED FROM THE GIVEN GRADIENT AND THE CELL VALUE LYING ALONG THE BOUNDARY? Yes, that is right. [2] IN THE DISCRETIZED EQUATION WE REQUIRE THE VALUE OF THE CELL LYING OUTSIDE THE BOUNDARY. BUT WE ASSUME THAT THIS CELL HAS A ZERO VOLUME SO THAT ITS CENTROID COINCIDES WITH THE BOUNDARY FACE CENTROID? THEREFORE THE VALUE AT THE BOUNDARY CAN BE USED DIRECTLY IN THE DISCRETIZED EQUATION? Commercial CFD codes use two different techniques. Some use this methodology described by you. The more general approach is to define control volumes in terms of flat faces which are flagged to be baffles, inside cell faces, boundary faces etc. [3] ANOTHER QUESTION ON THE FIXED GRADIENT BOUNDARY CONDITION (2). DO WE SPECIFY THE FLUX AT THE BOUNDARY PER UNIT AREA I.E. Q=-K D(PHI)/D(N) = FIXED VALUE WHERE N IS A OUTWARD POINTING INIT VECTOR ON THE BOUNDARY FACE, OR DO WE SPECIFY ONLY THE GRADIENT OF THE DEPENDENT VARIABLE? D(PHI)/D(N) At the end you will need/use the the gradient of the dependent variable at the face. [4] WHAT IS THE DIFFERENCE BETWEEN IMPLICIT AND EXPLICIT TREATMENT OF BOUNDARY CONDITIONS AND HOW DOES IT EFFECT THE DISCRETIZED EQUATION? I.E. HOW IS THE DIAGONAL INFLUENCED AND AND WHAT ABOUT THE EXPLICIT SOURCE TERM DUE TO THE BOUNDARY CONDITION? When deriving the finite volume method, the finite volume integration over a control volume reduces to an algebraic expression where the new value in a control volume is in terms of the old value of the control volume and the values at the faces. Neighbouring control volumes is then used to interpolate the values at the faces with different schemes such as Upwind differencing, Central Differencing Quick etc. The variables is then grouped together to give the well known expression _p phi_p = SIGMA a_nb phi_nb + S_p, where a_p is the central coefficient, a_nb the so-called neighbouring coefficients and S_p the source. Phi should be solved for. Now for boundary cells the face value is "replaced" by the particular boundary assumption. Thus, when re-arranging the variables, you have the choice to either put the contribution in the source or in the matrix or to split it. Generally spoken, larger source terms (explicit) will slow convergence down. [5] WHAT IS THE DEAL WITH CONDITIONS (3) AND (4) AND WHERE ARE THEY TYPICALLY USED? HOW WILL (3) BE IMPLEMENTED? I will rewrite to options 1 and 2 and try to implement it as implicitly as possible. (Personal choice) [6] TYPICALLY WHICH CONDITIONS OF (1) TO (4) IS USED IN WHICH EQUATIONS FOR EXAMPLE: MOMENTUM EQUATION; PRESSURE EQUATION; PRESSURE CORRECTION EQUATION ETC. ETC. Try to find this in a good text book (say Ferziger and Peric)or the help pages of some commercial CFD code Typically for an INLET the velocity will be fixed and pressure extrapolated. LOOKING FORWARD TO YOUR REPLIES. TOM Hope this help

 November 14, 2002, 10:29 Re: Implementation of boundary conditions for FVM #3 Tom Guest   Posts: n/a Thank you for your advice Onno. You cleared up many of my misunderstandings. I have one more question regarding boundary conditions: Our general differential equation have convection term and diffusion term. When discretizing the equation we require both the face value of the dependent variable (convection term) and the gradient of the dependent variable over the face (diffusion term) My question is this. Do we specify both boundary conditions (the fixed value and the gradient). I think not. Is it correct to specify for example the face value and calculate the gradient from the previous iteration to get the face gradient for the diffusion term and the other way around? Can we do this implicitly? How would one decide whether to specify the fixed value or the gradient at the boundary? I recall from some notes that one may NOT specify both types of BC at a single face. There, I think i answered my own question!! But comments are welcome. Tank you Tom

 November 15, 2002, 01:35 Re: Implementation of boundary conditions for FVM #5 Tom Guest   Posts: n/a Thank you I now understand a great deal more about boundary conditions. There is one more problem that confuses me.Is then true that the extrapolated boundary condition determines both the face value and face gradient from the solution? And this we could also do implicitly or explicitly using the results from the current iteration or the previous iteration resp.? If we have unstructured non orthogonal mesh where only the cells nearest neighbours are stored in a list, how does the extrapolated boundary work??? We need the face value at the boundary to calculate the gradient over the boundary cell, but the face value at the boundary is what we want to calculate! (so both the cell gradient and face values are unknown) I know that in a structured orthogonal mesh its easy to extrapolate using the boundary cell value and its neighbour cell value and simply fitting a line through these values to the boundary face, but this method does not seem to be an option for unstructured non orthogonal mesh? Thank you Tom

 November 15, 2002, 02:25 Re: Implementation of boundary conditions for FVM #6 onno Guest   Posts: n/a Now you are talking – the solution will cost you!!!! If familiar with unstructured mesh techniques (which I will assume, as you already experienced the lack of information) then the only information known is that of the two cells bracketing the face. The following procedure will do the thing. Approximate the boundary face with the boundary cell's value (thus zero gradient) Use thus value to calculate the gradient over the boundary cell and use this gradient at the face. Now you have a value on the boundary face and a gradient. The dot product of the gradient and the boundary face vector gives you the gradient of the property in the direction of the face area vector. A line with this (dotted) gradient through the approximated boundary value should on a regular grid goes through the value of the opposite cell of the boundary cell that you are looking for. | U | BC | (BC is the boundary cell and U the one that you try to trace) With some algebra, when guessing a dx (see later) you can calculate this U value. Use this calculated U value and the value at BC as well as the guessed dx to calculate the gradient that you need for the extrapolation. In order to guess a dx, you may become smart and calculate the average cell distances in the direction of the boundary face area vector. Quicker method is to say that the volume of a cube is V=dxdydz. Thus the dx needed is the Volume divided by the magnitude of the boundary face vector (dydz). Else, you can construct a list at the boundary face of cells that will be used for calculation of near boundary cell values. Construct on the boundary face (on the inside of the domain) two cubes with the volume of the boundary cell. Calculate volume overlapping with the near boundary cells and store for each boundary cell the cell number needed and the percentage of overlapping with the near boundary cells. Use this to calculate the value of the properties at the two cubes that you have placed on the boundary face. These values is then used for your boundary approximations.

 April 1, 2012, 09:31 Question!! #7 Member   Mohammad.R.Shetab Join Date: Jul 2010 Posts: 49 Rep Power: 8 I have a question about fix gradient boundary condition in FVM. As I know the fix boundary condition is sth like this: -k(Tb-Tn)/deltaX = q which Tb: T at the boundary, Tn: T at the node near the boundary, deltaX: distance between these two This equation results in this equation for Tb: Tb = deltaX*(-q/k) + Tn My question is, when deltaX goes to be much smaller, for example in micro Scales, the converging of this boundary condition and so the solution of the domain will be too slow(I use a simple Algorithm for convergence)!! What can I do about it?!! Any help would be highly appreciated. Thank you Mohammad reza Shetab

 August 26, 2014, 05:58 #8 New Member   Parth Thaker Join Date: Mar 2014 Location: Surat , Gujarat , INDIA Posts: 26 Rep Power: 4 how to apply orlanski's boundary condition using FVM ????

 Thread Tools Display Modes Linear Mode

 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 OffTrackbacks are On Pingbacks are On Refbacks are On Forum Rules

 Similar Threads Thread Thread Starter Forum Replies Last Post Anindya Main CFD Forum 25 February 27, 2016 13:58 mehrdadeng CFX 10 February 25, 2011 06:25 Ardalan Main CFD Forum 6 April 17, 2010 23:40 Tudor Miron CFX 17 March 19, 2004 20:23 lyang Main CFD Forum 0 September 19, 1999 18:29

All times are GMT -4. The time now is 20:46.