# Neighbour cell centre to face distance

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

 July 15, 2013, 15:03 Neighbour cell centre to face distance #1 Member   Felipe Portela Join Date: Dec 2012 Location: London Posts: 64 Rep Power: 7 Hello all, I feel my question is rather simple, but I've trying to solve this for quite a while without any success, so maybe you guys can help. Consider two patches which are coupled, I need to know the distance between points A and B, where A is the centre of the cells which contain faces on the neighbour patch, and B is the centre of the faces on the neighbour patch. I could just use the distance from A to the current faces, however, this becomes a problem whenever cyclic conditions come into play... So, any suggestions? Cheers, Felipe

 July 19, 2013, 09:44 #2 New Member   Klas J Join Date: Oct 2011 Location: Göteborg, Sweden Posts: 10 Rep Power: 8 Hi Felipe, I am not sure that I interpret your question correctly. You want to get the distance from the cell next to the coupled patch to face centre on the neighbouring face? Perhaps you could be helped by looking at the implementation of the patches. For example have a look at the function delta in the cyclic patch (src/finiteVolume/lnInclude/cyclicFvPatch.C). There you can see how the distance between the cells is calculated as a sum between the distance from the cell to the face for each side of the interface. Note that the function delta has different meaning depending on the type of patch (src/finiteVolume/fvMesh/fvPatches/fvPatch/fvPatch.H): Code: ```//- Return cell-centre to face-centre vector // except for coupled patches for which the cell-centre // to coupled-cell-centre vector is returned virtual tmp delta() const;``` Hope this was of some help. Best regards, Klas

 July 19, 2013, 10:11 #3 Member   Felipe Portela Join Date: Dec 2012 Location: London Posts: 64 Rep Power: 7 Hi Klas, In fact, what I needed was not the cell-centre to coupled-cell vector (which can be obtained directly from delta()), but rather the coupled-cell-centre to coupled-cell-face vector (the face would be that which is coupled to the original cell). In the meanwhile the following procedure seems to work: Code: `myPatch.fvPatch::delta() - myPatch.delta();` Where myPatch is a coupled patch. Nevertheless, thanks for the swift reply Cheers, Felipe

 July 19, 2013, 10:35 #4 New Member   Klas J Join Date: Oct 2011 Location: Göteborg, Sweden Posts: 10 Rep Power: 8 Hi again, Aha, I understand now. Yes, it seems reasonable that what you are using works. As found in cyclicFvPatch.C you could get a reference to the neighbouring patch and then ask the patch for delta: Code: ``` const cyclicFvPatch& nbrPatch = neighbFvPatch(); const scalarField deltas(nf() & fvPatch::delta()); const scalarField nbrDeltas(nbrPatch.nf() & nbrPatch.fvPatch::delta());``` But also since the coupled delta will anyway only be the difference of the fvPatch::delta for each patch what you are doing should be the same thing. // Klas fportela likes this.

 April 15, 2014, 11:52 #5 Senior Member   Join Date: Jan 2013 Posts: 344 Rep Power: 8 Dear Klas, About the returned quantities of function delta(), I also read the source files fvPatch.H and fvPatch.C. In the latter, the delta is defined as: Code: `Cf-Cn` According to fvPatch.H, Cf is face centers while Cn is the neighboring cell centers. I have a question here. for those physical boundary faces (like inlet, outlet, wall..., not inter-processor faces), the cell that contains the boundary faces is always thought of as the owner cell. So here what does it mean by "Cn is the neighboring cell centers"? After digging the source files, I found that - for physical boundary faces: delat is Cf-Cn. That is, the delta vector points from the cell (which contains this face) to the face center. - for inter-processor faces: delta is the vector from the owner (located in the local processor) to the neighbor cells (located in the neighboring processor). Is what I am saying correct? Any comments are welcome. ~~~~ OFFO

 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 Ganesh FLUENT 13 January 22, 2014 05:11 miliante OpenFOAM Running, Solving & CFD 132 October 7, 2012 22:50 gaottino OpenFOAM Native Meshers: blockMesh 7 July 19, 2010 14:11 Sergio Rossi Main CFD Forum 2 May 28, 2006 10:04 michele OpenFOAM Other Meshers: ICEM, Star, Ansys, Pointwise, GridPro, Ansa, ... 2 July 15, 2005 04:15

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