CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Main CFD Forum

Flux calculation in vertex-centered finite volume.

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

Reply
 
LinkBack Thread Tools Display Modes
Old   May 23, 2008, 12:55
Default Flux calculation in vertex-centered finite volume.
  #1
Martin
Guest
 
Posts: n/a
Hi

I'm new to the principles used when implementing 3D vertex-centered finite volume methods. I have this question about how one would go about implementing calculation of fluxes between control volumes in this case.

These are my thoughts so far.

Assume we have a tetrahedral mesh and define the control volumes based on the associated median dual mesh. Now consider an edge, e, between two mesh vertices. The endpoints of this edge are at the "centers" of two adjacent control volumes. The edge is shared by a number of tetrahedra, T_1,..,T_n. Inside each of these is a plane surface, s_i, i=1,..,n, that contributes to the combined surface, S_e, shared by the two adjacent control volumes along edge e. My idea was now for each vertex in the mesh to calculate the flux across S_e for all edges e emanating from that vertex and add/subtract it to/from the vertex field value. Is this ok so far ?

Now, each of the subsurfaces s_i associated with an edge e is formed by the centroids of abutting triangular faces and the cetroid of T_i, so these are plane surfaces. To calculate the flux across S_e I believe I should calculate a normal for each of the s_i, rotate field values to that direction, solve a Riemann problem across s_i, rotate values back again and sum all these flux contributions.

But all these Riemann problems are in some sense identical, because the only thing that changes is the direction of the normal, whereas the constant values within the two control volumes are unchanged.

So couldn't I just for every edge in the mesh calculate the surface normals of all the s_i (the length of each normal being the area of s_i), add them together to get a normal for an enquivalent combined plane and just calculate a single Riemann problem using that combined normal ? This would essentially (for a non-boundary vertex) reduce the flux calculation to 6 Riemann problems per vertex because the control volume would essentially then be a hexahedron around each vertex (at least from a flux calculation perspective).

Can anyone tell my if I'm way off here ?

Thanks, Martin
  Reply With Quote

Old   May 23, 2008, 13:01
Default Re: Flux calculation in vertex-centered finite vol
  #2
pc
Guest
 
Posts: n/a
Nope, you're not off - that's how it's done.

See papers by Barth from the early 90's.
  Reply With Quote

Old   May 23, 2008, 16:16
Default Re: Flux calculation in vertex-centered finite vol
  #3
Praveen. C
Guest
 
Posts: n/a
It is common to use an average normal. I dont know if anyone has studied how this affects the accuracy. It is definitely not good with highly stretched grids as encountered in high reynolds number flows. Some people use a circum-center based cell definitions instead of the centroid-based cells. This leads to better cells in the boundary layer region.
  Reply With Quote

Old   June 4, 2008, 10:04
Default Re: Flux calculation in vertex-centered finite vol
  #4
Martin
Guest
 
Posts: n/a
Okay! Thanks for the confirmation.
  Reply With Quote

Reply

Thread Tools
Display Modes

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


Similar Threads
Thread Thread Starter Forum Replies Last Post
LiftDrag tool nuovodna OpenFOAM Running, Solving & CFD 45 September 2, 2009 17:56
fluent add additional zones for the mesh file SSL FLUENT 2 January 26, 2008 12:55
node centered finite volume bookkeeping Al Main CFD Forum 1 April 24, 2007 15:57
Cell vertex FV vs Cell centered FV peter.zhao Main CFD Forum 1 September 15, 2004 09:26
finite volume method co2 FLUENT 0 March 1, 2004 13:24


All times are GMT -4. The time now is 04:45.