|
[Sponsors] |
January 12, 2008, 12:36 |
Hello all,
For my graduatio
|
#1 |
Member
feng wang
Join Date: Mar 2009
Posts: 67
Rep Power: 17 |
Hello all,
For my graduation project, I 'm going to use a fluid structure interaction solver. So far I'm using icoStructFoam.First, I run the first case posted on the wiki for validation ,say Deformable channel. but the results i got is different from those on the wiki. The problems are the fluid mesh is deformed,but the solid one is not, so the results i got shows that the solid-domain over-laps the fluid domain, and the distribution of stresses in the solid domain are also not correct. I am not sure what is wrong, I think the solver is good, for many guys have tried it.but from the results i got there are problems in communication between the fluid and the structure. Thanks in advance Feng |
|
January 14, 2008, 05:54 |
Hi Feng!
The solid mesh is
|
#2 |
Assistant Moderator
Bernhard Gschaider
Join Date: Mar 2009
Posts: 4,225
Rep Power: 51 |
Hi Feng!
The solid mesh is NOT deformed during the calculation, but its deformation is calculated (sounds a bit Zen, but if you look at the source you will be enlightenend ;) ). The deformation has to be visualized during postprocessing and I answered that already last week: http://www.cfd-online.com/OpenFOAM_D...es/1/6334.html @the solver: it was only a first shot at coupling solvers. Because of the undeformed solid mesh I am only confidenet with it for small deformations. At least have a look at icoFsiFoam in Hrv's-dev for an alternate implementation Bernhard
__________________
Note: I don't use "Friend"-feature on this forum out of principle. Ah. And by the way: I'm not on Facebook either. So don't be offended if I don't accept your invitation/friend request |
|
January 15, 2008, 04:51 |
Hi Bernhard,
happy new year
|
#3 |
Senior Member
Fabian Braennstroem
Join Date: Mar 2009
Posts: 407
Rep Power: 19 |
Hi Bernhard,
happy new year :-) As it says on the wiki, the deformation of the solid is done by the pressure field. Would it be possible to add a deformation of the solid due to temperature as well, e.g. a movement of bi-metals in the flow? Would be nice! Fabian |
|
January 15, 2008, 07:53 |
Hi Fabian!
In principle yes
|
#4 |
Assistant Moderator
Bernhard Gschaider
Join Date: Mar 2009
Posts: 4,225
Rep Power: 51 |
Hi Fabian!
In principle yes. The only problem is that in iceStructFoam the energy/temperature is not implemented (but should be easy to do - basically by "stealing" from the relevant solvers), Basically the coupling of the temperatures (==heat transfer) can be implemented similar to the pressure BUT (and that is the part that is a bit harder to get to work stable) it has to work both ways (fluid->solid, solid->fluid). The mesh movement part doesn't care whether the displacement is due to pressure or thermal expansion so it won't have to be changed. Currently I'm not activly working on FSI stuff (I managed to pass that to someone else at our place) and the icoStructFoam was only intended as a starting point. I think that because the numbers (N and M) of possible phenomena (engergy, turbulence, etc) in the two media a general basically multiplies with each other a "general" FSI-solver would be more complex than necessary for a demo. But, if anybody is interested, I could put a version for 1.4.1 on the openfoam-extend-svn and whoever wants to extend it can have a go at it (maybe we can get some collaborative effort going) Bernhard
__________________
Note: I don't use "Friend"-feature on this forum out of principle. Ah. And by the way: I'm not on Facebook either. So don't be offended if I don't accept your invitation/friend request |
|
January 15, 2008, 18:59 |
Hi Bernhard
I' ve got the d
|
#5 |
Member
feng wang
Join Date: Mar 2009
Posts: 67
Rep Power: 17 |
Hi Bernhard
I' ve got the deformed mesh. ^_^. But after analysing the results I found sigamma_yy on the interface of the mesh does not conincide with the pressure of the fluid. I read a message you posted which said I should replace the line solidP[exchange[fI]]=fluidP[fI]; with something like solidP[exchange[fI]]=fluidRho*fluidP[fI]; I put the definition of fluidRho in the creaticoFields.H( I am a new user of OF, this is the only place I found proper ). and this file changes to Info<< "Reading transportProperties\n" << endl; IOdictionary transportProperties ( IOobject ( "transportProperties", runTime.constant(), mesh1, IOobject::MUST_READ, IOobject::NO_WRITE ) ); dimensionedScalar fluidRho ( transportProperties.lookup("fluidRho") ); dimensionedScalar nu ( transportProperties.lookup("nu") ); Info<< "Reading field p\n" << endl; volScalarField p ( IOobject ( "p", runTime.timeName(), mesh1, IOobject::MUST_READ, IOobject::AUTO_WRITE ), mesh1 ); Info<< "Reading field U\n" << endl; volVectorField U ( IOobject ( "U", runTime.timeName(), mesh1, IOobject::MUST_READ, IOobject::AUTO_WRITE ), mesh1 ); # include "createPhi.H" label pRefCell = 0; scalar pRefValue = 0.0; setRefCell(p, mesh1.solutionDict().subDict("PISO"), pRefCell, pRefValue); But when I compile the solver, I end up with errors icoStructFoam.C: In function 'int main(int, char**)': icoStructFoam.C:224: error: cannot convert 'Foam::dimensionedScalar' to 'double' in assignment On the other, if I just replace the line solidP[exchange[fI]]=fluidP[fI]; with something like solidP[exchange[fI]]=1000*fluidP[fI]; the results is terribly wrong!(In fact, the caculation in the fluid domain can not proceed and yeild no results) All the best Feng |
|
January 16, 2008, 09:47 |
Hi Bernhard,
thanks for you
|
#6 |
Senior Member
Fabian Braennstroem
Join Date: Mar 2009
Posts: 407
Rep Power: 19 |
Hi Bernhard,
thanks for your help. Maybe there is a chance to combine the 'struct' solver with the 'new' CHT solver of Hrvoje!? A 1.4.1 version would be nice, if there is not such big difference to the april's 1.5 version... otherwise I could wait for the 1.5 'struct' version ;-) Greetings! Fabian |
|
January 21, 2008, 14:26 |
Hi Fabian!
An updated versi
|
#7 |
Assistant Moderator
Bernhard Gschaider
Join Date: Mar 2009
Posts: 4,225
Rep Power: 51 |
Hi Fabian!
An updated version for 1.4.1 now is available on the extend-svn by typing (or copying to the command line ;) ) these magic words: svn checkout https://openfoam-extend.svn.sourceforge.net/svnroot/openfoam-extend/trunk/Breede r/solvers/other/IcoStructFoam I havn't tested it too much (it compiles and the cases run) Currently I don't have plans to extend/change the solver (apart from porting to new versions), so anybody who thinks that he might improve it should contact me by eMail and might get write access to it Bernhard BTW: I think Hrvs solver is around at least as long as icoStructFoam. Must have a look what the differences are (once I find time)
__________________
Note: I don't use "Friend"-feature on this forum out of principle. Ah. And by the way: I'm not on Facebook either. So don't be offended if I don't accept your invitation/friend request |
|
January 22, 2008, 06:00 |
Hi Bernhard,
thanks, will d
|
#8 |
Senior Member
Fabian Braennstroem
Join Date: Mar 2009
Posts: 407
Rep Power: 19 |
Hi Bernhard,
thanks, will do it at home and will take a look at it ... in my spare time... Regards! Fabian |
|
February 14, 2013, 15:31 |
|
#9 |
Senior Member
Mieszko Młody
Join Date: Mar 2009
Location: POLAND, USA
Posts: 145
Rep Power: 17 |
Dear Bernhard,
and anyone who can help... I am working currently on a solver with a moving mesh. Actually one boundary is changing according to solution of some other equation. I implemented the mesh changes the same as in icoSructFoam solver. But to update my mesh I need to add following line: HTML Code:
mesh.update(); I am confused because my mesh is not get updated without this command, but mesh in icoSructFoam is updated... Moreover my solution, after mesh is updated, behaves somehow strange. Energy is added to the system, what is not a case if mesh is not deformed... I hope anyone will have any suggestions. ZMM |
|
February 14, 2013, 18:25 |
|
#10 |
Senior Member
Mieszko Młody
Join Date: Mar 2009
Location: POLAND, USA
Posts: 145
Rep Power: 17 |
Hi,
HTML Code:
mesh.update(); But I still have the problem with energy being added to the system after mesh is changed. It happens for simple diffusion equation: HTML Code:
fvScalarMatrix omEqn ( dimDt*fvm::ddt(om) - fvm::laplacian(dimensionedScalar("1",dimensionSet(0, 2, 0, 0, 0),1), om) ); omEqn.solve(); But if mesh is changed "little more than a little" then "om" gets stronger and stronger with each time step... Do you have any clue why it is like that ?? thanks ZMM |
|
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
fluid structure interaction | taru agrawal | FLUENT | 4 | September 10, 2007 04:12 |
FLUID STRUCTURE INTERACTION | Javier | Main CFD Forum | 5 | October 11, 2004 05:22 |
Fluid & Structure Interaction... | nesusa | FLUENT | 1 | March 31, 2002 22:30 |
Fluid-Structure Interaction for VOF | Zi-Wei Chiou | Main CFD Forum | 4 | November 27, 2001 10:26 |
Fluid Structure Interaction | Delly | Main CFD Forum | 2 | November 26, 2001 13:01 |