|
[Sponsors] |
[snappyHexMesh] Removing further cells after SHM |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
August 31, 2017, 06:26 |
Removing further cells after SHM
|
#1 |
New Member
Francesco Liuzzi
Join Date: Jul 2017
Posts: 15
Rep Power: 9 |
Goodmorning to all the community. First thing first, i did not find any section in which i could introduce myself, so if anyone could provide me the link i would be glad to do so
Let's get to the point of the thread. Being new in the usage of openFoam, i'm attending a university project in which i have to modify the geometry of a combustion chamber, creating a striction in the middle of it. The starting mesh is the one in the pic, this was provided to me by my teacher and she said it was made on gambit. chamber.jpg Then, on a CAD software i have created the stl file showed in the following pic. volumetosnap.jpg At this point i have used the comand surfaceFeatureExtract and then snappyHexMesh. This last stage took a few attempts, modifying each time the parameters on the snappyHexMeshdict related to the cells and mesh tollerance, but in the end i managed to obtain the showed result. snappedchamber.jpg The problem starts here. My teacher said that, in order to run a proper fluid simulation after, i need to remove those cells, showed in the red circle, that run all over the edge of the cilinder. I don't really have a clue on how to do it, i tried to look on the internet, even on this forum, but i did not get any hint. I tried to draw a thin ring and snap it all over the edge, but i received an errore message (right now i can not provide the log because the servers i'm working on are down). Any suggestion on how to perform this step? I'm really stucked Big thanks to all of you |
|
September 1, 2017, 02:49 |
|
#2 |
New Member
Frederik
Join Date: Dec 2015
Location: Germany
Posts: 25
Rep Power: 11 |
Hello Francesco,
welcome to the forum. It is almost impossible to help you when you do not provide your snappyHexMeshDict and the log file of your SHM run. There is just too much which could be the reason for your problem. Please see here how to get the most out of the forum From your images alone I can only guess, but I doubt that would help |
|
September 4, 2017, 12:22 |
|
#3 |
New Member
Francesco Liuzzi
Join Date: Jul 2017
Posts: 15
Rep Power: 9 |
Ok here i am, sorry for being late but i was waiting for the servers to be online again.
So, as a_slow_old_man said here i'm providing the SHMdict and the log.error Log.error Code:
/*---------------------------------------------------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 3.0.1 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ Build : 3.0.1-d8a290b55d28 Exec : snappyHexMesh Date : Aug 19 2017 Time : 16:57:49 Host : "an04" PID : 18073 Case : /utenti/simulation/OpenFOAM/simulation-3.0.1/run/cases/AeroSpaceProp/GreenEngine/francesco/Rifinitura nProcs : 1 sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE). fileModificationChecking : Monitoring run-time modified files using timeStampMaster allowSystemOperations : Allowing user-supplied system call operations // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // Create time Create mesh for time = 0 Read mesh in = 17.01 s Overall mesh bounding box : (-0.0704992 -0.0704916 -5.91789e-17) (0.0704979 0.0704914 0.5175) Relative tolerance : 0.001 Absolute matching distance : 0.000554583 Reading refinement surfaces. Read refinement surfaces in = 0.01 s Reading refinement shells. Refinement level 4 for all cells inside refinementBox Read refinement shells in = 0 s Setting refinement level of surface to be consistent with shells. Checked shell refinement in = 0 s Reading features. Read edgeMesh Cavcilrif.eMesh points : 168 edges : 504 boundingBox : (-0.07025 -0.0700536 0.33) (0.07025 0.0700536 0.39) Refinement level according to distance to "Cavcilrif.eMesh" (168 points, 504 edges). level 5 for all cells within 0 metre. Read features in = 0.01 s Determining initial surface intersections ----------------------------------------- Edge intersection testing: Number of edges : 4283064 Number of edges to retest : 4283064 Number of intersected edges : 142 Calculated surface intersections in = 9.94 s Initial mesh : cells:1401584 faces:4283064 points:1489127 Cells per refinement level: 0 1330645 1 38149 2 32790 Adding patches for surface regions ---------------------------------- Patch Type Region ----- ---- ------ Cavcilrif: 15 wall Cavcilrif Added patches in = 0.1 s Selecting decompositionMethod none Layer thickness specified as final layer and expansion ratio. Refinement phase ---------------- Found point (0 0 0.32) in cell 1216497 on processor 0 Feature refinement iteration 0 ------------------------------ Marked for refinement due to explicit features : 526 cells. Determined cells to refine in = 26.27 s Selected for feature refinement : 529 cells (out of 1401584) hexRef8 : Dumping cell as obj to "/utenti/simulation/OpenFOAM/simulation-3.0.1/run/cases/AeroSpaceProp/GreenEngine/francesco/Rifinitura/cell_1349695.obj" --> FOAM FATAL ERROR: nAnchors:3 faceI:4250946 From function createInternalFaces(..) in file polyTopoChange/polyTopoChange/hexRef8.C at line 1276. FOAM aborting #0 Foam::error::printStack(Foam::Ostream&) in "/utenti/simulation/OpenFOAM/OpenFOAM-3.0.1/platforms/linux64GccDPInt64Opt/lib/libOpenFOAM.so" #1 Foam::error::abort() in "/utenti/simulation/OpenFOAM/OpenFOAM-3.0.1/platforms/linux64GccDPInt64Opt/lib/libOpenFOAM.so" #2 Foam::hexRef8::createInternalFaces(Foam::List<Foam::List<long> > const&, Foam::List<Foam::List<long> > const&, Foam::List<long> const&, Foam::List<long> const&, Foam::List<long> const&, Foam::List<long> const&, long, Foam::polyTopoChange&) const in "/utenti/simulation/OpenFOAM/OpenFOAM-3.0.1/platforms/linux64GccDPInt64Opt/lib/libdynamicMesh.so" #3 Foam::hexRef8::setRefinement(Foam::List<long> const&, Foam::polyTopoChange&) in "/utenti/simulation/OpenFOAM/OpenFOAM-3.0.1/platforms/linux64GccDPInt64Opt/lib/libdynamicMesh.so" #4 Foam::meshRefinement::refine(Foam::List<long> const&) in "/utenti/simulation/OpenFOAM/OpenFOAM-3.0.1/platforms/linux64GccDPInt64Opt/lib/libautoMesh.so" #5 Foam::meshRefinement::balanceAndRefine(Foam::string const&, Foam::decompositionMethod&, Foam::fvMeshDistribute&, Foam::List<long> const&, double) in "/utenti/simulation/OpenFOAM/OpenFOAM-3.0.1/platforms/linux64GccDPInt64Opt/lib/libautoMesh.so" #6 Foam::autoRefineDriver::featureEdgeRefine(Foam::refinementParameters const&, long, long) in "/utenti/simulation/OpenFOAM/OpenFOAM-3.0.1/platforms/linux64GccDPInt64Opt/lib/libautoMesh.so" #7 Foam::autoRefineDriver::doRefine(Foam::dictionary const&, Foam::refinementParameters const&, Foam::snapParameters const&, bool, Foam::dictionary const&) in "/utenti/simulation/OpenFOAM/OpenFOAM-3.0.1/platforms/linux64GccDPInt64Opt/lib/libautoMesh.so" #8 ? in "/utenti/simulation/OpenFOAM/OpenFOAM-3.0.1/platforms/linux64GccDPInt64Opt/bin/snappyHexMesh" #9 __libc_start_main in "/lib64/libc.so.6" #10 Foam::UOPstream::write(char) in "/utenti/simulation/OpenFOAM/OpenFOAM-3.0.1/platforms/linux64GccDPInt64Opt/bin/snappyHexMesh" SnappyHexMeshdict Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 4.1 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; object snappyHexMeshDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // Which of the steps to run castellatedMesh true; snap true; addLayers true; // Geometry. Definition of all surfaces. All surfaces are of class // searchableSurface. // Surfaces are used // - to specify refinement for any mesh cell intersecting it // - to specify refinement for any mesh cell inside/outside/near // - to 'snap' the mesh boundary to the surface geometry { Cavcilrif.stl { type triSurfaceMesh; name Cavcilrif; } refinementBox { type searchableBox; min (-0.1 -0.1 -0.225); max ( 0.1 0.1 0.6); } }; // Settings for the castellatedMesh generation. castellatedMeshControls { // Refinement parameters // ~~~~~~~~~~~~~~~~~~~~~ // If local number of cells is >= maxLocalCells on any processor // switches from from refinement followed by balancing // (current method) to (weighted) balancing before refinement. maxLocalCells 10000; //10000 // Overall cell limit (approximately). Refinement will stop immediately // upon reaching this number so a refinement level might not complete. // Note that this is the number of cells before removing the part which // is not 'visible' from the keepPoint. The final number of cells might // actually be a lot less. maxGlobalCells 1500000; //1800000 // The surface refinement loop might spend lots of iterations refining just a // few cells. This setting will cause refinement to stop if <= minimumRefine // are selected for refinement. Note: it will at least do one iteration // (unless the number of cells to refine is 0) minRefinementCells 1 //5 // Allow a certain level of imbalance during refining // (since balancing is quite expensive) // Expressed as fraction of perfect balance (= overall number of cells / // nProcs). 0=balance always. maxLoadUnbalance 0.10; // Number of buffer layers between different levels. // 1 means normal 2:1 refinement restriction, larger means slower // refinement. nCellsBetweenLevels 3; //1 // Explicit feature edge refinement // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Specifies a level for any cell intersected by its edges. // This is a featureEdgeMesh, read from constant/triSurface for now. features ( { file "Cavcilrif.eMesh"; level 5; //3, 4 } ); // Surface based refinement // ~~~~~~~~~~~~~~~~~~~~~~~~ // Specifies two levels for every surface. The first is the minimum level, // every cell intersecting a surface gets refined up to the minimum level. // The second level is the maximum level. Cells that 'see' multiple // intersections where the intersections make an // angle > resolveFeatureAngle get refined up to the maximum level. refinementSurfaces { Cavcilrif { // Surface-wise min and max refinement level level (4 5); //(3 4) // Optional specification of patch type (default is wall). No // constraint types (cyclic, symmetry) etc. are allowed. patchInfo { type wall; inGroups (CavcilrifGroup); } } } // Resolve sharp angles resolveFeatureAngle 30; // Region-wise refinement // ~~~~~~~~~~~~~~~~~~~~~~ // Specifies refinement level for cells in relation to a surface. One of // three modes // - distance. 'levels' specifies per distance to the surface the // wanted refinement level. The distances need to be specified in // descending order. // - inside. 'levels' is only one entry and only the level is used. All // cells inside the surface get refined up to the level. The surface // needs to be closed for this to be possible. // - outside. Same but cells outside. refinementRegions { refinementBox { mode inside; levels ((1E15 4)); //((1E15 3)) } } // Mesh selection // ~~~~~~~~~~~~~~ // After refinement patches get added for all refinementSurfaces and // all cells intersecting the surfaces get put into these patches. The // section reachable from the locationInMesh is kept. // NOTE: This point should never be on a face, always inside a cell, even // after refinement. locationInMesh (0.0 0.0 0.32); // Whether any faceZones (as specified in the refinementSurfaces) // are only on the boundary of corresponding cellZones or also allow // free-standing zone faces. Not used if there are no faceZones. allowFreeStandingZoneFaces true; } // Settings for the snapping. snapControls { //- Number of patch smoothing iterations before finding correspondence // to surface nSmoothPatch 3; //- Relative distance for points to be attracted by surface feature point // or edge. True distance is this factor times local // maximum edge length. tolerance 2.0; //- Number of mesh displacement relaxation iterations. nSolveIter 30; //- Maximum number of snapping relaxation iterations. Should stop // before upon reaching a correct mesh. nRelaxIter 5; // Feature snapping //- Number of feature edge snapping iterations. // Leave out altogether to disable. nFeatureSnapIter 10; //- Detect (geometric only) features by sampling the surface // (default=false). implicitFeatureSnap false; //- Use castellatedMeshControls::features (default = true) explicitFeatureSnap true; //- Detect points on multiple surfaces (only for explicitFeatureSnap) multiRegionFeatureSnap false; } // Settings for the layer addition. addLayersControls { // Are the thickness parameters below relative to the undistorted // size of the refined cell outside layer (true) or absolute sizes (false). relativeSizes true; // Per final patch (so not geometry!) the layer information layers { } // Expansion factor for layer mesh expansionRatio 1.0; // Wanted thickness of final added cell layer. If multiple layers // is the thickness of the layer furthest away from the wall. // Relative to undistorted size of cell outside layer. // See relativeSizes parameter. finalLayerThickness 0.3; // Minimum thickness of cell layer. If for any reason layer // cannot be above minThickness do not add layer. // Relative to undistorted size of cell outside layer. minThickness 0.1; // If points get not extruded do nGrow layers of connected faces that are // also not grown. This helps convergence of the layer addition process // close to features. // Note: changed(corrected) w.r.t 17x! (didn't do anything in 17x) nGrow 0; // Advanced settings // When not to extrude surface. 0 is flat surface, 90 is when two faces // are perpendicular featureAngle 60; // At non-patched sides allow mesh to slip if extrusion direction makes // angle larger than slipFeatureAngle. slipFeatureAngle 30; // Maximum number of snapping relaxation iterations. Should stop // before upon reaching a correct mesh. nRelaxIter 3; // Number of smoothing iterations of surface normals nSmoothSurfaceNormals 1; // Number of smoothing iterations of interior mesh movement direction nSmoothNormals 3; // Smooth layer thickness over surface patches nSmoothThickness 10; // Stop layer growth on highly warped cells maxFaceThicknessRatio 0.5; // Reduce layer growth where ratio thickness to medial // distance is large maxThicknessToMedialRatio 0.3; // Angle used to pick up medial axis points // Note: changed(corrected) w.r.t 17x! 90 degrees corresponds to 130 in 17x. minMedianAxisAngle 90; // Create buffer region for new layer terminations nBufferCellsNoExtrude 0; // Overall max number of layer addition iterations. The mesher will exit // if it reaches this number of iterations; possibly with an illegal // mesh. nLayerIter 50; } // Generic mesh quality settings. At any undoable phase these determine // where to undo. meshQualityControls { #include "meshQualityDict" // Advanced //- Number of error distribution iterations nSmoothScale 4; //- Amount to scale back displacement at error points errorReduction 0.75; } // Advanced // Write flags writeFlags ( scalarLevels layerSets layerFields // write volScalarField for layer coverage ); // Merge tolerance. Is fraction of overall bounding box of initial mesh. // Note: the write tolerance needs to be higher than this. mergeTolerance 1e-3; // ************************************************************************* // |
|
September 5, 2017, 01:36 |
|
#4 | ||
New Member
Frederik
Join Date: Dec 2015
Location: Germany
Posts: 25
Rep Power: 11 |
Hello Francesco,
there ist only one thing I saw in your SHMDict, you missed a semicolon here, but I don't think that is the root of the problem. Quote:
Quote:
Edit.: I looked at your images again. Is your "ring" the same size (outer diameter) as your underlying geometry? Try and enlarge the outer diameter a little, I have a feeling these "edge cells" might come from SHM trying to snap the cells onto the outside of you your ring geometry. |
|||
September 5, 2017, 16:33 |
|
#5 |
New Member
Francesco Liuzzi
Join Date: Jul 2017
Posts: 15
Rep Power: 9 |
So, as you said, first i have modified the geometry to make it a bit larger, and then i have changed the includeAngle parameter in the SFEdict. All this has led to the same error as before (i mean really the same, just the cells where different).
The first try was with the original value of 180° that led to the error on the cell below HTML Code:
https://app.box.com/s/bmcgqlkp9hihn8n0aouyfn33ct0ts5l7 HTML Code:
https://app.box.com/s/hs5q6qqh9pa5tzzxqys46whuvwrai2p4 |
|
September 12, 2017, 06:25 |
|
#6 |
New Member
Frederik
Join Date: Dec 2015
Location: Germany
Posts: 25
Rep Power: 11 |
Please try this snappyHexMeshDict, it is a very reduced form, which only uses the surface of the .stl file for refinement. The Problem might be coupled to the featureEdgeRefinement.
Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 4.1 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; object snappyHexMeshDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // castellatedMesh true; snap true; addLayers false; geometry { Cavcilrif.stl { type triSurfaceMesh; name Cavcilrif; } }; castellatedMeshControls { maxLocalCells 10000; //10000 maxGlobalCells 1500000; //1800000 minRefinementCells 1 //5 maxLoadUnbalance 0.10; nCellsBetweenLevels 3; //1 features ( ); refinementSurfaces { Cavcilrif { level (2 2); //(3 4) patchInfo { type wall; } } } resolveFeatureAngle 30; refinementRegions { } locationInMesh (0.0 0.0 0.32); allowFreeStandingZoneFaces true; } snapControls { nSmoothPatch 3; tolerance 2.0; nSolveIter 30; nRelaxIter 5; nFeatureSnapIter 10; implicitFeatureSnap false; explicitFeatureSnap true; multiRegionFeatureSnap false; } // Settings for the layer addition. addLayersControls { } meshQualityControls { #include "meshQualityDict" nSmoothScale 4; errorReduction 0.75; } mergeTolerance 1e-3; // ************************************************************************* // |
|
September 12, 2017, 07:26 |
|
#7 |
New Member
Francesco Liuzzi
Join Date: Jul 2017
Posts: 15
Rep Power: 9 |
Ok, as soon as I saw the reply i tried to implement the file you gave me. openFoam gives me back this error:
Code:
Selecting decompositionMethod none --> FOAM FATAL IO ERROR: keyword relativeSizes is undefined in dictionary "/utenti/simulation/OpenFOAM/simulation-3.0.1/run/cases/AeroSpaceProp/GreenEngine/francesco/Rifinitura/system/snappyHexMeshDict.addLayersControls" file: /utenti/simulation/OpenFOAM/simulation-3.0.1/run/cases/AeroSpaceProp/GreenEngine/francesco/Rifinitura/system/snappyHexMeshDict.addLayersControls From function dictionary::lookupEntry(const word&, bool, bool) const in file db/dictionary/dictionary.C at line 442. FOAM exiting |
|
September 12, 2017, 08:58 |
|
#8 |
New Member
Frederik
Join Date: Dec 2015
Location: Germany
Posts: 25
Rep Power: 11 |
Hmmm that is strange. Can you try to add these infos back in the Dictionary but keep addLayers false?
|
|
September 12, 2017, 11:35 |
|
#9 |
New Member
Francesco Liuzzi
Join Date: Jul 2017
Posts: 15
Rep Power: 9 |
Ok, i did, the software asked for all the parameters inside the addLayersControl. Now it got back to the same old error on the single cell. Here is the log:
Code:
--> FOAM FATAL ERROR: cell 615144 of level 1 does not seem to have 8 points of equal or lower level cellPoints: 13 ( 1416594 1455907 1455908 1368106 567509 1427673 1427674 1440614 1440616 1391080 1440618 1391085 1371641 ) pointLevels: 13 ( 2 2 2 1 0 2 2 2 2 1 2 1 1 ) From function hexRef8::setRefinement(const labelList&, polyTopoChange&) in file polyTopoChange/polyTopoChange/hexRef8.C at line 3775. FOAM aborting #0 Foam::error::printStack(Foam::Ostream&) in "/utenti/simulation/OpenFOAM/OpenFOAM-3.0.1/platforms/linux64GccDPInt64Opt/lib/libOpenFOAM.so" #1 Foam::error::abort() in "/utenti/simulation/OpenFOAM/OpenFOAM-3.0.1/platforms/linux64GccDPInt64Opt/lib/libOpenFOAM.so" #2 Foam::hexRef8::setRefinement(Foam::List<long> const&, Foam::polyTopoChange&) in "/utenti/simulation/OpenFOAM/OpenFOAM-3.0.1/platforms/linux64GccDPInt64Opt/lib/libdynamicMesh.so" #3 Foam::meshRefinement::refine(Foam::List<long> const&) in "/utenti/simulation/OpenFOAM/OpenFOAM-3.0.1/platforms/linux64GccDPInt64Opt/lib/libautoMesh.so" #4 Foam::meshRefinement::balanceAndRefine(Foam::string const&, Foam::decompositionMethod&, Foam::fvMeshDistribute&, Foam::List<long> const&, double) in "/utenti/simulation/OpenFOAM/OpenFOAM-3.0.1/platforms/linux64GccDPInt64Opt/lib/libautoMesh.so" #5 Foam::autoRefineDriver::surfaceOnlyRefine(Foam::refinementParameters const&, long) in "/utenti/simulation/OpenFOAM/OpenFOAM-3.0.1/platforms/linux64GccDPInt64Opt/lib/libautoMesh.so" #6 Foam::autoRefineDriver::doRefine(Foam::dictionary const&, Foam::refinementParameters const&, Foam::snapParameters const&, bool, Foam::dictionary const&) in "/utenti/simulation/OpenFOAM/OpenFOAM-3.0.1/platforms/linux64GccDPInt64Opt/lib/libautoMesh.so" #7 ? in "/utenti/simulation/OpenFOAM/OpenFOAM-3.0.1/platforms/linux64GccDPInt64Opt/bin/snappyHexMesh" #8 __libc_start_main in "/lib64/libc.so.6" #9 Foam::UOPstream::write(char) in "/utenti/simulation/OpenFOAM/OpenFOAM-3.0.1/platforms/linux64GccDPInt64Opt/bin/snappyHexMesh" |
|
September 13, 2017, 01:24 |
|
#10 | |
New Member
Frederik
Join Date: Dec 2015
Location: Germany
Posts: 25
Rep Power: 11 |
Quote:
I assumed your basemesh, the one provided by your teacher is structured. I looked up gambit and it seems to built unstructured meshes as well as structured ones. SHM works with structured hexahedra meshes only. If your basemesh is unstructured, SHM can not work with it. I'm afraid what you are trying to do will not be possible, if your mesh is unstructured. What you might try instead is to get the original .stl files of the combustion chamber from your teacher and use these together with SHM to create a hexahedra mesh, including your alteration. |
||
September 13, 2017, 17:02 |
|
#11 |
New Member
Francesco Liuzzi
Join Date: Jul 2017
Posts: 15
Rep Power: 9 |
Ok so, my teacher said that the initial mesh is structured, but i've red that the adding layers process at the end of sHM may generate ustructured portion on the final mesh. Is that true? However i tried to use back again the initial mesh, and to snap again the stl file you can see in the first post of this thread, but this time deactivating the addLayers function. I obtained the usual snapped mesh with the same "exceeding" cells, and so i tried to snap the thin ring, but I got the following error:
Code:
--> FOAM FATAL ERROR: nAnchors:3 faceI:4234698 From function createInternalFaces(..) in file polyTopoChange/polyTopoChange/hexRef8.C at line 1276. FOAM aborting |
|
September 14, 2017, 01:23 |
|
#12 |
New Member
Frederik
Join Date: Dec 2015
Location: Germany
Posts: 25
Rep Power: 11 |
Is it possible for your to upload your case so I can take a closer look at it?
If you are not allowed to upload your case, can you take some images of your geometry before and after the SHM job? Preferably with the "Surface with Edges" visual option in ParaView so I can so the cell structure? |
|
September 14, 2017, 06:15 |
|
#13 |
New Member
Francesco Liuzzi
Join Date: Jul 2017
Posts: 15
Rep Power: 9 |
Ok, i can not upload the Whole case, soi'm posting the pictures.
This is the mesh before the snapping: HTML Code:
https://app.box.com/s/10vytq691j0v673cgc1o7koabfeh71ja HTML Code:
https://app.box.com/s/mmej0zs3qaenmulc740r7lxjf3vb2gu3 HTML Code:
https://app.box.com/s/3up7lbjslgrklrtaucstr6gsmv9jwbgi HTML Code:
https://app.box.com/s/5ztj0sfpwerq5gcd1jue0r26avhp6dox |
|
September 14, 2017, 06:49 |
|
#14 |
New Member
Frederik
Join Date: Dec 2015
Location: Germany
Posts: 25
Rep Power: 11 |
There is some uneccessary refinement along the lengthwise "edges". I don't think that is responsible for the problem, but you can fix that by decreasing the "includeAngle" in your surfaceFeatureExtractDict
Code:
Cavcilrif.stl { // How to obtain raw features (extractFromFile || extractFromSurface) extractionMethod extractFromSurface; extractFromSurfaceCoeffs { // Mark edges whose adjacent surface normals are at an angle less // than includedAngle as features // - 0 : selects no edges // - 180: selects all edges includedAngle 100; } // Write options // Write features to obj format for postprocessing writeObj no; } |
|
September 15, 2017, 08:50 |
|
#15 |
New Member
Francesco Liuzzi
Join Date: Jul 2017
Posts: 15
Rep Power: 9 |
Ok, good news, i wanted to tell you that i've succeded in removing those cells
Most of the times the errors messages were about some bad cells. Reading on the internet i''ve discovered that with paraview i could visualize on the same screen both the whole mesh and the cells, and so i saw that one of these cells was located in the back of the mesh, precisely in one of those radial tubes on the main duct, while the other two were exactly on those little parts i wanted to remove. To get rid at least of the first bad cell i decided to go inside the sHMdict and modify the values of the searchableBox. The dafult values were considering the whole mesh and so i modified the z coordinate on both the min and the max to make the software consider just a portion a bit wider than the snapped zone. Also under suggestion of the teacher i modified also the surface refinement level to (1 1) and the region refinement level to (1.0 1). Now, being new to openfoam i don't have a clear idea about what these values have done, but i can tell you it worked (at least my teacher was satisfied by the resulting mesh). But i wanted to thank you a_slow_old_man for your help. You gave me some usefull tips that will help me in the future if someone needs more detail just let me know |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Problem with divergence | TDK | FLUENT | 13 | December 14, 2018 07:00 |
[blockMesh] Create internal faces as patch in blockMesh | m.delta68 | OpenFOAM Meshing & Mesh Conversion | 14 | July 12, 2018 15:43 |
[snappyHexMesh] sHM too many cells | Knapsack | OpenFOAM Meshing & Mesh Conversion | 2 | July 8, 2017 08:41 |
[snappyHexMesh] snappyHexMesh won't work - zeros everywhere! | sc298 | OpenFOAM Meshing & Mesh Conversion | 2 | March 27, 2011 22:11 |
[blockMesh] Removing interior cells | shd01 | OpenFOAM Meshing & Mesh Conversion | 3 | January 16, 2011 11:11 |