multi region case - access field from another region
dear all!
i modified chtMultiRegionFoam including a radiation model in the fluid region. the radiation model, or better the BC of the radiation model, calculates a radiative wall heat flux Qr at every boundary and writes it out at the specified time steps. now i need to access Qr from the solid region, i.e. in the forAll(solidRegions, i)-loop (see solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionFoam.C line 104) . first i tried to create a IOobject QrFluid in creatFluidFields with the MUST_READ option. but as it isn t updated in the code (and for now I don t know how to do it) it doesn t read the actual Qr field. i also tried to use the db().lookupobject<> function which returns a reference to the object registry like: Code:
const volScalarField& QrFluid = UFluid[j].db().lookupObject<volScalarField>("Qr"); Code:
--> FOAM FATAL ERROR: i greatly appreciate your comments! thx in advance!! aram |
Quote:
Code:
radiation.set Code:
thermoFluid.set Good luck, Mirko |
hey Mirko!
thanks a lot for your reply!! the chtMRF code where i added a radiation and combustion model actually works. i found some troubles (= numerical instability) when taking the radiative heat flux Qr for the cht-BC into account. hence, i want to try a new approach where Qr is applied as source term in the solid. the problem i described above happens cause i havn t understood yet how to dereference the fluid field pointer lists outside of the fluid-loop. the error message comes from: Code:
/opt/openfoam171/src/OpenFOAM/lnInclude/PtrListI.H at line 108 Code:
if (!ptrs_[i]) Code:
Info<< "QrFluid: " << UFluid[j].db().lookupObject<volScalarField>("Qr") any idea? i ll keep on digging and report!! cheers, aram |
Aram,
OF2.0 chtMultiRegionFoam includes radiation. As for debugging, my approach is to copy the relevant solver or BC to my user directories, compile them, and then start adding print/Info statements to narrow down the cause of the error. Mirko |
All times are GMT -4. The time now is 09:30. |