Electric Car [simpleFoam] Case does not converge
This is my first post! I have the model of an electric motor that is mounted right next to the wheel of a car.
My final objective is to model the heat generation of the motor and to see if the incoming airflow is sufficient to dissipate the heat. Having little experience with OpenFOAM, I decided as a first step, to obtain just the pressure and velocities of the air around the motor and the wheel. But the case diverges. Very high velocities, unrealistic pressures...
All the data [original mesh file (261front10side5fin.Valentino.ccm), files of system, 0, constant, directories] are saved in DROPBOX
in the OpenFOAM directory.
Please open the file Output.console to see the full list of outputs and iterations.
feel free to share and inspect them, hope you'll find the error.
Here I just summarize the principal steps followed:
1) CONVERSION OF THE MESH USING ccm26ToFoam
the mesh was generated in Star CCM+. In StarCCM+ I checked the mesh and no error was found. Ccm26ToFoam converts the mesh with no major problem.
2) CHECKING THE MESH
CheckMesh find 3 errors:
***Number of non-orthogonality errors: 4.
<<Writing 1788 non-orthogonal faces to set nonOrthoFaces
***Error in face pyramids: 48 faces are incorrectly oriented.
<<Writing 48 faces with incorrect orientation to set wrongOrientedFaces
***Max skewness = 115.832, 84 highly skew faces detected which may impair the quality of the results
<<Writing 84 skew faces to set skewFaces
Coupled point location match (average 0) OK.
Failed 3 mesh checks.
End[/CODE]From another thread (http://www.cfd-online.com/Forums/ope...ted-faces.html), I read that the wrong oriented faces can be one reason of the non convergence . But I have no idea how to repair the wrong elements. Within Paraview? or with some OpenFOAM mesh utilities? I don't understand if the cause of no convergence is caused by those failed mesh checks or if the reason resides in the some wrong choices of the following steps (setting boundaries conditions and turbulent model)
3) PREPARATION OF the CASE DIRECTORIES [System, Constant, 0]
I took the tutorial motor bike as guideline and copied all the files and substitute in them my new geometry:
the six "zero*" are the surfaces of boundary condition (the external box), the "inwheel_*" are the surfaces surrounding the internal components (the tire, the motor, the SUS =suspension, ect). I applied to my "inwheel_*" the same types and values of "motorBike_.*" found in the motorbike tutorial ( -> /home/serena/OpenFOAM/serena-2.1.x/run/tutorials/incompressible/simpleFoam/motorBike/)
4) Launch of the ANALYSIS with simpleFOAM
the iterations seem to go smooth, but after clearly diverges.
5) Paraview post-processing
The results are poor. Is it a mesh problem, or my boundaries conditions are wrong, or is my turbulent model or something else?
Observations: I have noticed that if I put "turbulence off;" in the constant\RasProperties file, at least in the first iterations results don't seem so bad. But still after velocities are too high, not realistic.
If I were you I would remake the mesh using snappyHexMesh.
Thank you very much for your reply.
I'm trying to recreate the mesh with snappyHexMesh as you adviced me.
My problem now is that in the help guide I read I should insert the STL inside a box created with blockMesh.
In my case, the STL file comes already with the surrounding box. The 6 external surfaces (Top Bottom inlet outlet right left) are connected with the surfaces of the model. Is it possible to use those external surfaces for creating the background hex mesh? or do I have to cancel them, leave just the model surfaces and recreate a new box from scratch? I was trying to import the STL file in Engrid and try to find some tools to cancel what I don't need. Does it make sense to you or am I on the wrong road?
You were right, the mesh was the culprit.
I have still problem getting the new mesh using snappyhexmesh, but I managed to get a mesh with no errors using the tetrahedral mesher of Star CCM+ instead of the polyhedral. I loose the prism boundary layer, so I tried to compensate that using smaller tetrahedral elements near the wall surface (4million cells in total).
The pressure and velocities given by simpleFoam seem reasonable. I used a delta T quite small, the iterations weren't quick. Not knowing too much about CFD, maybe I have mistaken some parameters. Do you see any not so reasonable settings in my files or anything that can be changed in order to get results quicker?
> k: internalField uniform $turbulentKE;
> nut : internalField uniform 0;
> omega : internalField uniform $turbulentOmega;
> pressure : internalField uniform 0;
> RASModel kOmegaSST;
> transportModel Newtonian;
nu nu [0 2 -1 0 0 0 0] 1.5e-05;
default cellLimited Gauss linear 1; //default Gauss linear;
div(phi,U) Gauss linearUpwindV grad(U);
div(phi,k) Gauss upwind;
div(phi,omega) Gauss upwind;
div((nuEff*dev(T(grad(U))))) Gauss linear;
default Gauss linear corrected;
k 0.0:// 0.7;
omega 0.0; // 0.7;
last step :
Time = 10
smoothSolver: Solving for Ux, Initial residual = 0.0007681, Final residual = 4.04672e-05, No Iterations 4
smoothSolver: Solving for Uy, Initial residual = 0.00634906, Final residual = 0.000340722, No Iterations 4
smoothSolver: Solving for Uz, Initial residual = 0.00681167, Final residual = 0.000369204, No Iterations 4
GAMG: Solving for p, Initial residual = 0.0418852, Final residual = 0.0040769, No Iterations 1
time step continuity errors : sum local = 0.00021217, global = -1.0422e-06, cumulative = -0.0308522
smoothSolver: Solving for omega, Initial residual = 0.00115887, Final residual = 0.000114091, No Iterations 15
smoothSolver: Solving for k, Initial residual = 0.0117018, Final residual = 0.00115757, No Iterations 30
ExecutionTime = 52168.6 s ClockTime = 52529 s
|All times are GMT -4. The time now is 02:32.|