Thank you very much for your videos. I will soon have to flow-simulate soundproof hoods for heat pumps and data centers. With your information it will work
Thank you for the tutorials. I have followed the first two, but the solutions I get are very different from the ones in the video. For example, in the first tutorial, my system takes more than 400 iterations for all the residuals to get below 1E-3, while yours converges to less than 1E-4 in less than 250 iterations. I have gone over my setup several times, and I believe all of my settings match the video. Can you think of anything that might be causing the difference? I am using FreeCAD 0.21.1, ESI version, V2206.
Thank you for the tutorials. I have followed the first two, but the solutions I get are very different from the ones in the video. For example, in the first tutorial, my system takes more than 400 iterations for all the residuals to get below 1E-3, while yours converges to less than 1E-4 in less than 250 iterations. I have gone over my setup several times, and I believe all of my settings match the video. Can you think of anything that might be causing the difference? I am using FreeCAD 0.21.1, ESI version, V2206.
If you have questions in the forum, it is always recommended that you post information about your system. Here you can find information about your system:
FreeCad Version.jpg
FreeCad Version #2.jpg
It’s helpful to upload your model to the forum because experts like thschrader and oliveroxtoby can take a look at it
There has been a change in mesh refinement compared to the version I used for my tutorial.
You can find more information in these threads:
.
For you this means, that you have to input 0.25 for the second refinement instead of 0.5 (the refinement related to the surface).
4. I updated my tutorial and the residual doesn’t fall below 10-4 either. But after a very short time I reach a residual of 10-3, which should be sufficient. I have attached my updated tutorial.
Residuals Tutorial #2.JPG
You can reduce the convergence tolerance to 0.0010, then this tutorial should run:
Convergence Tol.jpg
First off as so many others have said, thank you for the great tutorials. I’ve always wanted to learn and use openFOAM, but doing it in a non-scholar environment has proven to be harder than I thought. So thank you.
Now on to the question, or issue: I’m working my way through the tutorials, but I’m banging my head against the wall on tutorial #6 when meshing the car/cut-out. No matter what I do, I can not get the simulation space to mesh the underside of the car, it always turns up as in the image below.
Screenshot 2024-01-11 114138.jpg
I’ve tried with and without boundary layers, with and without mesh refinement, I’ve event tried to use another machine (both uses the same OS and version of freecad/openfoam), but no matter what I do the underside don’t get meshed.
OS: Windows 10 x64
FreeCAD version: 0.21.1
OpenFOAM(ESI): v2212
The reason is that there was a change in CfMesh, or, to be more precise, in the mesh refinement. In the old version, 2 mesh refinements were considered to be additionally. Now the mesh refinement is independent from other mesh refinement. As a consequence, you have to define a relative element size of 0.25 instead of 0.5 for the second refinement. The solution is displayed here: https://devtalk.freecad.org/t/getting-wrong-answer-for-drag-and-lift-flow-around-a-car/66031/1
One of the experts of the forum, thschrader, found a second issue: In the area where the wheels meet the road, CfMesh creates highly distorted elements. You can check if there are distorted elements with the mesh check:
check_mesh.jpg
You have 2 options to solve this issue: thschrader suggested leaving a small gap between the wheels and the road. The second option is to make a small modification in the wheel. I depicted this in Sketcher:
modelling of the wheels.jpg
Hi Raedchen_im_System ,
Apologies for my bad form. Thank you for your patience, and I’ll try to do better.
I had already determined that there must be a change in the mesh refinement, and I made the refinement factor for the volume refinement = 0.250, and left the surface refinement at 0.5. The mesh I got looks like yours.
Here is the system info:
OS: Windows 10 build 19045
Word size of FreeCAD: 64-bit
Version: 0.21.1.33668 +26 (Git)
Build type: Release
Branch: (HEAD detached at 0.21.1)
Hash: f6708547a9bb3f71a4aaade12109f511a72c207c
Python 3.8.10, Qt 5.15.2, Coin 4.0.1, Vtk 8.2.0, OCC 7.6.3
Locale: English/United States (en_US)
Installed mods:
CfdOF 1.24.9
[/code]
I have attached my file of Tutorial 2. I have gone through it several times, looking for differences between yours and mine, but I haven’t been able to find the error. Thanks for your consideration.
Dear Raedchen im System,
I downloaded and ran your updated file. While the refinements were reversed from mine, the output looked almost the same. But when it ran, I noticed this:
20:12:53 Writing case to folder C:\Users\Paul\AppData\Local\Temp
20:12:53 Matching boundary conditions …
20:12:54 Populating createPatchDict to update BC names
20:12:54 Successfully wrote case to folder C:\Users\Paul\AppData\Local\Temp
20:13:12 Writing case to folder C:\Users\Paul\AppData\Local\Temp
20:13:12 Matching boundary conditions …
20:13:12 Populating createPatchDict to update BC names
20:13:12 Successfully wrote case to folder C:\Users\Paul\AppData\Local\Temp
20:13:14 Executing: ./Allrun in C:\Users\Paul\AppData\Local\Temp\case
20:13:15 chmod: changing permissions of ‘/dev/shm’: Permission denied
20:13:15 chmod: changing permissions of ‘/dev/mqueue’: Permission denied
I suspect that might have something to do with it, but if it does, I don’t know what to do about it.
In this tutorial the heat transfer from a double-T structure is simulated. Physics is natural convection, but CFD does not distinguish between natural convection and forced convection.
Physics Model: transient, compressible, viscous, laminar flow
2D Model
Fluid: air
Mesher: gmesh
Solver Openfoam:buoyantPimpleFoam
Link to the video: https://youtu.be/w23MPnLBIto?si=SOOamBNmpz1jp__d
Please find the model attached.
Lesson15_HeatTransfer.FCStd
You are correct: The refinement factor of 0.5 is for the small tube, the refinement factor of 0.25 is for the surface.
This error message is not know to me. If your model runs, then there should not be an issue.
For my model, the “Check Mesh” in the menu “CFD mesh” tells me that my mesh is OK, but when running, I get some warning messages concerning the mesh (“Removed zero-sized patch”, …). I have no idea if this error messages are of importance.
The main difference between the two simulation models is the turbulence model: The residuals in my post are showing the “RANS” turbulence model, your turbulence model is “laminar”. You will also see in my video tutorial that the turbulence model has a crucial impact on the residuals. In general, you can say that the residuals for the turbulence-model “RANS” are - compared to the laminar flow - converging faster and better against small values.
Residuals above 10-4 do not say that the solution is not correct. As far as I know, the residual is derived from the difference between the last iteration step and the iteration step before. Mathematically saying: Residuals are derived from the difference between the iteration n and the iteration n-1. If these changes are small, then it can be assumed that the changes in result are small and the calculation has converged. But in some cases, oscillations in the result can occur. One example can be found in the post from thschrader: https://devtalk.freecad.org/t/solved-urans-with-cfdof-transient-simulation-of-macroscopic-vortex/52186/1 In this case, the steady simulation does not converge due to oscillations of the von Karman vortex street.
Hi Raedchen_im_System ,
Thank you very much for your answers. I ran your Tutorial #2 Updated and got varying results. Sometimes it yielded a residual curve very similar to the one in your video, but other times, the residuals oscillated, and never got down to 10E-4. Successively meshing and then running the case produced different results.
I wonder if there might be a difference from one time to another when the meshing is done. I had assumed that it would be a deterministic thing, but maybe it isn’t(?) I got to wondering about that when I added a few layers in MeshRefinement001, and always got it to converge at 10E-4, and then when I added layers to the inlet tube, it converged in fewer steps. That seems to indicate a more robust model, doesn’t it? In any case, I think I now know why my model produced results that looked different from yours.
As you mentioned, it probably doesn’t affect the result very much one way or the other. My concern was that I had made a mistake somewhere when I was following your tutorial.