You have to compile the solver first. See this one http://www.cfd-online.com/Forums/ope...tml#post317171
Good luck! |
4 Attachment(s)
Hi again. I'm trying to set up a FSI between a horizontal plate inside a fluid with the leading edge of the plate fixed. The basic geometry is similar to this one http://www.cfd-online.com/Forums/ans...tml#post293664
I want to test Charbel's solver for a 3D case using LES. I successfully modified the original consoleFluid so LES is used instead of laminar flow. I create 2 meshes in gambit, one for the surrounding fluid (with the plate as a void) and another one with the plate only as my solidMesh. I convert them using fluent3DmeshToFoam. When I run the case I get the following error: --> FOAM FATAL ERROR: Problem with patch interpolation definition From function testVorflexFoam in file readCouplingProperties.H at line 30. FOAM aborting Aborted the readCouplingProperties.H looks like this: // Read solid patch data word solidPatchName(couplingProperties.lookup("solidPat ch")); label solidPatchID = stressMesh.boundaryMesh().findPatchID(solidPatchNa me); // Read fluid patch data word fluidPatchName(couplingProperties.lookup("fluidPat ch")); label fluidPatchID = mesh.boundaryMesh().findPatchID(fluidPatchName); if (solidPatchID < 0 || fluidPatchID < 0) { FatalErrorIn(args.executable()) << "Problem with patch interpolation definition" << abort(FatalError); } Do you guys know what is the meaning of this error? Is my procedure right? I'm attaching my boundary files for both solid and fluid meshes. I will appreciate any comments or information. Thanks BTW: What does the MotionU file do? |
Hi Santiago,
Go into ~/fluid/constant/couplingProperties and modify the patch names as follows: Code:
solidPatch plate; |
Hi,
I'm trying to extract the pressure that the fluid transfers to the plate. I see that at "setPressure.H" there is a scalarField created called "solidPatchPressure". Any idea of what I need to do in order to get these values and print them to a file? I want to take a look at those values and then apply the pressure to a finite element code to compare deformations. Any help? Thanks |
While trying to verify the pressure force exerted to the plate I come across the following line of code in setPressure.h
vector totalPressureForce = sum ( p.boundaryField()[fluidPatchID]* mesh.Sf().boundaryField()[fluidPatchID] ); While reading the pressure generated by p.boundaryField()[fluidPatchID] i see that the pressure is either negative or positive as expected. Then while reading mesh.Sf().boundaryField()[fluidPatchID] I see that we get the area vectors for each boundary cell and each of the component of this vector can be positive and negative. Now, when the product of the area vector and the pressure is done it seems to me that the final sign of the pressure Force will be screwed up since the scalar pressure (+ or -) is multiplied by the area vector components (also + or -). Shouldn't if be done so the pressure magnitud at the cell center is multiplied by the absolute value of the the area of the cell?? Does anyone know if this is a bug or if I am mistaken? Thanks |
Has anyone faced the same probolem?
I tried to modify fluid solver of icoFSIFoam to ultimately model EHL in ball bearing. The computation stops after a few iterations. In order to re-check the fluid solver with extended version, I tried to solve the fluid region separately. The computation diverged after a number of iteration while the same fluid solver on the same domain converged using OF 2.0.0 and OF 1.5!
|
Hi Charbel,
first of all thanks for sharing this FSI solver. I successfully compiled and ran it. Could you confirm that the computation is very slow on a single core : about 25 hours for 1sec of runTime ? Did you managed to set up a parallel version of it with e.g. in the Allrun file ?: decomposePar runParallel $application 4 reconstructPar I tried including a controlDecomposeParDict in my fluid/system folder but whithout any success : it is not working since the coupling with the solid solver is not done properly. I'd be very interested if you would came up with a solution like specifying X procs for the fluid and Y procs for the solid ! thanks Michael |
Hi Charbel,
Thanks a lot for sharing your FSI solver, pimpleFsiFoam. I also successfully compiled and ran the test case attached with the previous version in the thread #14. I'd like to ask you whether this solver can be applied to lower rhof/rhos cases. My application is deformation of beam like structure (a silicon rubber block) in a water with retatively slow flow velocity of 0.1 m/s. rho of fluid (water) is around 1000 kg/m3 and silicon rubber has almost the same, thus rhof/rhos is nearly unity. Even I changed fluid density from 1 to 1000 kg/m3, and adjusted time step, solver diverged in several time steps. Any comment will be highly appreciated. Best regards, waku |
Quote:
dear gascortado I have the same problem how I can remove this error I hvae ubuntu 10.04 please tell me how I can solve the Permission denied error ? best regards |
Greetings mechy,
Quote:
Code:
sudo ln -s ../tetFemMatrix/tetFemMatrices.H tetFemMatrices.H Bruno |
Hi,
I tried to set up pimpleFsiFoam under OF 1.5-dev, however, I failed! Do I need to install OF1.6 to use this solver? my procdure is to go into the directrory of pimpleFsiFoam and then typed in wclean and wmake. the error is following! :~/Desktop/pimpleFsiFoam$ wclean :~/Desktop/pimpleFsiFoam$ wmake Making dependency list for source file pimpleFsiFoam.C Making dependency list for source file tractionDisplacement/tractionDisplacementFvPatchVectorField.C could not open file turbulenceModel.H for source file pimpleFsiFoam.C could not open file dynamicFvMesh.H for source file pimpleFsiFoam.C could not open file createDynamicFvMesh.H for source file pimpleFsiFoam.C SOURCE=tractionDisplacement/tractionDisplacementFvPatchVectorField.C ; g++ -m32 -Dlinux -DDP -DFOAM_DEV_REVISION_NUMBER=exported -Wall -Wno-strict-aliasing -Wextra -Wno-unused-parameter -Wold-style-cast -O3 -DNoRepository -ftemplate-depth-40 -I/home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/dynamicMesh/dynamicFvMesh/lnInclude -I/home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/dynamicMesh/dynamicMesh/lnInclude -I/home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/meshTools/lnInclude -I/home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/turbulenceModels/incompressible/turbulenceModel -I/home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/transportModels -I/home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/transportModels/incompressible/singlePhaseTransportModel -I/home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/finiteVolume/lnInclude -DFACE_DECOMP -I/home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/tetDecompositionFiniteElement/lnInclude -I/home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/dynamicMesh/meshMotion/tetDecompositionMotionSolver/lnInclude -IlnInclude -I. -I/home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/OpenFOAM/lnInclude -I/home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/OSspecific/Unix/lnInclude -fPIC -pthread -c $SOURCE -o Make/linuxGccDPOpt/tractionDisplacementFvPatchVectorField.o SOURCE=pimpleFsiFoam.C ; g++ -m32 -Dlinux -DDP -DFOAM_DEV_REVISION_NUMBER=exported -Wall -Wno-strict-aliasing -Wextra -Wno-unused-parameter -Wold-style-cast -O3 -DNoRepository -ftemplate-depth-40 -I/home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/dynamicMesh/dynamicFvMesh/lnInclude -I/home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/dynamicMesh/dynamicMesh/lnInclude -I/home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/meshTools/lnInclude -I/home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/turbulenceModels/incompressible/turbulenceModel -I/home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/transportModels -I/home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/transportModels/incompressible/singlePhaseTransportModel -I/home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/finiteVolume/lnInclude -DFACE_DECOMP -I/home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/tetDecompositionFiniteElement/lnInclude -I/home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/dynamicMesh/meshMotion/tetDecompositionMotionSolver/lnInclude -IlnInclude -I. -I/home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/OpenFOAM/lnInclude -I/home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/OSspecific/Unix/lnInclude -fPIC -pthread -c $SOURCE -o Make/linuxGccDPOpt/pimpleFsiFoam.o pimpleFsiFoam.C:37:29: error: turbulenceModel.H: No such file or directory pimpleFsiFoam.C:38:27: error: dynamicFvMesh.H: No such file or directory pimpleFsiFoam.C:58:36: error: createDynamicFvMesh.H: No such file or directory tractionDisplacement/tractionDisplacementFvPatchVectorField.C: In member function ‘virtual void Foam::tractionDisplacementFvPatchVectorField::upda teCoeffs()’: tractionDisplacement/tractionDisplacementFvPatchVectorField.C:190: warning: suggest parentheses around ‘+’ in operand of ‘&’ tractionDisplacement/tractionDisplacementFvPatchVectorField.C:190: warning: suggest parentheses around ‘+’ in operand of ‘&’ tractionDisplacement/tractionDisplacementFvPatchVectorField.C:191: warning: suggest parentheses around ‘+’ in operand of ‘&’ In file included from pimpleFsiFoam.C:59: /home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/finiteVolume/lnInclude/readPIMPLEControls.H: In function ‘int main(int, char**)’: /home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/finiteVolume/lnInclude/readPIMPLEControls.H:1: error: ‘mesh’ was not declared in this scope In file included from pimpleFsiFoam.C:66: createFields.H:128: error: ‘incompressible’ was not declared in this scope createFields.H:128: error: template argument 1 is invalid createFields.H:129: error: invalid type in declaration before ‘(’ token createFields.H:130: error: ‘incompressible’ is not a class or namespace In file included from pimpleFsiFoam.C:67: createStressMesh.H:12: error: ‘New’ is not a member of ‘Foam::volPointInterpolation’ In file included from solveFluid.H:29, from weakCoupling.H:3, from pimpleFsiFoam.C:103: UEqn.H:5: error: base operand of ‘->’ is not a pointer In file included from weakCoupling.H:3, from pimpleFsiFoam.C:103: solveFluid.H:116: error: base operand of ‘->’ is not a pointer In file included from weakCoupling.H:7, from pimpleFsiFoam.C:103: solveSolid.H:24: warning: suggest parentheses around ‘+’ in operand of ‘&’ solveSolid.H:24: warning: suggest parentheses around ‘+’ in operand of ‘&’ solveSolid.H:25: warning: suggest parentheses around ‘+’ in operand of ‘&’ In file included from solveFluid.H:29, from onlyCFD.H:1, from pimpleFsiFoam.C:109: UEqn.H:5: error: base operand of ‘->’ is not a pointer In file included from onlyCFD.H:1, from pimpleFsiFoam.C:109: solveFluid.H:116: error: base operand of ‘->’ is not a pointer In file included from solveFluid.H:29, from strongCouplingConstant.H:5, from pimpleFsiFoam.C:115: UEqn.H:5: error: base operand of ‘->’ is not a pointer In file included from strongCouplingConstant.H:5, from pimpleFsiFoam.C:115: solveFluid.H:116: error: base operand of ‘->’ is not a pointer In file included from strongCouplingConstant.H:8, from pimpleFsiFoam.C:115: solveSolid.H:24: warning: suggest parentheses around ‘+’ in operand of ‘&’ solveSolid.H:24: warning: suggest parentheses around ‘+’ in operand of ‘&’ solveSolid.H:25: warning: suggest parentheses around ‘+’ in operand of ‘&’ In file included from solveFluid.H:29, from strongCouplingAitken.H:9, from pimpleFsiFoam.C:121: UEqn.H:5: error: base operand of ‘->’ is not a pointer In file included from strongCouplingAitken.H:9, from pimpleFsiFoam.C:121: solveFluid.H:116: error: base operand of ‘->’ is not a pointer In file included from strongCouplingAitken.H:12, from pimpleFsiFoam.C:121: solveSolid.H:24: warning: suggest parentheses around ‘+’ in operand of ‘&’ solveSolid.H:24: warning: suggest parentheses around ‘+’ in operand of ‘&’ solveSolid.H:25: warning: suggest parentheses around ‘+’ in operand of ‘&’ In file included from solveFluid.H:29, from strongCouplingAitken.H:36, from pimpleFsiFoam.C:121: UEqn.H:5: error: base operand of ‘->’ is not a pointer In file included from strongCouplingAitken.H:36, from pimpleFsiFoam.C:121: solveFluid.H:116: error: base operand of ‘->’ is not a pointer In file included from strongCouplingAitken.H:39, from pimpleFsiFoam.C:121: solveSolid.H:24: warning: suggest parentheses around ‘+’ in operand of ‘&’ solveSolid.H:24: warning: suggest parentheses around ‘+’ in operand of ‘&’ solveSolid.H:25: warning: suggest parentheses around ‘+’ in operand of ‘&’ /home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/finiteVolume/lnInclude/readPIMPLEControls.H:3: warning: unused variable ‘nOuterCorr’ /home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/finiteVolume/lnInclude/readPIMPLEControls.H:4: warning: unused variable ‘nCorr’ /home/c05arima/OpenFOAM/OpenFOAM-1.5-dev/src/finiteVolume/lnInclude/readTimeControls.H:40: warning: unused variable ‘maxCo’ pimpleFsiFoam.C:76: warning: unused variable ‘minGammaAitken’ pimpleFsiFoam.C:77: warning: unused variable ‘maxGammaAitken’ |
Greetings Masashi,
It's probably best that you try to use 1.6-ext instead, since 1.5-dev is AFAIK no longer under development. Best regards, Bruno |
Hi Dr. Habchi,
I read through one of your recent journal publications on the ability of the pimple fsi solver to deal with large structural displacements and rotations using the StVk constitutive model & ALE formulation of the N-S equations for the 2D case. However, I was curious to know whether the solver could be readily extended to a 3D case involving complicated flow and solid domains with unstructured tri + tetrahedral meshes, (e.g. modeling bio-fluid structure interactions). Regards |
Quote:
In fact mainly the solver can solve 3D case but the problem is that we cannot run parallel simulation. Meanwhile you can find in the thread below new solvers including FSI and which may run in parallel... http://www.cfd-online.com/Forums/ope...am-extend.html Regards |
Hi Charbel
I set up a FSI problem for compressible flow over naca0012 airfoil with pitching motion. So i created a compressible solver by combine pimplefsifoam and sonicfoam. Solver has been properly compiled. I create 2 meshes in gambit, one for the fluid and another one with the airfoil only as my solidMesh. I convert them using fluentmeshToFoam. When I run the case I get the following error: --> FOAM FATAL ERROR: Different dimensions for = dimensions : [0 0 1 0 0 0 0] = [-1 3 1 0 0 0 0] From function dimensionSet::operator=(const dimensionSet& ds) const in file dimensionSet/dimensionSet.C at line 143. FOAM aborting what's problem? |
Hi Charbel,
I am also a new user to OpenFOAM. May i know have you validate the icoFsiFoam for your application? Thanks. Regards, Vincent |
Quote:
I would like to know the correct implementation of this solver in OpenFOAM 1.6ext. Also, I am not sure that I have complied the updated solver (and test case). I would like to know whether you could post a link of the same. Thanks in advance. |
Dear All who posted this thread,
many thanks for this really useful thread. I'll try to post my planning in the next period of time to get help and advice from your side. Now, I'm working in vortex-induced vibration of an elastic circular cylinder using OpenFOAM. This is FSI problem including fluid and solid (elastic cylinder). I installed FSI solver in foam-extend-3.1. But I'm still struggling in the steps how to start working with this case in FSI solver. I already finished the VIV case for rigid cylinder. Now, I'm looking to get the simulation of an elastic one. For the elastic cylinder, the cylinder will change its shape because of some fluid forces affect on it. The equation that I have to solve here is the dynamic elasticity equation. Regarding my problem, I have some questions 1. Which solver is the best for my case, icoFsiFoam or icoFsiElasticNonLinULSolidFoam solver in solidMechanics tutorial? Do you have any idea which case should follow to help me in my case problem? I'm thinking about flappingConsoleSmall case, would that help? I'm looking forward to get your advice. I'll be really happy to work with you. What about mesh generation? Shall I generate mesh for the plate and another one for cylinder separately? Note that, I generated mesh for the VIV for the rigid cylinder case by Gmsh? Any idea please. Any answer would be really appreciated and many thanks in advanced. Sorry, I posted my problem in http://www.cfd-online.com/Forums/ope...tml#post532175 because I don't know the correct place to post my problem. |
History of displacement of flexible plate
Dear all,
I would like to know how to plot the history of displacement of flexible plate (solid region) with time. I used probesDict to get the history of Usolid for FSI case and it doesn't work. Thank you very much Yonni |
All times are GMT -4. The time now is 17:49. |