Coupling problem about in-house OpenFOAM solver with CalculiX by preCICE

Hi everyone,

I faced a problem when using preCICE 2.4.0 to couple an in-house code (Solver A) developed based OpenFOAM-4.x and CalculiX-2.15. Any help or advice would be greatly appreciated!!

The FSI case used to test the above coupling run successfully with interDyMFoam, CalculiX and preCICE. However, when the interDyMFoam was changed to Solver A, the following error occurred at the second inner iteration of the first time step.

FOAM FATAL ERROR:
V0 is not available

From function const Internal& Foam::fvMesh::V0() const
in file fvMesh/fvMeshGeometry.C at line 221.

FOAM aborting

#0 Foam::error::printStack(Foam::Ostream&) at ??:?
#1 Foam::error::abort() at ??:?
#2 Foam::fvMesh::V0() const at ??:?
#3 Foam::fvMesh::Vsc() const at ??:?
#4 Foam::fv::EulerDdtScheme::fvmDdt(Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&) at ??:?
#5 ? at ??:?
#6 __libc_start_main in “/lib64/libc.so.6”
#7 ? at ??:?

It was noted that the Solver A has been validated and was able to predict the 3D flow field with no errors. Complete log file for fluid part, structure part and error message can be found
error.out (3.8 KB)
fluid.log (16.1 KB)
solid.log (4.3 KB)
precice-Calculix-convergence.log (115 Bytes)
precice-config.xml (3.0 KB)

Does anyone have ideas about it? Many thanks in advance!!

Hi, there

Does anyone have some ideas about this error? I found a similar error message here, but the solution is not related to the current coupling approach.

Hi @yhuang,

during implicit coupling, and before starting a new coupling time window, the adapter tries to checkpoint the complete state of the solver, including all available fields. Some higher-order time integration schemes of OpenFOAM also register fields (especially the mesh state) in previous times. This is what the fields V0 and V00 are.

The adapter does that here:

I guess this solver does not register a V0 field. You could try disabling the respective part of the code and see if that works for you. But I think that @Alphaoo1 may have some idea regarding this solver (I may be mistaken).

Hi @Makis

Thank you very much for your detailed guidance. I tried disabling the respective part of the code, as you mentioned above. Unfortunately, I still got the same error message.
error.out (64.7 KB)

I have also tried higher-order time integration schemes, while the error message was still the same.