Faces of a cell
Hi all,
probably a very simple question. How can i access the faces of a particular cell? I would like to loop over all the cell and for every cell[i] over all the face. Thanks Andrea 
Hi Andrea
You can get the information as: Code:
const labelListList & cellFaces = mesh.cellFaces(); Best regards, Niels 
Hi Niels,
thanks for the answer. I need to know the values of a variable (alpha1 using interFoam) belonging to the faces of a particular cell, and then loop for all the cell. Something like that: forAll(alpha1,celli) { alpha[celli] = sum(alpha[facei]*Sf[facei])/sum(Sf[facei]) } this does not work of course. I dont know where to put the loop on the correct faces belonging to the cell[i]. many thanks for any help andrea 
Isn't fvc able to calculate what you want? I suppose fvc:div does something similar you what you want? I cannot give you the correct syntax though, but maybe someone else can help you out.

Hi,
basically a need to smooth alpha on every cell and i would like to do that by using alpha on the face times area divided by the total area. So i need to sum alpha on the 4 faces. The divergence is a difference between values on the faces divided by deltax and i dont know if is the same that i need. andrea 
Hi Andrea,
Take a look at src/finiteVolume/finiteVolume/fvc/fvcSurfaceIntegrate.C and what they do is very similar to what you want. I also did the smoothed alpha1, but I did not include the boundary value at all. 
Dear forumers,
I decided to post my question inside this thread, as it is also somehow connected with looping over faces in a given cell. What I try to achieve is to get the face normal vector at every face in the cell, regardless it is a boundary cell or internal. I produced the following code...: Code:
const cell& faces = mesh_.cells()[cellI]; 
Hey,
have you solved your problem? I also would like to access the face normal vectors of internal faces.... Kind Regards Anne 
Yes, I solved the problem. The solution I got was correct. I.e. the components of normal vectors for an arbitrary cell can be in general of the same sign.
The reason for this are the normal vector direction rules. In OpenFoam mesh normal vectors:  at boundary faces point out of the domain  at internal faces they point from the cell of lower global ID number to higher. Hope this helps, Best regards, kuczmas. 
Just a small note, I think
Code:
vector faceINormal = mesh_.Sf()[i] / mesh_.magSf()[i]; Code:
L 
Thank you for this hint. I will keep on trying.
Kind Regards Anne 
Dear Niels,
Could you please elaborate more on how to access the value of a surface<Type>Field given face label if the face is not internal? I manage to acess the boundary field but I can't find out how to obtain a certain value from it knowing the face label. Best regards, Thomas 
All times are GMT 4. The time now is 23:36. 