CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > OpenFOAM Native Meshers: blockMesh

Using "extrudeToRegionMesh" on the intersection of two zones

Register Blogs Members List Search Today's Posts Mark Forums Read

Like Tree2Likes

Reply
 
LinkBack Thread Tools Display Modes
Old   November 22, 2015, 09:57
Default Using "extrudeToRegionMesh" on the intersection of two zones
  #1
Member
 
Mahdi S
Join Date: Jul 2012
Posts: 34
Rep Power: 6
Mahdi2010 is on a distinguished road
Hi All

I am trying to create a thin wall film mesh by extruding the intersection of 2 zones. I mean I have a simple mesh split into 2 zones (one fluid and one solid zone) using " splitMeshRegions". The intersection of these two zones is of course an internal patch which is automatically considered in blockMesh. (actually not possible to specify any BC in blockMeshDict because it is an internal patch)

Now I want to extrude this internal patch (which should be considered as a wall over the solid zone) into a thin film region. According to the tutorial cases I need a "faceSet" and "faceSetZones" over this patch to be able to extrude from. But I cannot create this faceSet using topoSet, because this is an internal patch and cannot be named, while I would need a patch name as the "reference" in the topoSet file.

Does anybody have experience in creating a faceSetZone over the intersection of two zones (i.e. an internal patch)?
Mahdi2010 is offline   Reply With Quote

Old   December 13, 2015, 14:56
Default
  #2
Senior Member
 
Mojtaba.a's Avatar
 
Mojtaba Amiraslanpour
Join Date: Jun 2011
Location: Zanjan, Iran
Posts: 287
Rep Power: 8
Mojtaba.a is on a distinguished road
Send a message via Skype™ to Mojtaba.a
Quote:
Originally Posted by Mahdi2010 View Post
Hi All

I am trying to create a thin wall film mesh by extruding the intersection of 2 zones. I mean I have a simple mesh split into 2 zones (one fluid and one solid zone) using " splitMeshRegions". The intersection of these two zones is of course an internal patch which is automatically considered in blockMesh. (actually not possible to specify any BC in blockMeshDict because it is an internal patch)

Now I want to extrude this internal patch (which should be considered as a wall over the solid zone) into a thin film region. According to the tutorial cases I need a "faceSet" and "faceSetZones" over this patch to be able to extrude from. But I cannot create this faceSet using topoSet, because this is an internal patch and cannot be named, while I would need a patch name as the "reference" in the topoSet file.

Does anybody have experience in creating a faceSetZone over the intersection of two zones (i.e. an internal patch)?
Hi,
How would you extrude a faceSet, when you already have some cells in your solid or fluid regions?
__________________
Learn OpenFOAM in Persian for free, And ask your questions here.
Complex Heat & Flow Simulation Research Group
If you can't explain it simply, you don't understand it well enough. "Richard Feynman"
Mojtaba.a is offline   Reply With Quote

Old   December 13, 2015, 16:13
Default
  #3
Member
 
Mahdi S
Join Date: Jul 2012
Posts: 34
Rep Power: 6
Mahdi2010 is on a distinguished road
Quote:
Originally Posted by Mojtaba.a View Post
Hi,
How would you extrude a faceSet, when you already have some cells in your solid or fluid regions?

Actually I am trying to extrude a faceSetZone into a new "mesh region" which is a film. So if I had two regions (i.e fluid and solid), this would be the third region. But in contrast to fluid and solid regions, this new region is a film region (surface mesh). So at the end there will be three regions:
1) solid
2) fluid
3) wall film

This will be done using "extrudeToRegionMesh" .
Mahdi2010 is offline   Reply With Quote

Old   December 13, 2015, 16:28
Default
  #4
Senior Member
 
Mojtaba.a's Avatar
 
Mojtaba Amiraslanpour
Join Date: Jun 2011
Location: Zanjan, Iran
Posts: 287
Rep Power: 8
Mojtaba.a is on a distinguished road
Send a message via Skype™ to Mojtaba.a
Quote:
Originally Posted by Mahdi2010 View Post
Actually I am trying to extrude a faceSetZone into a new "mesh region" which is a film. So if I had two regions (i.e fluid and solid), this would be the third region. But in contrast to fluid and solid regions, this new region is a film region (surface mesh). So at the end there will be three regions:
1) solid
2) fluid
3) wall film

This will be done using "extrudeToRegionMesh" .
So there is a gap between the regions you are calling fluid and solid?
__________________
Learn OpenFOAM in Persian for free, And ask your questions here.
Complex Heat & Flow Simulation Research Group
If you can't explain it simply, you don't understand it well enough. "Richard Feynman"
Mojtaba.a is offline   Reply With Quote

Old   December 13, 2015, 16:52
Default
  #5
Member
 
Mahdi S
Join Date: Jul 2012
Posts: 34
Rep Power: 6
Mahdi2010 is on a distinguished road
Quote:
Originally Posted by Mojtaba.a View Post
So there is a gap between the regions you are calling fluid and solid?
Actually I wouldn't call it a gap because there is no gap between solid and fluid zones. The solid and fluid are "cellSetZone"s while this film surface mesh is a "faceSetZone". This is similar to the strategy used in tutorial cases of solvers like "reactingParcelFilmFoam". If for instance you want to run a tutorial case of such solver (which solves 2D film model within the flow), you would see in the "Allrun" file that first a wallFilm faceSetZone is created using "topoSet" over one of the walls. and then "extrudeToRegionMesh" is used to extrude that wall film faceSetZone into a surface (2D) mesh. briefly as follows:

1- defining wallFilmFaces to create a faceSet.(called wallFilmFaces)
2- changing this faceSet to a faceSetZone (called wallFilmRegion)
3- extruding the wallFilm surface mesh from the faceSetZone created in step No. 2.

I should mention that the first two steps are done by "topoSet" (or wallFilm.topoSet) and the last one is done by "extrudeToRegionMesh"

So you can see this is not a gap, this is only a one single layer surface mesh.
What I am trying to do is exactly the same procedure except that before step 1, I would do another step in which I split the mesh into solid and fluid zones. then I am trying to do the above-mentioned steps on the inter-section patch of the fluid and solid.
Mahdi2010 is offline   Reply With Quote

Old   December 13, 2015, 17:41
Default
  #6
Senior Member
 
Mojtaba.a's Avatar
 
Mojtaba Amiraslanpour
Join Date: Jun 2011
Location: Zanjan, Iran
Posts: 287
Rep Power: 8
Mojtaba.a is on a distinguished road
Send a message via Skype™ to Mojtaba.a
Quote:
Originally Posted by Mahdi2010 View Post
Actually I wouldn't call it a gap because there is no gap between solid and fluid zones. The solid and fluid are "cellSetZone"s while this film surface mesh is a "faceSetZone". This is similar to the strategy used in tutorial cases of solvers like "reactingParcelFilmFoam". If for instance you want to run a tutorial case of such solver (which solves 2D film model within the flow), you would see in the "Allrun" file that first a wallFilm faceSetZone is created using "topoSet" over one of the walls. and then "extrudeToRegionMesh" is used to extrude that wall film faceSetZone into a surface (2D) mesh. briefly as follows:

1- defining wallFilmFaces to create a faceSet.(called wallFilmFaces)
2- changing this faceSet to a faceSetZone (called wallFilmRegion)
3- extruding the wallFilm surface mesh from the faceSetZone created in step No. 2.

I should mention that the first two steps are done by "topoSet" (or wallFilm.topoSet) and the last one is done by "extrudeToRegionMesh"

So you can see this is not a gap, this is only a one single layer surface mesh.
What I am trying to do is exactly the same procedure except that before step 1, I would do another step in which I split the mesh into solid and fluid zones. then I am trying to do the above-mentioned steps on the inter-section patch of the fluid and solid.
I see,
Well how about using createBaffles utility?
https://openfoamwiki.net/index.php/CreateBaffles

As the definition says: "Makes internal faces into boundary faces. Does not duplicate points, unlike mergeOrSplitBaffles."

Then you may use topoSet to define the faceZone.

However if you want to split the mesh and therefore have two separate boundaries on each side (so-called fluid and solid), you may use SplitMeshRegions.
__________________
Learn OpenFOAM in Persian for free, And ask your questions here.
Complex Heat & Flow Simulation Research Group
If you can't explain it simply, you don't understand it well enough. "Richard Feynman"
Mojtaba.a is offline   Reply With Quote

Old   December 13, 2015, 18:23
Default
  #7
Member
 
Mahdi S
Join Date: Jul 2012
Posts: 34
Rep Power: 6
Mahdi2010 is on a distinguished road
Quote:
Originally Posted by Mojtaba.a View Post
I see,
Well how about using createBaffles utility?
https://openfoamwiki.net/index.php/CreateBaffles

As the definition says: "Makes internal faces into boundary faces. Does not duplicate points, unlike mergeOrSplitBaffles."

Then you may use topoSet to define the faceZone.

However if you want to split the mesh and therefore have two separate boundaries on each side (so-called fluid and solid), you may use SplitMeshRegions.
In fact I am using "splitMeshRegions" because it can split the cellZoneSets into two regions (with everything split up automatically)

But about the baffles I will try if this is possible for my case. Then will come back to this post
Mahdi2010 is offline   Reply With Quote

Old   December 14, 2015, 04:23
Default
  #8
Senior Member
 
Mojtaba.a's Avatar
 
Mojtaba Amiraslanpour
Join Date: Jun 2011
Location: Zanjan, Iran
Posts: 287
Rep Power: 8
Mojtaba.a is on a distinguished road
Send a message via Skype™ to Mojtaba.a
Quote:
Originally Posted by Mahdi2010 View Post
In fact I am using "splitMeshRegions" because it can split the cellZoneSets into two regions (with everything split up automatically)

But about the baffles I will try if this is possible for my case. Then will come back to this post
Well I didn't mention you have used splitMeshRegions at first. By this utility you won't have any internal faces actually, but instead there would be two external boundaries each belongs to a zone (fluid and solid).
In this case, the "CreateBaffles" utility will have no use. After splitMeshRegions you actually have to see the boundaries in there. Share your boundary file to see what is going on in there, before and after splitMeshRegions.
__________________
Learn OpenFOAM in Persian for free, And ask your questions here.
Complex Heat & Flow Simulation Research Group
If you can't explain it simply, you don't understand it well enough. "Richard Feynman"
Mojtaba.a is offline   Reply With Quote

Old   December 14, 2015, 04:41
Default
  #9
Member
 
Mahdi S
Join Date: Jul 2012
Posts: 34
Rep Power: 6
Mahdi2010 is on a distinguished road
Quote:
Originally Posted by Mojtaba.a View Post
Well I didn't mention you have used splitMeshRegions at first. By this utility you won't have any internal faces actually, but instead there would be two external boundaries each belongs to a zone (fluid and solid).
In this case, the "CreateBaffles" utility will have no use. After splitMeshRegions you actually have to see the boundaries in there. Share your boundary file to see what is going on in there, before and after splitMeshRegions.
You are right. I also noticed the same when I checked CreateBaffles utility. When we use splitMeshRegions, there will be two automatically created patch belong to the fluid and solid zones each, as you also said. The point is that I was trying to extrude the face Mesh from the the one belongs to fluid (because then the film model is going to be solved within the fluid zone). I was aware of this fact.

Lets get back to the previous post where I wrote the 3 steps. Actually in the first step when I am going to create faceSet, I would have the following:

actions
(

{
name wallFilmSet;
type faceSet;
action new;
source patchToFace;
sourceInfo
{

INTERSECTION!!!;
}
}
)

So, the source is "patchToFace" and the sourceInfo should be this intersection. I mean if
can find a correct source info for this part, then I can proceed with step 2 and 3...
but the problem is that when I use splitMeshRegions, this intersection is defined but cannot be referred as an independent patch (like what we usually make and name in blockMesh). do you get what I am mentioning? after splitMeshRegions, of course there will be 2 patches in each zone, but these patches cannot be adressed here in the "sourceInfo"
Mahdi2010 is offline   Reply With Quote

Old   December 14, 2015, 04:59
Default
  #10
Senior Member
 
Mojtaba.a's Avatar
 
Mojtaba Amiraslanpour
Join Date: Jun 2011
Location: Zanjan, Iran
Posts: 287
Rep Power: 8
Mojtaba.a is on a distinguished road
Send a message via Skype™ to Mojtaba.a
Quote:
Originally Posted by Mahdi2010 View Post
You are right. I also noticed the same when I checked CreateBaffles utility. When we use splitMeshRegions, there will be two automatically created patch belong to the fluid and solid zones each, as you also said. The point is that I was trying to extrude the face Mesh from the the one belongs to fluid (because then the film model is going to be solved within the fluid zone). I was aware of this fact.

Lets get back to the previous post where I wrote the 3 steps. Actually in the first step when I am going to create faceSet, I would have the following:

actions
(

{
name wallFilmSet;
type faceSet;
action new;
source patchToFace;
sourceInfo
{

INTERSECTION!!!;
}
}
)

So, the source is "patchToFace" and the sourceInfo should be this intersection. I mean if
can find a correct source info for this part, then I can proceed with step 2 and 3...
but the problem is that when I use splitMeshRegions, this intersection is defined but cannot be referred as an independent patch (like what we usually make and name in blockMesh). do you get what I am mentioning? after splitMeshRegions, of course there will be 2 patches in each zone, but these patches cannot be adressed here in the "sourceInfo"
If there exists a patch then it should have been put in the boundary file by OF, then you will be use it. Otherwise you can't use it as patch. Share polyMesh/boundary to see the name of the patches. It is likely a name problem.
__________________
Learn OpenFOAM in Persian for free, And ask your questions here.
Complex Heat & Flow Simulation Research Group
If you can't explain it simply, you don't understand it well enough. "Richard Feynman"
Mojtaba.a is offline   Reply With Quote

Old   December 14, 2015, 05:07
Default
  #11
Member
 
Mahdi S
Join Date: Jul 2012
Posts: 34
Rep Power: 6
Mahdi2010 is on a distinguished road
Quote:
Originally Posted by Mojtaba.a View Post
If there exists a patch then it should have been put in the boundary file by OF, then you will be use it. Otherwise you can't use it as patch. Share polyMesh/boundary to see the name of the patches. It is likely a name problem.
I already checked. My geometry consists of two zones and the names are: topFluid and bottomSolid. so the boundary file in "constants/topFluid/polyMesh" is:

2
(
walls
{
type wall;
inGroups 1(wall);
nFaces 17500;
startFace 552500;
}
topFluid_to_bottomSolid
{
type mappedWall;
inGroups 1(wall);
nFaces 2500;
startFace 570000;
sampleMode nearestPatchFace;
sampleRegion bottomSolid;
samplePatch bottomSolid_to_topFluid;
}
)

and the boundary file in "constants/bottomSolid/polyMesh" is:


2
(
walls
{
type wall;
inGroups 1(wall);
nFaces 5000;
startFace 182500;
}

bottomSolid_to_topFluid
{
type mappedWall;
inGroups 1(wall);
nFaces 2500;
startFace 190000;
sampleMode nearestPatchFace;
sampleRegion topFluid;
samplePatch topFluid_to_bottomSolid;
}
)


I defined all the surrounding walls as "walls", so the only thing which both zones share
is this intersection. I also tried to use the name "topFluid_to_bottomSolid" or "bottomSolid_to_topFluid"
as sourceInfo but it didn't work.
Mahdi2010 is offline   Reply With Quote

Old   December 14, 2015, 05:40
Default
  #12
Senior Member
 
Mojtaba.a's Avatar
 
Mojtaba Amiraslanpour
Join Date: Jun 2011
Location: Zanjan, Iran
Posts: 287
Rep Power: 8
Mojtaba.a is on a distinguished road
Send a message via Skype™ to Mojtaba.a
Quote:
Originally Posted by Mahdi2010 View Post
I already checked. My geometry consists of two zones and the names are: topFluid and bottomSolid. so the boundary file in "constants/topFluid/polyMesh" is:

2
(
walls
{
type wall;
inGroups 1(wall);
nFaces 17500;
startFace 552500;
}
topFluid_to_bottomSolid
{
type mappedWall;
inGroups 1(wall);
nFaces 2500;
startFace 570000;
sampleMode nearestPatchFace;
sampleRegion bottomSolid;
samplePatch bottomSolid_to_topFluid;
}
)

and the boundary file in "constants/bottomSolid/polyMesh" is:


2
(
walls
{
type wall;
inGroups 1(wall);
nFaces 5000;
startFace 182500;
}

bottomSolid_to_topFluid
{
type mappedWall;
inGroups 1(wall);
nFaces 2500;
startFace 190000;
sampleMode nearestPatchFace;
sampleRegion topFluid;
samplePatch topFluid_to_bottomSolid;
}
)


I defined all the surrounding walls as "walls", so the only thing which both zones share
is this intersection. I also tried to use the name "topFluid_to_bottomSolid" or "bottomSolid_to_topFluid"
as sourceInfo but it didn't work.
Well of course in this case you would have problems. You have two separate regions saved into two separate polyMesh folders. This is what splitMeshRegions does.
First you have to use mergeMeshes to merge both meshes in a single polyMesh folder and then do the rest. Note that mergeing meshes would not combine two boundaries into one.

So here is what you do:

1. Define two different problems, each contains its own OF folders, i.e: constant, system.

2. Copy each polyMesh folders to the above created constant directories. So until here you have two separate cases each containing a zone (one fluid and the other solid)

3. Now try mergeMeshes utility in one of those cases to make it one. for example if you are running the command in fluid's directory:

Code:
mergeMeshes "./" "../solid/"
This would make a new folder depending on your time step (You can even use overwrite option, but I don't suggest it since it removes the old fluid mesh). In this time step you have a single mesh (polyMesh) which is a combination of the last two. In the boundary of of this newly combined Mesh, you would have 3 total boundaries including: walls, topFluid_to_bottomSolid and bottomSolid_to_topFluid.
Now copy this combined polyMesh file into a newly constructed case and continue with your other preferred steps.
Mahdi2010 likes this.
__________________
Learn OpenFOAM in Persian for free, And ask your questions here.
Complex Heat & Flow Simulation Research Group
If you can't explain it simply, you don't understand it well enough. "Richard Feynman"
Mojtaba.a is offline   Reply With Quote

Old   December 14, 2015, 05:52
Default
  #13
Member
 
Mahdi S
Join Date: Jul 2012
Posts: 34
Rep Power: 6
Mahdi2010 is on a distinguished road
Quote:
Originally Posted by Mojtaba.a View Post
Well of course in this case you would have problems. You have two separate regions saved into two separate polyMesh folders. This is what splitMeshRegions does.
First you have to use mergeMeshes to merge both meshes in a single polyMesh folder and then do the rest. Note that mergeing meshes would not combine two boundaries into one.

So here is what you do:

1. Define two different problems, each contains its own OF folders, i.e: constant, system.

2. Copy each polyMesh folders to the above created constant directories. So until here you have two separate cases each containing a zone (one fluid and the other solid)

3. Now try mergeMeshes utility in one of those cases to make it one. for example if you are running the command in fluid's directory:

Code:
mergeMeshes "./" "../solid/"
This would make a new folder depending on your time step (You can even use overwrite option, but I don't suggest it since it removes the old fluid mesh). In this time step you have a single mesh (polyMesh) which is a combination of the last two. In the boundary of of this newly combined Mesh, you would have 3 total boundaries including: walls, topFluid_to_bottomSolid and bottomSolid_to_topFluid.
Now copy this combined polyMesh file into a newly constructed case and continue with your other preferred steps.
Thanks for the hint, I will try to see if it works. but before that let me ask a question.
Actually from the beginning I have one single geometry and mesh created in blockMesh, and I split it by splitMesh. Do you mean I should avoid that or you mean first splitMesh and then mergeMesh? what if I don't use the splitMesh at all? I could not get that.
Mahdi2010 is offline   Reply With Quote

Old   December 14, 2015, 06:16
Default
  #14
Senior Member
 
Mojtaba.a's Avatar
 
Mojtaba Amiraslanpour
Join Date: Jun 2011
Location: Zanjan, Iran
Posts: 287
Rep Power: 8
Mojtaba.a is on a distinguished road
Send a message via Skype™ to Mojtaba.a
Quote:
Originally Posted by Mahdi2010 View Post
Thanks for the hint, I will try to see if it works. but before that let me ask a question.
Actually from the beginning I have one single geometry and mesh created in blockMesh, and I split it by splitMesh. Do you mean I should avoid that or you mean first splitMesh and then mergeMesh? what if I don't use the splitMesh at all? I could not get that.
Well the procedure I just mentioned above is after which you have used spliMeshRegions, however now I have a much more easier procedure for doing this. You can do these all only using blockMesh.
The point is that, when editing the blockMeshDict file, at the intersection boundary of the two zones try defining duplicate vertices each blonging to a block (which they would be defined as cellzones later in blockMesh). By this procedure you can easily have two separate faces in the intersection and you can define boundaries on them.
Next, you have to define cellzones for each block. I assume you know how to do that in blockMeshDict.
Mahdi2010 likes this.
__________________
Learn OpenFOAM in Persian for free, And ask your questions here.
Complex Heat & Flow Simulation Research Group
If you can't explain it simply, you don't understand it well enough. "Richard Feynman"
Mojtaba.a is offline   Reply With Quote

Old   December 14, 2015, 11:27
Default
  #15
Member
 
Mahdi S
Join Date: Jul 2012
Posts: 34
Rep Power: 6
Mahdi2010 is on a distinguished road
Quote:
Originally Posted by Mojtaba.a View Post
Well the procedure I just mentioned above is after which you have used spliMeshRegions, however now I have a much more easier procedure for doing this. You can do these all only using blockMesh.
The point is that, when editing the blockMeshDict file, at the intersection boundary of the two zones try defining duplicate vertices each blonging to a block (which they would be defined as cellzones later in blockMesh). By this procedure you can easily have two separate faces in the intersection and you can define boundaries on them.
Next, you have to define cellzones for each block. I assume you know how to do that in blockMeshDict.
I applied what you suggested. Thanks. Seems that problem is solved. But afterward when physical model for film motion is called, suddenly the error below arose:

--> FOAM FATAL ERROR:

request for polyMesh region0 from objectRegistry BOX_SolidFluidFilmRegions failed
available objects of type polyMesh are

3
(
bottomSolid
topFluid
wallFilmRegion
)


I tried to find out where we had something like region0 ( I guess this usually is the case when you leave some zones without specified name, right?). but I couldn't find it in the case. Do you have any suggestion?
Mahdi2010 is offline   Reply With Quote

Old   December 14, 2015, 11:40
Default
  #16
Senior Member
 
Mojtaba.a's Avatar
 
Mojtaba Amiraslanpour
Join Date: Jun 2011
Location: Zanjan, Iran
Posts: 287
Rep Power: 8
Mojtaba.a is on a distinguished road
Send a message via Skype™ to Mojtaba.a
Quote:
Originally Posted by Mahdi2010 View Post
I applied what you suggested. Thanks. Seems that problem is solved. But afterward when physical model for film motion is called, suddenly the error below arose:

--> FOAM FATAL ERROR:

request for polyMesh region0 from objectRegistry BOX_SolidFluidFilmRegions failed
available objects of type polyMesh are

3
(
bottomSolid
topFluid
wallFilmRegion
)


I tried to find out where we had something like region0 ( I guess this usually is the case when you leave some zones without specified name, right?). but I couldn't find it in the case. Do you have any suggestion?
Well I am not very familiar with film models, but as I guess I have seen this error in some other threads, too.
Out of curiosity, you have defined the sets or zones using blockMesh, right? Something like this: multiregion mesh with blockMesh
__________________
Learn OpenFOAM in Persian for free, And ask your questions here.
Complex Heat & Flow Simulation Research Group
If you can't explain it simply, you don't understand it well enough. "Richard Feynman"
Mojtaba.a is offline   Reply With Quote

Old   December 14, 2015, 12:13
Default
  #17
Member
 
Mahdi S
Join Date: Jul 2012
Posts: 34
Rep Power: 6
Mahdi2010 is on a distinguished road
Quote:
Originally Posted by Mojtaba.a View Post
Well I am not very familiar with film models, but as I guess I have seen this error in some other threads, too.
Out of curiosity, you have defined the sets or zones using blockMesh, right? Something like this: multiregion mesh with blockMesh
No. I used topoSet to define cell zones (one step before splitMesh) but the link you put here seems also a nice way I haven't seen before.
However seems not useful in my case because there are only two regions (except the film) and I intentionally want to make them split unless
I define different zones like this:

hex (0 1 3 2 6 7 9 8) topFluid (200 100 1) simpleGrading (1.0 1.0 1.0)
hex (2 3 5 4 8 9 11 10) bottomSolid (200 100 1) simpleGrading (1.0 1.0 1.0)

and then no need to splitMesh command? but what would be the benefit?
Mahdi2010 is offline   Reply With Quote

Old   December 14, 2015, 12:41
Default
  #18
Senior Member
 
Mojtaba.a's Avatar
 
Mojtaba Amiraslanpour
Join Date: Jun 2011
Location: Zanjan, Iran
Posts: 287
Rep Power: 8
Mojtaba.a is on a distinguished road
Send a message via Skype™ to Mojtaba.a
Quote:
Originally Posted by Mahdi2010 View Post
No. I used topoSet to define cell zones (one step before splitMesh) but the link you put here seems also a nice way I haven't seen before.
However seems not useful in my case because there are only two regions (except the film) and I intentionally want to make them split unless
I define different zones like this:

hex (0 1 3 2 6 7 9 8) topFluid (200 100 1) simpleGrading (1.0 1.0 1.0)
hex (2 3 5 4 8 9 11 10) bottomSolid (200 100 1) simpleGrading (1.0 1.0 1.0)

and then no need to splitMesh command? but what would be the benefit?
Well I am not sure but doesn't splitMesh command results in multiple polyMesh directories? My whole effort was to eliminate the actions of splitting and topoSet and the merging them into one polyMesh. Because you can do all of them using blockMesh.
On the other hand the name of the boundaries are in your hands while editing blockMesh. Of course the alternative is to change the names in the boundary file.
__________________
Learn OpenFOAM in Persian for free, And ask your questions here.
Complex Heat & Flow Simulation Research Group
If you can't explain it simply, you don't understand it well enough. "Richard Feynman"
Mojtaba.a is offline   Reply With Quote

Old   December 14, 2015, 13:59
Default
  #19
Member
 
Mahdi S
Join Date: Jul 2012
Posts: 34
Rep Power: 6
Mahdi2010 is on a distinguished road
Quote:
Originally Posted by Mojtaba.a View Post
Well I am not sure but doesn't splitMesh command results in multiple polyMesh directories? My whole effort was to eliminate the actions of splitting and topoSet and the merging them into one polyMesh. Because you can do all of them using blockMesh.
On the other hand the name of the boundaries are in your hands while editing blockMesh. Of course the alternative is to change the names in the boundary file.
Yes you are right. This way works well for putting the topoSet for cellzones aside. But anyway I need splitMesh because it creates the multiple directories. I also tested it right now, I faced the same error (saying that the intersection is not defined although it is written in the boundary file!!). So I can conclude in my case, the way you suggested is still an important step to be done (the mergeMesh command).
But let's get back to the alternative you said, by duplicating vertices in blockMesh. What do you exactly mean? because I did the same but at the end I had two boxes with no connection, so blockMesh failed to build the geometry. It is probably a misunderstanding of what you say.
Mahdi2010 is offline   Reply With Quote

Old   December 14, 2015, 14:25
Default
  #20
Senior Member
 
Mojtaba.a's Avatar
 
Mojtaba Amiraslanpour
Join Date: Jun 2011
Location: Zanjan, Iran
Posts: 287
Rep Power: 8
Mojtaba.a is on a distinguished road
Send a message via Skype™ to Mojtaba.a
Quote:
Originally Posted by Mahdi2010 View Post
Yes you are right. This way works well for putting the topoSet for cellzones aside. But anyway I need splitMesh because it creates the multiple directories. I also tested it right now, I faced the same error (saying that the intersection is not defined although it is written in the boundary file!!). So I can conclude in my case, the way you suggested is still an important step to be done (the mergeMesh command).
But let's get back to the alternative you said, by duplicating vertices in blockMesh. What do you exactly mean? because I did the same but at the end I had two boxes with no connection, so blockMesh failed to build the geometry. It is probably a misunderstanding of what you say.
How about re-asking your question in here and maybe sharing a sample case, since I would feel more convenient answering in there.
__________________
Learn OpenFOAM in Persian for free, And ask your questions here.
Complex Heat & Flow Simulation Research Group
If you can't explain it simply, you don't understand it well enough. "Richard Feynman"
Mojtaba.a is offline   Reply With Quote

Reply

Tags
facesetzone, splitmeshregions, toposetdict

Thread Tools
Display Modes

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 On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Adding porous zones in icoFoam solver josephn OpenFOAM Running, Solving & CFD 4 March 7, 2015 01:28
snappyHexMesh sticking point natty_king OpenFOAM Native Meshers: snappyHexMesh and Others 2 April 17, 2014 01:24
Multiple Zones in Ansys CFX 14.5 r.mojtaba CFX 3 July 28, 2013 07:31
[GAMBIT] 3D mesh for pipe intersection pranab_jha ANSYS Meshing & Geometry 3 May 28, 2010 01:33
Skipping Zones 1337Hal FLUENT 0 April 6, 2009 21:19


All times are GMT -4. The time now is 14:02.