CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Meshing & Mesh Conversion

[blockMesh] Projection of edges to the surface

Register Blogs Community New Posts Updated Threads Search

Like Tree1Likes
  • 1 Post By klitz

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   October 14, 2020, 11:09
Default Projection of edges to the surface
  #1
New Member
 
Join Date: Jan 2019
Posts: 11
Rep Power: 7
klitz is on a distinguished road
Hi everyone,

I cant seem to project my edges to the surface. Couldnt solve the problem so I need your help.

Here is blockMeshDict:

Code:
/*--------------------------------*- C++ -*----------------------------------*\
  =========                 |
  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
   \\    /   O peration     | Website:  https://openfoam.org
    \\  /    A nd           | Version:  8
     \\/     M anipulation  |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    object      blockMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

xMax  21;
zMax  5;

xMin -5;
zMin -0.05;

    // Number of cells
z1 		30;
z2		40;
x1		20;
x2		30;
x3 		40;
x4 		50;
x5 		60;

    // Mesh grading
zg1		1;
zg2		10;
zg3		30;
xg1		1;
xg2 	50;	

//Points on the surface
a0x	0.1;
a0z	0;
a1x	0;
a1z	0.1;
a2x 0;
a2z	0.186;
a3x	0.1;
a3z	0.286;
a4x 0.8428;
a4z 0.286;
a5x 1.044;
a5z 0.192179;
a6x 1.044;
a6z 0;	

geometry
{
    ahmed
    {
        type   triSurfaceMesh;
        file   "ahmedmetre.stl";
    }
       
}

vertices
(
   project ($a0x -0.1 $a0z) (ahmed)    		//0
   project ($a1x -0.1 $a1z) (ahmed)			//1
   project ($a2x -0.1 $a2z) (ahmed)  		//2
   project ($a3x -0.1 $a3z) (ahmed) 		//3
   project ($a4x -0.1 $a4z) (ahmed)			//4
   project ($a5x -0.1 $a5z) (ahmed) 		//5
   project ($a6x -0.1 $a6z) (ahmed) 		//6
    ($a0x -0.1 $zMin) 		//7
    ($xMin -0.1 $zMin) 		//8
    ($xMin -0.1 $a0z) 		//9
    ($xMin -0.1 $a1z)		//10
    ($xMin -0.1 $a2z) 		//11 
    ($xMin -0.1 $a3z)		//12
    ($xMin -0.1 $zMax) 		//13
    ($a3x -0.1 $zMax) 		//14
    ($a4x -0.1 $zMax) 		//15
    ($a5x -0.1 $zMax)		//16
    ($xMax -0.1 $zMax)		//17
    ($xMax -0.1 $a5z)		//18
    ($xMax -0.1 $a6z) 		//19
    ($xMax -0.1 $zMin)		//20
    ($a6x -0.1 $zMin)		//21
   

   //3d
   project ($a0x 0.1 $a0z)  (ahmed)	//22
   project ($a1x 0.1 $a1z)  (ahmed)	//23
   project ($a2x 0.1 $a2z)  (ahmed)	//24
   project ($a3x 0.1 $a3z)  (ahmed)	//25
   project ($a4x 0.1 $a4z)  (ahmed)	//26
   project ($a5x 0.1 $a5z)  (ahmed)	//27
   project ($a6x 0.1 $a6z)  (ahmed)	//28 
    ($a0x 0.1 $zMin) 		//29
    ($xMin 0.1 $zMin) 		//30
    ($xMin 0.1 $a0z)		//31
    ($xMin 0.1 $a1z)		//32
    ($xMin 0.1 $a2z) 		//33 
    ($xMin 0.1 $a3z)		//34
    ($xMin 0.1 $zMax)		//35
    ($a3x 0.1 $zMax) 		//36
    ($a4x 0.1 $zMax)		//37
    ($a5x 0.1 $zMax)		//38
    ($xMax 0.1 $zMax) 		//39
    ($xMax 0.1 $a5z)		//40
    ($xMax 0.1 $a6z) 		//41
    ($xMax 0.1 $zMin)		//42
    ($a6x 0.1 $zMin)		//43
   


);

blocks
(
	
	hex ( 1 23 32 10 2 24 33 11 )  //0
	(1 30 100)
	edgeGrading
 	(
		1 1 1 1 
		100 1 1 100
		1 1 1 1
	)

	hex ( 2 24 33 11 3 25 34 12 )  //1
	(1 30 100)
	edgeGrading
 	(
		1 1 1 1 
		100 1 1 100
		1 1 1 1
	)
	hex ( 3 25 34 12 14 36 35 13 )	//2
	(1 30 200)
	edgeGrading
 	(
		1 1 1 1 
		100 1 1 100
		50 50 50 50 
	)

	hex ( 4 26 25 3 15 37 36 14 ) 	//3
	(1 80 200)
	edgeGrading
 	(
		1 1 1 1 
		1 1 1 1
		50 50 50 50
	)

	hex ( 5 27 26 4 16 38 37 15 )	//4
	(1 30 200)
	edgeGrading
 	(
		1 1 1 1 
		1 1 1 1
		50 50 50 50 
	)

	hex ( 18 40 27 5 17 39 38 16 ) //5
	(1 50 200)
	edgeGrading
 	(
		1 1 1 1 
		0.0125 0.0125 0.0125 0.0125
		50 50 50 50 
	)

	hex ( 19 41 28 6 18 40 27 5 )	//6
	(1 50 50)
	edgeGrading
 	(
		1 1 1 1 
		0.0125 0.0125 0.0125 0.0125
		1 1 1 1
	)

	hex ( 20 42 43 21 19 41 28 6 ) //7
	(1 50 50)
	edgeGrading
 	(
		1 1 1 1 
		0.0125 0.0125 0.0125 0.0125
		1 1 1 1
	)

	hex ( 21 43 29 7 6 28 22 0 )	//8
	(1 80 50)
	edgeGrading
 	(
		1 1 1 1 
		1 1 1 1
		1 1 1 1
	)

	hex ( 7 29 30 8 0 22 31 9 )	//9
	(1 30 50)
	edgeGrading
 	(
		1 1 1 1 
		100 1 1 100
		1 1 1 1
	)

 	hex ( 0 22 31 9 1 23 32 10 )	//10
	(1 30 100)
	edgeGrading
	(
		1 1 1 1 
		100 1 1 100
		1 1 1 1
	)




);

edges
(
	
    project 0 1 (ahmed) 
    project 1 2 (ahmed)
    project 2 3 (ahmed)
    project 3 4 (ahmed)
    project 4 5 (ahmed)
    project 5 6 (ahmed)
    project 6 0 (ahmed)

    project 22 23 (ahmed) 
    project 23 24 (ahmed)
    project 24 25 (ahmed)
    project 25 26 (ahmed)
    project 26 27 (ahmed)
    project 27 28 (ahmed)
    project 28 22 (ahmed)
	
)

faces
(
	project (2 3 25 24) ahmed
	project (0 1 23 22) ahmed
);

boundary
(
   ahmed
    {
        type wall;
        faces
        (
            (0 1 23 22)
            (1 2 24 23)
            (2 3 25 24)
            (3 4 26 25)
            (4 5 27 26)
            (5 6 28 27)
            (6 0 22 28)
        );
    }

    botwall
    {
    	type wall;
    	faces
    	(
    		(20 21 43 42)
    		(21 7 29 43)
    		(7 8 30 29)
    	);
    }

    topwall
    {
    	type wall;
    	faces
    	(
    		(13 14 36 35)
    		(14 15 37 36)
    		(15 16 38 37)
    		(16 17 39 38)
    	);
    }

    inlet
    {
        type patch;
        faces
        (
            (8 9 31 30)
            (9 10 32 31)
            (10 11 33 32)
            (11 12 34 33)
            (12 13 35 34)
        );
    }

    outlet
    {
        type patch;
        faces
        (
            (18 40 39 17)
            (19 41 40 18)
            (20 42 41 19)
        );
    }

    back
    {
        type empty;
        faces
        (
            (8 9 0 7)
            (9 10 1 0)
            (10 11 2 1)
            (11 12 3 2)
            (12 13 14 3)
            (3 14 15 4)
            (4 15 16 5)
            (16 17 18 5)
            (18 19 6 5)
            (19 20 21 6)
            (21 7 0 6)
        );
    }

    front
    {
        type empty;
        faces
        (
            (30 31 22 29)
            (31 32 23 22)
            (32 33 24 23)
            (33 34 25 24)
            (34 35 36 25)
            (25 36 37 26)
            (26 37 38 27)
            (38 39 40 27)
            (40 41 28 27)
            (41 42 43 28)
            (43 29 22 28)
        );
    }
);

// ************************************************************************* //
Grading and other things are not done properly yet. I dont think that would effect the projection process. I tried to draw how the blocks are numbered. And in the other image you can see the projection is not done.
Attached Images
File Type: jpg Capture.JPG (39.2 KB, 93 views)
File Type: jpg Capture2.JPG (132.2 KB, 98 views)
lourencosm likes this.
klitz is offline   Reply With Quote

Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
[snappyHexMesh] Doubts regarding the use of snappyHexMesh for multiregion meshing Shibi OpenFOAM Meshing & Mesh Conversion 4 October 22, 2021 12:38
OpenFOAM error Vinay Kumar V Main CFD Forum 0 February 20, 2020 10:17
[snappyHexMesh] very bad quality snapped mesh federicabi OpenFOAM Meshing & Mesh Conversion 18 September 26, 2018 11:33
GenerateVolumeMesh Error - Surface Wrapper Self Interacting (?) AndreP STAR-CCM+ 10 August 2, 2018 08:48
[ICEM] Automatic mesh generation script surface intersection problem stuart23 ANSYS Meshing & Geometry 0 May 13, 2011 02:10


All times are GMT -4. The time now is 22:30.