CFD Online Logo CFD Online URL
Home > Forums > OpenFOAM Programming & Development

Patchdata in Parallel

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

LinkBack Thread Tools Display Modes
Old   November 23, 2010, 08:45
Default Patchdata in Parallel
New Member
Join Date: Jul 2010
Posts: 1
Rep Power: 0
coby is on a distinguished road
Hello everybody,

I am currently working on the integration of an Acoustic Analogy into
OpenFoam. The key idea here is to do the analysis at runtime, such that
the pressure-data required to do so does not have to be stored during the computation. This helps to reduce disk-space which is a critical issue at my company. Given my very limited experience with OpenFoam programming I would have a few basic questions about the way OpenFoam handles parallel processing.

The routine essentially works as follows: An object containing the actual
acoustic analysis algorithm is created for every relevant patch of the geometry and for every observer position. All of the aforementioned are read from a dedicated dict-file before entering the time-loop. In serial mode the routine works perfectly fine and the results correspond well to references, when applying it to standard benchmark cases.

Now, in parallel I have run into the following problem: When accessing the field "acousticPressure" on a given patch "PATCH_XYZ" as follows:

const fvPatchField& = acousticPressure[mesh.boundaryMesh().findPatchID("PATCH_XYZ")]

and handing this fvPatchField over to my Acoustic-Analogy-object, the latter only receives parts of the field or even nothing at all, depending on the decomposition. This is obviously due to the fact that the solver only uses one of the processor meshes and those parts of the respective patch defined on it. I allways thought (without double-checking...) that the fvMesh-, GeometricField- and fvPatchField-objects somehow implicitly handled the decomposition automatically. Thus, I would have the following questions:

1) How do I explicitly access the different processor meshes manually?

2) How do I access the sub-patches of a given patch on these meshes individually?

3) How do I access my relevant field on these sub-patches?

I have had a look at some of the tools/solvers of OpenFoam (Version 1.5-dev) and tons of threads on this forum, but I can't seem to find a reasonable solution. Thanks in advance for your help,
Greetings Coby

PS: This is my first thread, so if it does not comply with the good-practice standards on this forum please let me know.
coby is offline   Reply With Quote


Thread Tools
Display Modes

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 Off
Trackbacks are On
Pingbacks are On
Refbacks are On

Similar Threads
Thread Thread Starter Forum Replies Last Post
Script to Run Parallel Jobs in Rocks Cluster asaha OpenFOAM Running, Solving & CFD 12 July 4, 2012 22:51
HP MPI warning...Distributed parallel processing Peter CFX 10 May 14, 2011 06:17
Cumulative continuity error large in parallel simulations xiao OpenFOAM 3 March 7, 2011 05:13
IcoFoam parallel woes msrinath80 OpenFOAM Running, Solving & CFD 9 July 22, 2007 02:58
Parallel Computing Classes at San Diego Supercomputer Center Jan. 20-22 Amitava Majumdar Main CFD Forum 0 January 5, 1999 13:00

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