CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM (https://www.cfd-online.com/Forums/openfoam/)
-   -   Individually access of a dictonary for any decomposed processor - Parallel computing (https://www.cfd-online.com/Forums/openfoam/107561-individually-access-dictonary-any-decomposed-processor-parallel-computing.html)

Peter_600 October 1, 2012 05:40

Individually access of a dictonary for any decomposed processor - Parallel computing
 
Hi,

I would like to run a case in parallel and to execute specific tasks on different processors.
To achieve this I like to control the behavior within a script which is stored, let s say inside the constant folder for any particular processor?

Any ideas?


Peter

Bernhard October 1, 2012 08:32

What should this script do exactly? Is it to be called every iteration, time step? Maybe there is a different way to achieve what you want...

Peter_600 October 2, 2012 10:40

Actually I want to use the attachDetach topochanger in parallel.
I ve figured out that it crashes because some processors don t contain the physical attach/detach faces. Thus, I would like to skip the attach/detach function for those processors.

Therefore, I like to have in any processor folder a file which allows to switch on or off the attach/detach function, assuming weither there is a detach/attach boundary or not.

I know I have to change the source code, but I want to give a try.

I can create within my solver moveDynamicMesh in the beginning a file like

Quote:

// Read dictionary for attach Detach Switch

Pout << "Read Dictionary attachDetachSwitch" << nl;

IOdictionary attachDetachSwitch
(
IOobject
(
"attachDetachSwitch",
time().constant(),
//mesh,
*this,
IOobject::MUST_READ,
IOobject::NO_WRITE
)
);

word attachSwitchState;

attachSwitchState = word(attachDetachSwitch.lookup("attachDetachSwitch "));

Pout << "Attach Detach State: " << attachSwitchState << nl;
Now I would like to use the object attachSwitchState in different classes. Like in
attachDetachFvMeshAttach.C
attachDetach.C.
to perform some if statements.

I don t know how I can pass this object which contain either" false or true " to any of this classes. Is it possible? Or am I totally wrong ?

Cheers Peter

Btw, I am using 1.6-ext


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