Loading OpenFOAM adapter removes patchField Type

When trying to run rhoReactingBuoyantFoam in OpenFOAM v2206 with the PreCICE adapter v1.3.0 loaded, I get the error

--> FOAM FATAL IO ERROR: (openfoam-2206)
Unknown patchField type atmBoundaryLayerInletVelocity for patch type patch

Valid patchField types :

96
(
SRFFreestreamVelocity
SRFVelocity
SRFWallVelocity
acousticWaveTransmissive
activeBaffleVelocity
activePressureForceBaffleVelocity
advective
calculated
codedFixedValue
codedMixed
coupledVelocity
cyclic
cyclicACMI
cyclicAMI
(and so on...)

What is strange is that OpenFOAM runs fine if I just comment out the adapter library in the controlDict like this:

// libs ("libpreciceAdapterFunctionObject.so");
functions
{

//    preCICE_Adapter
//    {
//        type preciceAdapterFunctionObject;
//    }

After removing the PreCICE adapter, the list of possible patchField types goes like this:

Valid patchField types :

96
(
SRFFreestreamVelocity
SRFVelocity
SRFWallVelocity
acousticWaveTransmissive
activeBaffleVelocity
activePressureForceBaffleVelocity
advective
atmBoundaryLayerInletVelocity
calculated
codedFixedValue
codedMixed
cyclic
cyclicACMI
cyclicAMI
(and so on...)

Somehow loading the adapter removes atmBoundaryLayerInletVelocity from the list of possible boundary conditions.

My question is simply “why?”, and perhaps more importantly, is there a way to fix this?

My first reaction is “this should not be at all connected to the adapter”, but apparently it is!?

The only (new) related thing we do regarding boundary conditions is to define two new boundary conditions for fluid-fluid coupling, but without touching any existing ones:

@user2045 do you maybe have any new information/clues/guesses about it?

I have some more information. The same problem is also present if I try to change the pressure boundary condition:

With adapter:

--> FOAM FATAL IO ERROR: (openfoam-2206)
Unknown patchField type banana for patch type patch
 
Valid patchField types :
 
131
(
MarshakRadiation
MarshakRadiationFixedTemperature
acousticWaveTransmissive
advective
alphaFixedPressure
alphatJayatillekeWallFunction
calculated
codedFixedValue
codedMixed
compressible::alphatJayatillekeWallFunction
compressible::alphatWallFunction
compressible::thermalBaffle1D<hConstSolidThermoPhysics>
compressible::thermalBaffle1D<hPowerSolidThermoPhysics>
compressible::turbulentTemperatureCoupledBaffleMixed
compressible::turbulentTemperatureRadCoupledMixed
constantAlphaContactAngle
convectiveHeatTransfer
coupledPressure
cyclic
cyclicACMI
cyclicAMI
cyclicSlip

without adapter:

--> FOAM FATAL IO ERROR: (openfoam-2206)
Unknown patchField type banana for patch type patch
 
Valid patchField types :
 
140
(
MarshakRadiation
MarshakRadiationFixedTemperature
acousticWaveTransmissive
advective
alphaFixedPressure
alphatJayatillekeWallFunction
atmAlphatkWallFunction
atmBoundaryLayerInletEpsilon
atmBoundaryLayerInletK
atmBoundaryLayerInletOmega
atmEpsilonWallFunction
atmNutUWallFunction
atmNutWallFunction
atmNutkWallFunction
atmOmegaWallFunction
atmTurbulentHeatFluxTemperature
calculated
codedFixedValue
codedMixed
compressible::alphatJayatillekeWallFunction
compressible::alphatWallFunction
compressible::thermalBaffle1D<hConstSolidThermoPhysics>
compressible::thermalBaffle1D<hPowerSolidThermoPhysics>
compressible::turbulentTemperatureCoupledBaffleMixed
compressible::turbulentTemperatureRadCoupledMixed
constantAlphaContactAngle
convectiveHeatTransfer
cyclic
cyclicACMI
cyclicAMI
cyclicSlip

In this case there are more than just one boundary condition that is gone, but it seems to be just the boundary conditions starting with “atm”. So loading the adapter somehow makes openfoam not read any of the atmospheric boundary conditions.

I tried to change the RAS model to see if the problem is restricted to boundary conditions. Changing RAS model to kEpsilonLopesdaCosta, which is in “src/atmosphericModels”, gave me the same problem. That is, it is unable to find the RAS-model if i load the adapter. Hence, it seems likely that the full set of atmospheric models is not read when the PreCICE adapter is loaded.

Sounds very very strange. Could you please open an issue in the OpenFOAM adapter repository, explaining how I could reproduce the problem?

Do you have any idea if this already happened with v1.2.3? No need to try if you don’t.