Problem: My custom 3D Elastic Tube case is not working correctly.
Version
preCICE:3.1.1
OpenFOAM:2012
OpenFOAM-adapter:1.3.1
Aim : Referring to the official preCICE Fluid-Structure Coupling (FSI) module example 3D Elastic Tube , I want to build a my-solid-openfoam example to replace the official solid-calculix example.(The my-fluid-openfoam example uses the pimpleFoam solver; the my-solid-openfoam example uses the solids4foam-2.2 solver.)
Geometric settings : I am using a geometry that I constructed myself. The internal fluid is a cylinder with a radius of 5 millimeters. The external solid is a cylindrical ring with a thickness of 1 millimeter (similar to the official 3D Elastic Tube), but my case is 20 centimeters long (the official case is 5 centimeters), and my meshing is also different from the official one.
solid:
fluid:
Solvers :The “my-fluid -openfoam” case uses the pimpleFoam solver; the “my-solids4foam-openfoam” case uses the solids4foam-2.2 solver.
Actions :
-
111myFSI (the exchanged data is Displacement): The my-fluid-openfoam case fully adopts the fluid-openfoam case settings in 3D Elastic Tube. The my-solids4foam-openfoam references the preCICE official case Perpendicular flap, setting the ‘0’, ‘constant’, and ‘system’ folders. For specific configurations, please refer to the attachment ‘111myFSI.zip’.
Error message (fluid):#0 Foam::error::printStack(Foam::Ostream&) at ??:?
#1 Foam::sigFpe::sigHandler(int) at ??:?
#2 ? in /lib/x86_64-linux-gnu/libpthread.so.0
#3 Foam::GAMGSolver::scale(Foam::Field&, Foam::Field&, Foam::lduMatrix const&, Foam::FieldField<Foam::Field, double> const&, Foam::UPtrList<Foam::lduInterfaceField const> const&, Foam::Field const&, unsigned char) const at ??:?
#4 Foam::GAMGSolver::Vcycle(Foam::PtrListFoam::lduMatrix::smoother const&, Foam::Field&, Foam::Field const&, Foam::Field&, Foam::Field&, Foam::Field&, Foam::Field&, Foam::Field&, Foam::PtrList<Foam::Field >&, Foam::PtrList<Foam::Field >&, unsigned char) const at ??:?
#5 Foam::GAMGSolver::solve(Foam::Field&, Foam::Field const&, unsigned char) const at ??:?
#6 Foam::fvMatrix::solveSegregated(Foam::dictionary const&) at ??:?
#7 Foam::fvMatrix::solveSegregatedOrCoupled(Foam::dictionary const&) at ??:?
#8 Foam::fvMesh::solve(Foam::fvMatrix&, Foam::dictionary const&) const at ??:?
#9 ? in ~/OpenFOAM/OpenFOAM-v2012/platforms/linux64GccDPInt32Opt/bin/pimpleFoam
#10 __libc_start_main in /lib/x86_64-linux-gnu/libc.so.6
#11 ? in ~/OpenFOAM/OpenFOAM-v2012/platforms/linux64GccDPInt32Opt/bin/pimpleFoamThen,fluid use RBFMeshMotionSolver in ‘dynamicMeshDict’file
dynamicFvMesh dynamicMotionSolverFvMesh;motionSolverLibs (“libfvMotionSolvers.so” “libRBFMeshMotionSolver.so”);
// Radial basis function solversolver RBFMeshMotionSolver;
RBFMeshMotionSolverCoeffs
{
// Settings for the RBF solver
//staticPatches (upperWall lowerWall);//dev
staticPatches ();
movingPatches (interface);
fixedPatches (auto0 auto2);
interpolation
{
function TPS;
}
coarsening
{
enabled no;
}
}Error message (fluid):
request for pointVectorField pointDisplacement from objectRegistry region0 failed
available objects of type pointVectorField are
0() -
222myFSI (the exchanged data is Displacementdelta): The my-fluid-openfoam case is fully set up based on the fluid-openfoam case in 3D Elastic Tube, and the my-solids4foam-openfoam references the preCICE official case Perpendicular flap for the ‘0’, ‘constant’, and ‘system’ folders. For specific configurations, please refer to the attachment ‘222myFSI.zip’.
Error message(solid4foam):
Writing displacementDeltas is not supported.
111myFSI.zip (3.6 MB)
222myFSI.zip (547.9 KB)






