CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (http://www.cfd-online.com/Forums/openfoam-solving/)
-   -   What is the best "way" to get vortex shedding ? (http://www.cfd-online.com/Forums/openfoam-solving/63082-what-best-way-get-vortex-shedding.html)

 harly March 27, 2009 16:25

What is the best "way" to get vortex shedding ?

Hi,

I am super stuck with my problem for a while now and I am running out of ideas.

Here is what I am doing:

I have 3D cases: sphere (D=1m and 2m) in a rectangular domain.

I am able to reproduce the drag coefficients for Re 50, 100, 150 and 200 using icoFoam.

So the tricky part is now, that for Re greater than 250 the flowfield should become asymmetric and for Re greater 300 there should be vortex shedding.

Yeah - you guessed it - that's not happening. The flow stays symmetric and no vortex shedding occurs (ever :( ).

I tried asymmetric initialization of the domain different Re. (up to 500) nothing happens.

I am open for any Ideas. One of my meshes is a snappyHexMesh - so if someone wants to play with the case I could easily zip my case and send it to you.

On the other hand if someone has a working sphere case with vortex shedding I would love to take a look at it maybe I can borrow some ideas.

If you want more Information on the case - I would be happy to post everything you need.

Thank you

- harly

 msrinath80 March 27, 2009 16:54

I have a question about the use of terminology:

Doesn't the onset of asymmetry in the velocity field downstream of the sphere beyond a critical Re imply that the flow field is unsteady and that vortex shedding has begun? Or is there a range of Reynolds numbers after the critical Re for which there is no vortex shedding as harly puts it.

 harly March 27, 2009 17:14

my reference

Hi,

so from what I am understanding - it seems there are in fact (at least) 3 different "areas".

A symmetric in the region up to Re 200

An asymmetric in the region 200 < Re < 250 in which there is supposed to be a asymmetric field distribution but no shedding - which results in constant Drag and lift coefficients (lift not zero).

A shedding domain at Re > 300

So my reference on this is T.A. Johnson and V. C. Patel

"Flow past a sphere up to a Reynolds number of 300"

yours,
Daniel

P.S. If you want I can send you my reference paper.

 juho March 27, 2009 18:10

A year or so ago I did some vortex shedding simulations with a flat plate.

My experience was that with a poor tetrahedral mesh the vortex shedding started on its own. With a perfectly symmetrical hexahedral mesh this didn't happen.

I kickstarted the shedding by giving a small wall normal velocity component on the top boundary of the channel for a couple of timesteps. ie turning the top boundary temporarely into an inlet. After this kickstart the shedding continued indefinately.

 harly March 27, 2009 18:46

Hey,

thanx for the input - maybe I will give your method a shot. Right now I try to kickstart it with initializing the Field lets say with 0.305 for +y and 0.295 for -y while having an inlet speed of 0.3 (which by the way works like a charm in 2D but somehow it is not working for my 3D{I have to add, that the 2D case is a Re 20000 of a square cylinder computed with turbFoam - which means constant timesteps}).

For your Idea with the mesh - I had the exact same idea and therefore I've created my snappyHexMesh - which is far away form being symmetric in any direction :) - my hexahedrical mesh was created in Gambit.

Both meshs refuse to work, though.

-harly

One question, was the plate 3D or 2D - if it was 3D I would love to see your fvScheme File as well as your init files for U,p,... - of course only if you have the files by your hand if not don't worry - somehow I can't imagine, that there is a mistake in my files that would prevent vortex shedding ...

 juho March 27, 2009 19:05

First a 2D case and then a 3D with oodles. This was a closed channel with the plate not quite touching the sides of the channel. So really a 3D geometry.The 2D definately needed the kickstart, but I can't remember what was the case with the 3D.

Unfortunately I no longer have the case files but I don't think there was anything remarkable in them. I believe you should get vortices with the default settings in icoFoam.

 harly March 27, 2009 19:14

Hey,

Yeah I would have thought so too, but I just don't get it to work - if someone has the time and the motivation to give it a try I would be more than happy to send you my case. Meanwhile I have the following two ideas running:

Calculated a Sphere with Re = 300 with icoFoam until it is 3/4 to convergence than I switched to turbFoam without the turbulencemodels(only for the timestep).

Additional to that I am running a version with a really "big" kickstart and will see how that goes.

I am really desperate right now - I am working for over two months on this problem now ....

-harly

 santos March 28, 2009 05:31

Hi Daniel,

How do your fvSchemes and fvSolution files look like?

If you want, you can post your case here in the forum, and I may give it a try.

Regards,
Jose Santos

 harly March 28, 2009 15:04

Hi,

here is the link to my case with the variables set to Re = 300 (but feel free to doublecheck):

http://harly.de.vu/www/spherecase.zip

-harly

 harly March 28, 2009 15:12

Used fvSchemes and fvSolution files

Hi - here are the config files I am using:

FoamFile
{
class dictionary;
object fvSchemes;
}

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

ddtSchemes
{
default CrankNicholson 0.5;
}

{
default fourth;

}

divSchemes
{
default none;
div(phi,U) Gauss limitedLinear 1.0 phi;
}

laplacianSchemes
{
default none;
laplacian(nu,U) Gauss linear corrected;
laplacian((1|A(U)),p) Gauss linear corrected;

laplacian(diffusivity,cellMotionU) Gauss linear corrected;
}

interpolationSchemes
{
default linear;
interpolate(HbyA) linear corrected;
}

{
default corrected;
}

fluxRequired
{
default no;
p;
}

// ************************************************** ******* //

FoamFile
{
class dictionary;
object fvSolution;
}

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
solvers
{
p PCG
{
preconditioner DIC;
tolerance 1e-07;
relTol 0;
};

U PBiCG
{
preconditioner DILU;
tolerance 1e-06;
relTol 0;
};
}
PISO
{
nCorrectors 2;
nNonOrthogonalCorrectors 0;
pRefCell 0;
pRefValue 0;
}
// ************************************************** *********//

-harly

 alberto March 29, 2009 02:29

Hi,

did you try with the linear scheme for the divergence term and backward as time scheme? This would ensure second order accuracy.

Regards,

 harly March 29, 2009 03:17

Hi,

so far I only tried the linear with the CrankNicholson(not backward) - but - isn't that second order too ?

Do you think that would help with the shedding ?

I can give it a try as soon as one of my clients frees up.

-harly

 alberto March 29, 2009 12:08

Hi Harly,
I asked because your fvScheme contains CrankNicholson 0.5, while the pure CrankNicholson scheme should be specified with "1", to give second order accuracy (see user's manual, p.U-112).
In my experience backward gives better results in LES for examples, that's why I suggested it. However you should see the shedding also with CranckNicholson.

Best,

 albcem March 30, 2009 15:29

Are you getting a very elongated attached wake with time?

Using a second order scheme to trigger shedding does not seem to be the most direct and may be effective way to obtain results. What triggers shedding is the asymmetry due to perturbations from the outside environment or imperfect geometry in real life and numerical inaccuracies in CFD. However, for coarse grids one may be dissipating the small numerical errors/asymmetries, so refining the mesh might help in these cases. If you are going this track, also rotate the mesh geometry by a very small angle to make sure it is no longer symmetric about center plane lined up with the free stream. I think the easiest way to start is to perturb the instability aggressively by introducing an error in a variable like u or p and keep patient. I had a similar situation with my PhD code for flow over cylinder and this approach worked. I think someone above suggested this and I stand behind it. You say you switched to a turbulent solver but with turbulence switched off? What use is this, I could not sense?

Cem

 santos March 30, 2009 19:55

Hi,

Regards,
Jose Santos

Quote:
 Originally Posted by harly (Post 211148) Hi, here is the link to my case with the variables set to Re = 300 (but feel free to doublecheck): http://harly.de.vu/www/spherecase.zip -harly

 alberto March 31, 2009 02:25

Quote:
 Originally Posted by albcem (Post 211320) However, for coarse grids one may be dissipating the small numerical errors/asymmetries, so refining the mesh might help in these cases.
That's exactly the point of using more accurate schemes too: reducing numerical dissipation.

Quote:
 If you are going this track, also rotate the mesh geometry by a very small angle to make sure it is no longer symmetric about center plane lined up with the free stream.
Do you mean introducing "non-orthogonality" in the direction of the flow? This should not be necessary to have the formation of the structures. Anyway, with a sphere inside the domain, you do not have a perfectly symmetric and orthogonal mesh anyway around the obstacle.

Btw, did you see Frank Bos work on the flow around a cylinder? It is discussed here

http://www.cfd-online.com/Forums/ope...-re-3d150.html

Regards,

 harly March 31, 2009 13:12

@santos

I am sorry about the link, but it works for me if you could send me an email to openfoam.messageboard at gmail.com - I will reply to you and attach my case.

@all

Thanks for the suggestions - in fact I saw the work Frank Bos did with cylinders and I will have a closer look at it now, because I started a 2D case of a circular cylinder and again was not able to obtain vortex shedding. I will report back as soon one of my cases gives me any usable result. But for now the 2D square cylinder is the only one which gives me vortex shedding.

Oh and I checked the snappyHexMesh version of my mesh is not even symmetric to the symmetry planes - so it should be the perfect mesh ...

-harly

 santos April 1, 2009 07:37

Hi Daniel,

I had a look at your case, and I think your mesh is not fine enough in the region around the sphere. The critical region may be the wake downstream the sphere.

Regards,
Jose Santos

 harly April 1, 2009 17:05

Thx for checking my case, so you think the problem is in the mesh? - I will create a finer mesh and will report back before I let it run. Do you have any suggestions regarding the schemes and solver I use ? Once the Calculation is running it will probably take 5 days depending on how much bigger the mesh gets.

-harly

 harly April 1, 2009 17:29

@albcem:

I am very sorry somehow I overread your first post. Can you explain to me how you would preturbate the flow ? And to your question of the turbulence model switched off - generated a question below.

@all

So from what I gathered:

- a switch to complete 2nd order aka backward in time and Gauss linear in space

- a refinement of the mesh

- preturbation of flow

could do the trick, right ?

Which solver would you use ? - so far I was using icoFoam, because I was under the impression I don't need a turbulence model like for the 2D case Frank Bos presents. That explains also, why I used turbulence model switched off in turbFoam. - But maybe that could be the mistake?
-harly

All times are GMT -4. The time now is 09:07.