|
[Sponsors] |
March 9, 2016, 04:11 |
|
#22 |
Senior Member
nasir musa yakubu
Join Date: Mar 2014
Location: Birmingham
Posts: 109
Rep Power: 12 |
Hi,
well, to be honest yes. its allot quicker to find out if theres something wrong with you geometry, especially when its a complex one, like the solar volumetric receiver i am working on. the mesh quality extremely thin surfaces is much better with salome (netgen) and i simply just couldn't mesh my geometry with SHM, it couldn't mesh thin surfaces bellow 0.02 mm. etc the only reason i use tetrahedral cells is because the tutorial provided bellow. also at my university, all the CFD guys using Ansys for heat transfer simulations use tetrahedral cells, i am the only one using openFOAM in my institution loll...so i have a very limited to no guide with regards to meshing for openfoam. lastly, i was able to quickly learn how to play around with the features of salome to realise a much better CAD configuration for meshing. so i put my CAD together in solid works, i tune the geometries on salome then straight to open foam. by the way are you recommending using some other option instead of tetrahedral cells? kind regards https://www.youtube.com/watch?v=1zQbU-E4k1U |
|
March 9, 2016, 04:30 |
|
#23 | |
Super Moderator
Tobias Holzmann
Join Date: Oct 2010
Location: Bad Wörishofen
Posts: 2,711
Blog Entries: 6
Rep Power: 52 |
Quote:
well I am working with salome and foam for more than 6 years now and foam could of course mesh thin surfaces below 0.02mm (: In my opinion you will find a good mesh with sHM faster than with salome. I think in your case, you are not so familiar with sHM and therefore you get problems (like so many people). Finally everybody think sHM is a bad meshing tool Anyway. It does not matter which mesher you are using but Tets are always not as good as hexaeder in the topic of numerics.
__________________
Keep foaming, Tobias Holzmann |
||
March 9, 2016, 05:00 |
|
#24 |
Member
Antonio Liggieri
Join Date: Aug 2010
Posts: 76
Rep Power: 15 |
Hi Tobi
how did you manage to preserve patch names in your tutorial of multi region sHM? I looks like it comes from blockMesh but this seems not obvious to me. Thanx in advance, Antonio |
|
March 9, 2016, 06:37 |
|
#25 | |
Senior Member
nasir musa yakubu
Join Date: Mar 2014
Location: Birmingham
Posts: 109
Rep Power: 12 |
Quote:
i think i didn't explain myself correctly, with all due respect with regards to ur experience using foam, i would still say i don't think meshing my complex geometry using SHM is easily possible yet to be honest. it is not just just a single thin surface. its a geometry made up of multiple concentric cones located inside a fluid region which is also encapsulated by another region ( in other words many regions within regions and so on. i literally spent about 6-9 months doing nothing else but just trying to get SHM to mesh the geometries with no success, set up a debug session with bruno, but still no immediate success and i decided to move to salome, and issue was resolved in a day or two. other geometries greater than greater than 0.02mm about 0.1mm were ok but as u get smaller SHM isn't able to handle it. i have also max out my work station using SHM. but still....no success. anther obvious fact is that salome has more features which easily allows one to manipulate CAD and mesh quite easily, which u don't get with SHM. i guess its a matter of preference maybe but i think salome is definitely easier to use and the best way to start for complex geometries. thanks you very much for the Hint. i will give herd cells a try now actually. Kind regards |
||
January 10, 2018, 06:39 |
|
#26 | |
New Member
Sam
Join Date: Nov 2017
Posts: 24
Rep Power: 9 |
Quote:
Hey guys, I've been diligently going through this thread and I discovered me and @dzi had the same problem of multiple domains created (4 in your case instead of 2) after splitMeshRegions then resolved the problem to an extent by using the Code:
splitMeshRegions -blockedFaces Steps I used were 1. Create a blockMesh for both domains in this case SOLID and FLUID 2. surfaceFeatureExtract 3. snappyHexmesh 4. splitMeshRegions -cellZones -overwrite and then I get a lot of regions formed instead of FLUID and SOLID. I tried using several other arguments such as -useFaceZone, -regions <NAME>, but they all gave me just one region. I also followed dzi's exact procedure of using .setSet file, but none of them worked for me. My main problem is that my shape needs quite some level of refinement so that the mesh quality is good. When I refine it and have a good mesh, the regions that result after splitMeshRegions are a lot: about 20 instead of 2. However when the refinements are not that fine I obtain my desired 2 regions while the mesh quality suffers. Please what do you recommend? My case folder can be found here https://yadi.sk/d/w_SfFScN3RKpHM And btw does anyone also know anything about the "det: " floating exception error in the last line of the following code from this Stress calculation? I got the error before I went back to refine my shape as stated above. Code:
Create dynamic mesh for time = 0 Selecting dynamicFvMesh dynamicMotionSolverFvMesh Selecting motion solver: velocityLaplacian Selecting motion diffusion: quadratic Selecting motion diffusion: inverseDistance --> FOAM Warning : From function polyBoundaryMesh::patchSet(const wordList&) in file meshes/polyMesh/polyBoundaryMesh/polyBoundaryMesh.C at line 444 Cannot find any patch names matching interface Reading stress mesh Selecting incompressible transport model Newtonian Selecting incompressible transport model Newtonian Selecting turbulence model type laminar PIMPLE: Operating solver in PISO mode Creating fixed displacement boundary condition Creating fixed displacement boundary condition Creating fixed displacement boundary condition Creating fixed displacement boundary condition Creating traction displacement boundary conditions Selecting rheology model linearElastic Creating constitutive model Selecting coupling scheme Aitken Starting time loop Creating beamReport function object. History point ID: 712654 History point coordinates: (0.00220062 0.00173205 0.00154628) Reference point coordinates: (0.45 0.15 -0.15) Time = 0.005 (dt = 0.005) Create extended GGI zone-to-zone interpolator Checking fluid-to-solid face interpolator Fluid-to-solid face interpolation error: 1.81175e-07 Checking solid-to-fluid point interpolator (GGI) calcMasterPointAddressing() const Extended GGI, master point distance, max: 1.35234e-07, avg: -1.63421e-12, min: -1.32708e-07 Solid-to-fluid point interpolation error (GGI): 1.35234e-07 Number of uncovered master faces: 0 Number of uncovered slave faces: 0 calcSlavePointAddressing() const Extended GGI, slave point distance, max: 1.32708e-07, avg: 1.63421e-12, min: -1.35234e-07 Extended GGI, slave point orientation (<0), max: 0.728604, min: -1, nIncorrectPoints: 5/150409 Setting traction on solid patch Total force (fluid) = (4.73487e-11 3.5512e-11 -9.90773e-11) Total force (solid) = (-4.73498e-11 -3.5512e-11 9.9077e-11) Evolving solid solver: unsTotalLagrangianSolid det: -130.767, 45.3949 Floating point exception (core dumped) Samuel |
||
April 5, 2018, 17:45 |
To split interface patch into multiple patch from fluent mesh file
|
#27 | |
Member
Tarang
Join Date: Feb 2011
Location: Delhi, India
Posts: 47
Rep Power: 15 |
Quote:
I was also facing the same problem to split the interface in multiple patches. I used fluent mesh file. I followed following procedure: 1. I gave the name to the interface patches in the fluent mesh only and exported in msh format. 2. Code:
> fluentMeshToFoam meshFile.msh -writeSets -writeZones 3. I used topoSetDict to make new faceZones from the (interface) faceSet. Here is snippet from topoSetDict Code:
{ name left; //name of the new faceZone we want to create type faceZoneSet; action new; //we are creating new faceZone from each faceSet source setToFaceZone; sourceInfo { faceSet left; } } 4. Use this command Code:
> splitMeshRegions -useFaceZones -cellZones -overwrite Hope someone may find it useful. Also suggest if anything can be done to shorten this process. Thanks |
||
June 23, 2020, 14:57 |
|
#28 |
New Member
Join Date: Jun 2020
Location: UK
Posts: 22
Rep Power: 6 |
Hi,
For this case you can use a combination of "topoSet" and "createPatch" for each mesh region separatly to create your desired patches. The following link shares a test case which demonstrates these steps in action (please note that I have used OpenFoam-5.x to create and run the case): patchMultiRegion_case All the steps can be found in "run" bash script. Dictionaries for topoSet and createPatch are stored in separate folders in "system/topoSet" and "system/createPatch". Cheers |
|
Tags |
splitmeshregions, toposet |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
[Other] splitMeshRegion problem(cell in multi zones) | huangkai | OpenFOAM Meshing & Mesh Conversion | 0 | April 10, 2019 11:52 |
[mesh manipulation] splitMeshRegion for chtMultiRegionFoamCase | Bob! | OpenFOAM Meshing & Mesh Conversion | 0 | February 27, 2017 19:08 |
cht splitMeshRegion but keeping porous cellZones | klilla | OpenFOAM Pre-Processing | 3 | November 19, 2013 09:32 |
[mesh manipulation] splitMeshRegion | Khelian973 | OpenFOAM Meshing & Mesh Conversion | 1 | July 2, 2009 06:02 |
[mesh manipulation] SplitMeshRegion | ivan_cozza | OpenFOAM Meshing & Mesh Conversion | 2 | October 29, 2008 07:38 |