CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (https://www.cfd-online.com/Forums/openfoam-solving/)
-   -   Material interfaces and the laplacian operator (https://www.cfd-online.com/Forums/openfoam-solving/59935-material-interfaces-laplacian-operator.html)

cliffoi November 7, 2006 08:35

Hi to all I am fairly new to
 
Hi to all
I am fairly new to OpenFoam so if anyone could help me, I'd appreciate it. I am solving a simple diffusion equation of the form
fvm::laplacian(gamma,phi) == Src
How does one implement an effective gamma at a face separating two cells with different gamma values (i.e. different materials). This would be done for any solid heat conduction problem (where an interface between solid materials of different conductivities exists).
As I understand it, it is necessary to define an interpolation scheme and add a weighting parameter to the laplacian operator.
Could somebody please clarify how this is done practically in OpenFOAM, or at least point me to an example where this is done.

Thankyou in advance

dmoroian November 7, 2006 09:03

I think the answer is in the s
 
I think the answer is in the solver written by Daniele Panara, and presented in :
conjugateHeat

hjasak November 7, 2006 09:30

When you specify the Laplaciam
 
When you specify the Laplaciam scheme in a dictionary, you will have something like this:

laplacian(nu,U) Gauss linear corrected;

The word "linear" here tells you how to interpolate nu between the cell centres. The final word,"corrected", tells you how to calculate the surface-normal gradient needed by the operator - this one is corrected for mesh non-orthogonality.

Other choices for the interpolation scheme can be made here, for example "harmonic" or any other scheme. Keep in mind that more complex schemes may requre more than one word, i.e. you may have additional parameters before the snGradScheme.

Enjoy,

Hrv

cliffoi November 7, 2006 10:06

Hi, Thankyou for your respons
 
Hi,
Thankyou for your response. The method proposed there would work but it seems to me to be unnecessary to define a new mesh for each new material.
I was thinking more along the lines of updating the face conductivities, so that when openFOAM calculates k*grad(T) at the face, the k value used is not a linearly interpolated value but rather a custom calculated value. This value would depend on the P and E cell conductivity values and the distance of each cell centre to the face.
k=(dx_E+dx_P)*k_P*k_E / (dx_P*k_E + dx_E*k_P)

cliffoi November 7, 2006 10:15

Thanks Hrv Seeing the equatio
 
Thanks Hrv
Seeing the equation a gave in my last post, do you know if FOAM has a suitable scheme built in. Where will I find a list of the available schemes?

Regards
Ivor

hjasak November 7, 2006 10:31

Looking at your scheme, it loo
 
Looking at your scheme, it looks to me like harmonic interpolation. If you wish to implement your own interpolation, I've got a Laplace operator for you that will take the diffusivity as a surfaceScalarField, i.e. you can do the face interpolation beforehand in the code and present the face values directly.

Hrv

cliffoi November 8, 2006 02:17

Thanks Hrv The laplace operat
 
Thanks Hrv
The laplace operator that will take the diffusivity as a surfaceScalarField sounds ideal. could I get that from you?

Regards
Ivor

hjasak November 8, 2006 06:36

You mis-understood me: the ope
 
You mis-understood me: the operator is already in the library so you don't need any code from me.

Hrv

cliffoi November 8, 2006 08:57

Right you are Hrv: I had anoth
 
Right you are Hrv: I had another look at the doxygen documents and I see the operator you're talking about. Will give it a try... thanks

Ivor


All times are GMT -4. The time now is 08:09.