# fvc::reconstruct( ) algorithm

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

 July 8, 2010, 04:36 fvc::reconstruct( ) algorithm #1 New Member   Join Date: Jul 2010 Posts: 3 Rep Power: 7 Hi Foamers, I am trying to figure out how the fvc::reconstruct( ) algorithm works. My first thought was: Sum up the facefluxes multiplied with the facenormal over a cell and divide it by the sum of the magnitude of the facevector components of every face of the cell. The algorithm in the "fvcReconstruct.C" file seems far more complex then my thought: inv(surfaceSum(sqr(mesh.Sf())/mesh.magSf())) & surfaceSum((mesh.Sf()/mesh.magSf())*ssf) The second line is what I expected, but the first line is a little mystery to me. Can anybody explain this to my, please? Rainer fumiya and brucechen like this.

 July 8, 2010, 09:31 #2 Senior Member   David Gaden Join Date: Apr 2009 Location: Winnipeg, Canada Posts: 430 Rep Power: 14 Just a guess... it looks like it might be non-orthogonal correction...?

 July 9, 2010, 11:15 #3 Member   Kevin Maki Join Date: Mar 2009 Location: Ann Arbor, MI, USA Posts: 43 Rep Power: 9 Rainer, I agree with your description. The first line finds one over the square of the components of the area. The second line has the the components of the area in the numerator, so the result is just one over the area times the sum of what ever you are reconstructing. This is what you want for a face-area-weighted average. There is another post by Henry which is relevant here: Bugs in fvcsurfaceIntegrate Kevin

 March 16, 2011, 13:27 #4 Member   Sung-Eun Kim Join Date: Mar 2009 Posts: 76 Rep Power: 9 I am also puzzled by what fvc:reconstruct does. Has anyone here figured what it does? It seems it is not based on any mathematical identity (like Gauss theorem), but some sort of approximation.

January 16, 2012, 13:06
fvc::reconstruct explaination
#5
New Member

Thibault Pringuey
Join Date: Mar 2009
Posts: 17
Rep Power: 9
Hello,

I have had a look at the fvc::reconstruct method. Please find attached an attempt to explain it.

Cheers,

Thibault
Attached Files
 fvcReconstruct.pdf (21.9 KB, 1119 views)

 January 17, 2012, 05:00 #6 Senior Member   Dr. Alexander Vakhrushev Join Date: Mar 2009 Posts: 214 Rep Power: 11 Thibault, excellent! Thank you for you work! Currently I am working on improving my model introducing a reconstruction for them... So hope to find some advantage on using it, will post some general conclusions. __________________ Best regards, Dr. Alexander VAKHRUSHEV Christian Doppler Laboratory for "Advanced Process Simulation of Solidification and Melting" Simulation and Modelling of Metallurgical Processes Department of Metallurgy University of Leoben Franz-Josef-Str. 18 A - 8700 Leoben Österreich / Austria Tel.: +43 3842 - 402 - 3125 http://smmp.unileoben.ac.at

August 27, 2014, 13:56
#7
Member

Charlie
Join Date: Dec 2010
Location: 415 Kinross Dr. Newark, DE 19711
Posts: 79
Rep Power: 7
Hi makaveli_lcf,

Did you find any advantage using fvc::reconstruct ?

In my experience, using fvc::reconstruct seems too dissipative? need to find out what cause the dissipation, maybe due to the face-weighted averaging ?

Just curious, did you find anything similar?

Quote:
 Originally Posted by makaveli_lcf Thibault, excellent! Thank you for you work! Currently I am working on improving my model introducing a reconstruction for them... So hope to find some advantage on using it, will post some general conclusions.

 July 22, 2015, 23:41 #8 New Member   Xavier Pivan Join Date: May 2015 Posts: 10 Rep Power: 3 Hi Cheng, Did you figure out why renconstruct was too dissipative ? I'm trying to reproduce an experiment with settlingFOAM everything work except that my system dissipate too much and then the velocities are not strong enough. reconstruct might be a start. Thanks

July 26, 2015, 23:11
#9
Senior Member

Kyle Mooney
Join Date: Jul 2009
Location: Amherst, MA USA - San Diego, CA USA
Posts: 319
Rep Power: 9
There could be several sources of numerical dissipation. To start make sure you have achieved mesh convergence and using 2nd order discretization.

Quote:
 Originally Posted by Navip Hi Cheng, Did you figure out why renconstruct was too dissipative ? I'm trying to reproduce an experiment with settlingFOAM everything work except that my system dissipate too much and then the velocities are not strong enough. reconstruct might be a start. Thanks

 September 22, 2015, 05:37 #10 New Member   Michael Join Date: Feb 2015 Posts: 14 Rep Power: 3 I think that fvc::reconstruct is dissipative because it is first order accurate. It assumes Sum_f n_f ( S_f * u_p) = Sum_f n_f ( S_f * u_f) which is accurate up to irst order. I have another question: What is the difference between the method used to reconstruct the velocity at the cell center from the face center used in fvc::reconstruct and simply calculating it by Sum_f 1/|S_f| phi_f n_f ?

 October 27, 2015, 06:33 #11 New Member   Michael Join Date: Feb 2015 Posts: 14 Rep Power: 3 I have to add that the fvc::reconstruct is second order accurate for orthogonal grids. It can be seen by a Taylorseries expansion of the face velocity, i.e., U_f = U_c + dU/dx_c delta x + ... and inserting it into the relation sum n_f (S_f * u_c) = sum n_f (S_f * u_f)

 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 Yan Kai Main CFD Forum 0 April 18, 2007 03:48 Yan Kai FLUENT 0 April 13, 2007 23:17 ilyas Main CFD Forum 0 February 22, 2007 11:53 James Fluroe Main CFD Forum 2 December 27, 2001 18:51 Jonathan Castro Main CFD Forum 3 December 10, 1999 05:59

All times are GMT -4. The time now is 03:19.