CFD Online Discussion Forums

CFD Online Discussion Forums (
-   OpenFOAM Pre-Processing (
-   -   Boundary condition involving 2nd derivative of U (

maka November 7, 2007 14:12

I'm implementing a boundary co
I'm implementing a boundary condition that requires the knowledge of 2nd derivative of a vector (or scalar) field. My questions is how to calculate a 2nd derivative (Laplacian of vector or scalar field) on fvPatchField<vector>?

(1) I know that one can get the patch value of a field, say U, using lookupPatchField<volvectorfield,>("U")

(2) then get the value of 1st cell center using: U.patchInternalField()

(3) but to calculate 2nd derivative one need access to the value of 2nd cell center (one level more deep than U.patchInternalField())

(4) this is need to be done without in the parallel version of OpenFOAM. I'm using V1.3.


Best regards,

mattijs November 8, 2007 16:04

Reformulate your b.c. to work
Reformulate your b.c. to work in terms of cell centre value and cell centre gradient.

Have your toplevel maintain a gradient-of-U field which is consistent with U so you can look it up in your b.c.

Anything using extended addressing is pretty hard to parallelise at the patch level (what if your 2nd layer cell is on another processor)

All times are GMT -4. The time now is 23:01.