CFD Online Discussion Forums

CFD Online Discussion Forums (
-   OpenFOAM Programming & Development (
-   -   multiRegion version of pisoFoam (

Fransje December 1, 2010 12:58

multiRegion version of pisoFoam
Hello developers,

Perhaps somewhat of a double post, as I posted a similar message in the Running/Solving section of this forum, but to no avail....

Well, my problem is that I'm trying to run a double region simulation by implementing a modified version of pisoFoam.
I think I've come quite far in my implementation, and when starting a run my solver reads the correct meshes, with the correct number of cells, the right names, correct implementation of the turbulence model, etc. So far so good.

However, when starting the time loop, OpenFOAM complains about not finding region0 (which is the standard region, but which I don't have since I named my regions differently.) I get the following error:



    request for objectRegistry region0 from objectRegistry doubleDomain_split failed
    available objects of type objectRegistry are


I find quite strange that OpenFOAM is wanting to use region0, whereas I really specify region1 or region2 in my code, and that they are available as objectRegistries..
Would someone have an idea on how to fix this?

Kind regards,


Fransje December 1, 2010 13:09


I've pinpointed the error origin to the command:

I don't know if that's of any help...

Looking forward to your replies!


Fransje December 1, 2010 14:45

And in Time.C, the problem occurs in the function:

Foam::Time& Foam::Time::operator++()
At the line:

00645    if (!subCycling_)
00646    {
00647        if (timeIndex_ == startTimeIndex_)
00648        {
00649            functionObjects_.start();
00650        }
00651        else
00652        {
00653            functionObjects_.execute();
00654        }
00655    }

Any ideas?

Kind regards,


Canesin December 2, 2010 01:20

You can just use my chtIcoMultiRegion solver with zero solid regions.

Fransje December 2, 2010 13:33

Dear Fabio,

Thank you for your reply and for the solver. But oh my! Is it Christmas coming early? :)

I'll look through it and come back to you if I have any questions.

Kind regards,


Fransje December 7, 2010 11:46

Dear Fabio,

I used the incompressible multiRegion solver you developed to try and run the case I was describing, but I encounter the same error...

The only modifications I made to the solver was to kick out the reading of the "K", "T", "Pr" etc variables since I was not planning on using them, and my programme compiled without errors.

I then used the same two region meshes I had defined earlier, and set solidRegionNames in the ./constant/regionProperties file to

solidRegionNames (    )
The simulation starts, creates all the fields properly, gives me a region dependent min and max Courant number, and then crashes again with the same error as in my original post...

Any ideas? :confused: :( :confused:

Kind regards,


Canesin December 7, 2010 15:23

Add a dummy region.. that do nothing.. zeroGradient in all boundaries.

Jean El-Hajal May 30, 2011 17:57


I had a problem with chtIcoMultiRegionFoam compilation with 1.7.x

In the file:

chtIcoMultiRegionFoam/derivedFvPatchFields/solidWallMixedTemperatureCoupled/solidWallMixedTemperatureCoupledFvPatchScalarField .C

just add #include "mapDistribute.H" like this:

#include "solidWallMixedTemperatureCoupledFvPatchScalarFiel d.H"
#include "addToRunTimeSelectionTable.H"
#include "fvPatchFieldMapper.H"
#include "volFields.H"
#include "directMappedPatchBase.H"
#include "mapDistribute.H"
#include "regionProperties.H"

maybe could help someone.


All times are GMT -4. The time now is 18:05.