Simulating Flow past Circular Cylinder
4 Attachment(s)
Deal All,
I have been trying to simulate the Schäfer and Turek circular cylinder case in OpenFOAM using two custom solvers using higher order Runge-Kutta time integration schemes: 1. DIRK 2. ROSW methods. So, I have simulated the Steady-state 2D cylinder case (stated as test case 2D-1 in Schäfer and Turek's paper). Inlet U = 0.3 m/s, and Re = 20 (Laminar flow) I have used two different meshes (as seen below). The problem is that while computing the force Coefficients, the drag value obtained is within the bounds mentioned in the paper, but the lift coeff value is below the bounds. Essentially, I am getting correct drag coeff. values but incorrect lift coeff. values. I cannot determine from where the error might generate (due to the mesh, or Aref & Lref values, or the various schemes). The coarse mesh: No. of cells = 4800, No. of points = 9980 anf the checkMesh for this is as below: Code:
Overall domain bounding box (0 0 -0.0005) (2.2 0.41 0.0005) and the checkMesh for this shows: Code:
Overall domain bounding box (0 0 -0.0005) (2.2 0.41 0.0005) Code:
/*--------------------------------*- C++ -*----------------------------------*\ Code:
/*--------------------------------*- C++ -*----------------------------------*\ Code:
forces Acc. to Schäfer and Turek, the bound for Drag coeff : [5.57, 5.59] and Lift: [0.0104, 0.0110] Could anyone suggest where the error might come from?? Also I have notices that a finer mesh gives me a lower value of Lift Coeff (which is far lower than the bound, than for a coarse mesh which gives a Lift coeff value a bit closer to the bound). Any help would be appreciated. Thank You |
I would avoid the sudden changes in mesh density. It is far better to change the mesh gradually. blockMesh gives a good support for that.
|
Quote:
Why you use such a scheme for div(phi,U)? Gauss linear is enough. What is your maxCo? Finally, is there any reference on your particular code? Is difficult to know if the algorithm is not clear. |
Hello Santiago,
Thank you for your reply. My max Courant number is 0.181081 Yes I am using a custom RK scheme for time integration which I have put in the code, which is a modified version of icoFoam solver. So my entire time integration is done inside the solver itself. Then should I set the ddt scheme as "none" and run? I will try this once and let you know. But I think that it would give me an error because for example, the initial guess for the velocity slope "k" I have chosen as ddt(U). Then I guess I should not use this ddt(U) if I have to turn off the ddt schemes in fvSchemes. But I don't think that the ddtScheme is causing the problem. But I will try your suggestion. Thank you :) |
Greetings,
I tried Turek's case on OpenFOAM a few years ago. It works fine for FSI1 but not FSI2 and FSI3. I would appreciate for a solution, it doesn't work on for at least OF2.3.X The problem is the following: Mesh motion solver and the boundary condition, you need to create your own point field distribution and move the whole field of points on the walls that define your 3D case, since you run the case in 2D frozen mode. This is solved however for extended Foam, using their tetFem mesh motion solver. But I have not adapted my FSI solver to that distribution. If you need to validate with using 3D mesh, I do recommend to use the 3D pipe problem, used by many, for example, Degroote/IQN-ILS. I wish you best luck with the problem /J PS. I am still curious if there is a solution to this problem. However, it is of minor importance for my work since I have validated my solver on other cases. |
All times are GMT -4. The time now is 06:00. |