conjugateHeatFoam with arbitrary number of region
is there anyone which has a conjugateHeatFoam version modified in such a way that an arbitrary number of solid and fluid regions are allowed? I need something like chtMultiRegionFoam which includes features of conjugateHeatFoam...
I am currently working with conjugateHeatFoam but with two regions, solid and fluid. You could have two solid parts simply by selecting velocity equal to zero. I have to add that if you want to calculate the gradient of a variable on the interface (coupled boundry) you will face with problem. For more information about this defect have look to the following link:
The hardest part when adding more than 2 regions is just editing attachPatches.H. Here's an example for 3 regions:
After this, all you have to do is make sure you have the right directory structure.
some more questions
I am still planning how to make conjugateHeatFoam adjustable for an arbitrary number of regions. unfortunately I cannot work on the subject in a continuous way :o ...
According to what Henrik said on 2009 here:
Have your questions been answered?
I borrowed some ideas from chtMultiRegionFoam and created pointerLists to my regions.
In my master case constant directory I have a regionProperties file listing my fluid and solid region names. See for example $FOAM_TUTORIALS//heatTransfer/chtMultiRegionFoam/multiRegionHeater/constant/regionProperties
My createSolidMeshes.H looks like this:
Info<< "Create solid mesh for region " << rp.solidRegionNames()[i]
<< " for time = " << runTime.timeName() << nl << endl;
Similarly for the fluid meshes.
In attachPatches.H I have for the solid side:
// solid regions
//Info<< "attaching patches for solid region i =" << i << endl;
const polyPatchList& patches = solidRegions[i].boundaryMesh();
forAll (patches, patchI)
const regionCouplePolyPatch& rcp =
// Attach it here
// Force recalculation of weights
Similarly for the fluid side
|All times are GMT -4. The time now is 13:57.|