Hello
Hope you are all well
I was working on an FSI case setup using OF and CalculiX for flow over an elastic sphere and received an error that I noticed a few other people got in the posts below.
This is the error I got when executing ./run.sh for the fluid side:
—[precice] I am participant “Fluid”
—[preciceAdapter] [DEBUG] preCICE solver interface was created.
—[preciceAdapter] [DEBUG] Creating interfaces…
—[preciceAdapter] [DEBUG] Number of face nodes: 3600
—[preciceAdapter] [DEBUG] Interface created on mesh Fluid-Mesh-Nodes
—[preciceAdapter] [DEBUG] Adding coupling data writers…
—[preciceAdapter] [DEBUG] Adding coupling data readers…
→ FOAM FATAL ERROR: (openfoam-2106)
request for pointVectorField pointDisplacement from objectRegistry region0 failed
available objects of type pointVectorField are
0()
From const Type &Foam::objectRegistry::lookupObject(const Foam::word &, bool) const [with Type = Foam::GeometricField<Foam::Vector, Foam::pointPatchField, Foam::pointMesh>]
in file /scratch/projects/UNT/apps/OpenFoam/OpenFOAM-v2106/src/OpenFOAM/lnInclude/objectRegistryTemplates.C at line 463.
FOAM aborting #0 Foam::error::printStack(Foam::Ostream&) at ??:? #1 Foam::error::exitOrAbort(int, bool) at ??:? #2 Foam::GeometricField<Foam::Vector, Foam::pointPatchField, Foam::pointMesh> const& Foam::objectRegistry::lookupObject<Foam::GeometricField<Foam::Vector, Foam::pointPatchField, Foam::pointMesh> >(Foam::word const&, bool) const at ??:? #3 preciceAdapter::FSI::DisplacementDelta::DisplacementDelta(Foam::fvMesh const&, std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::__cxx11::basic_string<char, std::char_traits, std::allocator >) at ??:? #4 preciceAdapter::FSI::FluidStructureInteraction::addReaders(std::__cxx11::basic_string<char, std::char_traits, std::allocator >, preciceAdapter::Interface*) at ??:? #5 preciceAdapter::Adapter::configure() at ??:? #6 Foam::functionObjects::preciceAdapterFunctionObject::read(Foam::dictionary const&) at ??:? #7 Foam::functionObjects::preciceAdapterFunctionObject::preciceAdapterFunctionObject(Foam::word const&, Foam::Time const&, Foam::dictionary const&) at ??:? #8 Foam::functionObject::adddictionaryConstructorToTableFoam::functionObjects::preciceAdapterFunctionObject::New(Foam::word const&, Foam::Time const&, Foam::dictionary const&) at ??:? #9 Foam::functionObject::New(Foam::word const&, Foam::Time const&, Foam::dictionary const&) at ??:? #10 Foam::functionObjectList::read() at ??:? #11 Foam::Time::run() const at ??:? #12 Foam::Time::loop() at ??:? #13 Foam::simpleControl::loop() at ??:? #14 ? at ??:? #15 __libc_start_main in /usr/lib64/libc.so.6 #16 ? at ??:?
I am using snappyHex to generate the fluid mesh. Is that a potential reason why I am getting this error? I have attached my case folder below if that helps. sphere_0810.zip (380.8 KB)
Hi @Makis
Okay. Let me try this.
I did switch the fluid mesh to one generated from a commercial software and still encountered the same error so does that mean that the adapter is still the issue?
This is the error message, essentially meaning that either there is no such field, it is named differently, or it has a different type. Assuming that you are now using solids4foam, are you using the latest develop version of it? Have you modified your dynamicMeshDict compared to the files you attached above?
I don’t have access to this file, but I guess only a few files are relevant.
I don’t know if you noticed already, but we recently added a solids4foam case for our perpendicular flap tutorial: Perpendicular flap | preCICE - The Coupling Library Maybe it also helps comparing the configs.
Can you run the perpendicular flap tutorial fluid-openfoam case, configuring with RBFMeshMotionSolver, as Philip describes here?
I guess one aspect we have not checked is whether simpleFoam works at all (it should), as we mostly use pimpleFoam in our FSI tutorials.
You are right, as we have not yet released a new version of the tutorials (but the website points to “develop”, which can be misleading in situations like this). Just go to the develop branch: GitHub - precice/tutorials at develop
There is probably a misunderstanding here. The RBF Mesh Motion Solver is provided by solids4foam, and you can use it in your fluid solver, if you have solids4foam installed. It does not matter what solver you have on the Solid side.