Discussion Closed This discussion was created more than 6 months ago and has been closed. To start a new discussion with a link back to this one, click here.

Flow past stationary circular cylinder at Re=100

Please login with a confirmed email address before reporting spam

Hello...

I am quite new to COMSOL. I am trying to use COMSOL multiphysics to solve the problem of flow past a circular cylinder. I solved the worked out example available in the manual. Now if I try a variant of this by just changing geometry I am not getting convergence.

My 2D fluid domain involves height of 24.1 units and length of 48 units. I am placing my cylinder at (12,12). My cylinder dia is 1 unit.

Imposing the inlet boundary condition at one end with velocity specified. At the other end I am imposing zero pressure outlet boundary condition. All the other boundaries are assigned no-slip wall condition.

Initial I am doing a static simulation with Re=30 the parameters are set to
Umax = 0.3
rho0 = 1
eta0 = 0.01
this works fine.

But once I try to solve the problem in transient domain I get into problem.
Here are some of the transient parameters I am using
I want to solve for Re=100.
Umax = 1
rho0 = 1
eta0 = 0.01
Inlet boundary velocity profile = 4*s*(1-s)*Umax*flc1hs(t[1/s]-1,0.1) to slowly ramp the load.
Absolute solver convergence criteria, I have reduced as low as 0.01.

For these parameters I expect the shedding time period to be around 6 seconds. So I am ramping the load till 1 second. The solver crashes just before reaching 1 sec.

I even attempted to get the initial conditions from the static by solving static at Re=100.

At first I tried solving using free mesh, which did not work, then I shifted to mapped mesh. I tried with fineness of the mesh, but no success.

I am in a strange situation. I am just tweaking the geometry of the standard problem given in the manual and I am facing this issue.

Any help in this regards would be greatly appreciated. Thanks in advance.

PS: I have attached my model file for reference.


Ravi


6 Replies Last Post May 31, 2010, 3:55 p.m. EDT
Jim Freels mechanical side of nuclear engineering, multiphysics analysis, COMSOL specialist

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago Jan 6, 2010, 10:25 a.m. EST
Ravi, I have not actually tried to run your model file, but I have a guess as to the problem. If the problem runs at steady state, then I suspect the time step is getting too large during the transient solution. What does the log file show during the solution ? What is the maximum Courant number at the time of failure ? Where does it occur ? Two recommendations: 1) keep the time-step smaller than a Courant number of 1 by either reducing the time step or increasing the mesh spacing, 2) gradually increase the Courant number by controlling the time step. The solution must converge at each time step similarly to the convergence at steady state. You also may need to adjust artificial dissipation. Even for low Reynolds number, the default GLS method will yield consistent results.
Ravi, I have not actually tried to run your model file, but I have a guess as to the problem. If the problem runs at steady state, then I suspect the time step is getting too large during the transient solution. What does the log file show during the solution ? What is the maximum Courant number at the time of failure ? Where does it occur ? Two recommendations: 1) keep the time-step smaller than a Courant number of 1 by either reducing the time step or increasing the mesh spacing, 2) gradually increase the Courant number by controlling the time step. The solution must converge at each time step similarly to the convergence at steady state. You also may need to adjust artificial dissipation. Even for low Reynolds number, the default GLS method will yield consistent results.

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago Jan 6, 2010, 7:43 p.m. EST
Thanks James for the suggestions.

Pardon me, I might be asking very basic question. As I said I am quite new to COMSOL. I don't know how about the Courant number, the log file just says this,

Time 0.9692946724378361:
Nonlinear solver interrupted since convergence rate above limit.
Last time step is not converged.

I assumed 0.0001 is small enough time step, I might be wrong. Could you please refer to portion of manual where I can understand more about Courant number and controlling the time step.

Thank you for your help.

Ravi
Thanks James for the suggestions. Pardon me, I might be asking very basic question. As I said I am quite new to COMSOL. I don't know how about the Courant number, the log file just says this, Time 0.9692946724378361: Nonlinear solver interrupted since convergence rate above limit. Last time step is not converged. I assumed 0.0001 is small enough time step, I might be wrong. Could you please refer to portion of manual where I can understand more about Courant number and controlling the time step. Thank you for your help. Ravi

Jim Freels mechanical side of nuclear engineering, multiphysics analysis, COMSOL specialist

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago Jan 7, 2010, 5:50 p.m. EST
Courant number is a classic parameter used in numerical analysis of systems that is independent of COMSOL. Courant number is not displayed or printed out as a standard variable in COMSOL, but can be by creating the variable and displaying it graphically if you want.

Think of a fluid particle flowing through a finite element in a single direction. This allows one to think of the finite element in a single dimension. If the time-step algorithm is explicit, then we know that we must restrict the Courant number to about half of unity (1/2). The simplest way to describe this is to think that the fluid particle cannot completely pass through the finite element in less than a single time step,

C = V dt / dx < 0.5

COMSOL is using superior implicit time stepping so that you should be able to use larger time steps and exceed the Courant limit; especially as the solution approaches steady state. However, one can be conservative and assured of stability if the Courant number is less than 0.5; especially during the initial part of a transient or a fast-moving portion of an established transient.

Expanding your thought process to 3D brings out different formulations (and names) for the Courant number, but the basic idea is the same. Google the string "Courant number' and it will yield some interesting links.
Courant number is a classic parameter used in numerical analysis of systems that is independent of COMSOL. Courant number is not displayed or printed out as a standard variable in COMSOL, but can be by creating the variable and displaying it graphically if you want. Think of a fluid particle flowing through a finite element in a single direction. This allows one to think of the finite element in a single dimension. If the time-step algorithm is explicit, then we know that we must restrict the Courant number to about half of unity (1/2). The simplest way to describe this is to think that the fluid particle cannot completely pass through the finite element in less than a single time step, C = V dt / dx < 0.5 COMSOL is using superior implicit time stepping so that you should be able to use larger time steps and exceed the Courant limit; especially as the solution approaches steady state. However, one can be conservative and assured of stability if the Courant number is less than 0.5; especially during the initial part of a transient or a fast-moving portion of an established transient. Expanding your thought process to 3D brings out different formulations (and names) for the Courant number, but the basic idea is the same. Google the string "Courant number' and it will yield some interesting links.

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago May 18, 2010, 3:23 a.m. EDT
Hi,

I'm having a similar problem in that I'm very new to COMSOL.
My task is to model both laminar and turbulent flow past a cylinder.

I've done this following a given laminar model that works, but when I change the parameters such as geometry of the cylinder to try and achieve turbulent flow, the program starts giving me the "doesn't converge" statement.

What am I doing wrong?
Is it the solver that I'm using?
Thanks!
Hi, I'm having a similar problem in that I'm very new to COMSOL. My task is to model both laminar and turbulent flow past a cylinder. I've done this following a given laminar model that works, but when I change the parameters such as geometry of the cylinder to try and achieve turbulent flow, the program starts giving me the "doesn't converge" statement. What am I doing wrong? Is it the solver that I'm using? Thanks!

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago May 19, 2010, 11:33 a.m. EDT
(V3.5)

Hello,
you start the ramp after 0.9 s, reaching Umax 0.2 s later?

I had no problem getting a time dependant solution without using your ramp.
I used a scaled stationary solution at 0.3 m/s instead.
Left boundary: 4*s*(1-s)*Umax (without the ramp)
Initial conditon: Uinitial: u/0.3, (use the stored stationary solution at u = 0.3)
No artificial solution.
Solver settings: time steps free (~0.3 s).

The vortex street developed after ~ 50 s.






(V3.5) Hello, you start the ramp after 0.9 s, reaching Umax 0.2 s later? I had no problem getting a time dependant solution without using your ramp. I used a scaled stationary solution at 0.3 m/s instead. Left boundary: 4*s*(1-s)*Umax (without the ramp) Initial conditon: Uinitial: u/0.3, (use the stored stationary solution at u = 0.3) No artificial solution. Solver settings: time steps free (~0.3 s). The vortex street developed after ~ 50 s.

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago May 31, 2010, 3:55 p.m. EDT
I have tried going through this file. I am trying to use a ramped boundary condition for my problem.

I am new to COMSOL. Can you please tell me what are variables 's' and 't' in your model?

Thank you for your time

I have tried going through this file. I am trying to use a ramped boundary condition for my problem. I am new to COMSOL. Can you please tell me what are variables 's' and 't' in your model? Thank you for your time

Note that while COMSOL employees may participate in the discussion forum, COMSOL® software users who are on-subscription should submit their questions via the Support Center for a more comprehensive response from the Technical Support team.