Note: This discussion is about an older version of the COMSOL Multiphysics® software. The information provided may be out of date.

Discussion Closed This discussion was created more than 6 months ago and has been closed. To start a new discussion with a link back to this one, click here.

Problems with sweep mesh

Please login with a confirmed email address before reporting spam

Hi,

I have been trying to sweep mesh a domain (3-D). It will be like a small straight tube of rectangular cross section and having turns at right angles (like a serpentine). I tried to mesh the source and destination faces using 'edge' and 'mapped' option and subsequently tried to sweep mesh the entire domain. All I can get is, "invalid topology at the vertex". I found a pdf (lnf.umich.edu/nnin-at-michigan/wp-content/uploads/2012/11/comsol-guide.pdf), in which a domain similar to mine has been sweep meshed in page number 356 using comsol 3.5a. I am not able to find options like that in comsol 4.2, which I am using.

I kindly ask the experts in this area to comment on this and advice me. Thanks in advance.

13 Replies Last Post Jun 18, 2014, 2:27 a.m. EDT
Ivar KJELBERG COMSOL Multiphysics(r) fan, retired, former "Senior Expert" at CSEM SA (CH)

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago Feb 18, 2013, 1:05 a.m. EST
Hi

Sweep meshing requires that your "sides" are similar and not cut up by different boundaries, sometimes it's easier to make a geometry look rather "cubic art", with several blocks, then the sweep mesh works OK

--
Good luck
Ivar
Hi Sweep meshing requires that your "sides" are similar and not cut up by different boundaries, sometimes it's easier to make a geometry look rather "cubic art", with several blocks, then the sweep mesh works OK -- Good luck Ivar

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago Feb 19, 2013, 10:52 p.m. EST

Hi

Sweep meshing requires that your "sides" are similar and not cut up by different boundaries, sometimes it's easier to make a geometry look rather "cubic art", with several blocks, then the sweep mesh works OK

--
Good luck
Ivar


Hi

Thanks for replying Mr. Ivar. but I am not able to understand "sides being cut by boundaries" and "cubic art" in what you said. my domain can be appreciated as blocks of small cubes joined together. can you please tell me your email id so that I can mail you my model? because, I am not able to use the 'attach file' given below and you can have better eyes in it. my id is suryasiddarth92@gmail.com
[QUOTE] Hi Sweep meshing requires that your "sides" are similar and not cut up by different boundaries, sometimes it's easier to make a geometry look rather "cubic art", with several blocks, then the sweep mesh works OK -- Good luck Ivar [/QUOTE] Hi Thanks for replying Mr. Ivar. but I am not able to understand "sides being cut by boundaries" and "cubic art" in what you said. my domain can be appreciated as blocks of small cubes joined together. can you please tell me your email id so that I can mail you my model? because, I am not able to use the 'attach file' given below and you can have better eyes in it. my id is suryasiddarth92@gmail.com

Ivar KJELBERG COMSOL Multiphysics(r) fan, retired, former "Senior Expert" at CSEM SA (CH)

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago Feb 20, 2013, 4:23 p.m. EST
Hi

I do not have a 4.2 running, only the latest version so it's not obvious to explain. But we can try: make a simple 2D (or 3D) model with 2 rectangles (long blocks) shaped as an "L" with a small side of one rectangle flush with the start of the long edge of the smaller one. If you try to do a seep mesh you will get an error because the two rectangles intersect such that the 2 domains do not have even boundaries. But now if you make the same L shape with 3 domains, 2 identical for the two arms, and a small square at the intersecting, it will allow a sweep mesh, the topology of all surface are such that the sweep algorithm finds it's way. This is what I call "cubic" geometry, all geometries are made such that their boundaries are identical along the sweep direction. This is not always possible, but sometimes you can easily get 90% of your model cut up like that, then you can sweep that part, convert the remaining internal boundaries to triangles, and finish in "thet" mode for the remaining

Hope you got the issue, check also the doc about sweep mesh and consistent "topology" along the sweep direction

--
Good luck
Ivar
Hi I do not have a 4.2 running, only the latest version so it's not obvious to explain. But we can try: make a simple 2D (or 3D) model with 2 rectangles (long blocks) shaped as an "L" with a small side of one rectangle flush with the start of the long edge of the smaller one. If you try to do a seep mesh you will get an error because the two rectangles intersect such that the 2 domains do not have even boundaries. But now if you make the same L shape with 3 domains, 2 identical for the two arms, and a small square at the intersecting, it will allow a sweep mesh, the topology of all surface are such that the sweep algorithm finds it's way. This is what I call "cubic" geometry, all geometries are made such that their boundaries are identical along the sweep direction. This is not always possible, but sometimes you can easily get 90% of your model cut up like that, then you can sweep that part, convert the remaining internal boundaries to triangles, and finish in "thet" mode for the remaining Hope you got the issue, check also the doc about sweep mesh and consistent "topology" along the sweep direction -- Good luck Ivar

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago Feb 21, 2013, 3:32 a.m. EST

Hi

I do not have a 4.2 running, only the latest version so it's not obvious to explain. But we can try: make a simple 2D (or 3D) model with 2 rectangles (long blocks) shaped as an "L" with a small side of one rectangle flush with the start of the long edge of the smaller one. If you try to do a seep mesh you will get an error because the two rectangles intersect such that the 2 domains do not have even boundaries. But now if you make the same L shape with 3 domains, 2 identical for the two arms, and a small square at the intersecting, it will allow a sweep mesh, the topology of all surface are such that the sweep algorithm finds it's way. This is what I call "cubic" geometry, all geometries are made such that their boundaries are identical along the sweep direction. This is not always possible, but sometimes you can easily get 90% of your model cut up like that, then you can sweep that part, convert the remaining internal boundaries to triangles, and finish in "thet" mode for the remaining

Hope you got the issue, check also the doc about sweep mesh and consistent "topology" along the sweep direction

--
Good luck
Ivar


Hi

Thanks again for helping me Mr. Kjelberg. Actually, when doing as you said to mesh a L-shaped 3-D domain with 3 sub-domains, is it necessary that the source and destination faces are to meshed (using "edge" and "mapped" option) separately for all three domains separately and all the three source and destination faces are to be specified in the "source faces" and "destination faces" box in the "swept" option, or is it enough that only the starting and ending face of the big main domain are to be face meshed and specified as source and destination faces?

Also, can I extend this procedure if I need to mesh a domain in the shape of Π ? If i can, kindly tell me about how to specify the source and destination faces. Because, thats the error it is showing me.
[QUOTE] Hi I do not have a 4.2 running, only the latest version so it's not obvious to explain. But we can try: make a simple 2D (or 3D) model with 2 rectangles (long blocks) shaped as an "L" with a small side of one rectangle flush with the start of the long edge of the smaller one. If you try to do a seep mesh you will get an error because the two rectangles intersect such that the 2 domains do not have even boundaries. But now if you make the same L shape with 3 domains, 2 identical for the two arms, and a small square at the intersecting, it will allow a sweep mesh, the topology of all surface are such that the sweep algorithm finds it's way. This is what I call "cubic" geometry, all geometries are made such that their boundaries are identical along the sweep direction. This is not always possible, but sometimes you can easily get 90% of your model cut up like that, then you can sweep that part, convert the remaining internal boundaries to triangles, and finish in "thet" mode for the remaining Hope you got the issue, check also the doc about sweep mesh and consistent "topology" along the sweep direction -- Good luck Ivar [/QUOTE] Hi Thanks again for helping me Mr. Kjelberg. Actually, when doing as you said to mesh a L-shaped 3-D domain with 3 sub-domains, is it necessary that the source and destination faces are to meshed (using "edge" and "mapped" option) separately for all three domains separately and all the three source and destination faces are to be specified in the "source faces" and "destination faces" box in the "swept" option, or is it enough that only the starting and ending face of the big main domain are to be face meshed and specified as source and destination faces? Also, can I extend this procedure if I need to mesh a domain in the shape of Π ? If i can, kindly tell me about how to specify the source and destination faces. Because, thats the error it is showing me.

Ivar KJELBERG COMSOL Multiphysics(r) fan, retired, former "Senior Expert" at CSEM SA (CH)

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago Feb 21, 2013, 1:39 p.m. EST
Hi
meshing, I say often, is more an art than pure science, you need to try and fail a little, normally I manage often "just" to define the source, and select a series of domains such that the sweep works all the way (it will probably fail for a loop (thorus) but then do it in 2 steps.

--
Good luck
Ivar
Hi meshing, I say often, is more an art than pure science, you need to try and fail a little, normally I manage often "just" to define the source, and select a series of domains such that the sweep works all the way (it will probably fail for a loop (thorus) but then do it in 2 steps. -- Good luck Ivar

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago Feb 24, 2013, 3:27 a.m. EST

Hi
meshing, I say often, is more an art than pure science, you need to try and fail a little, normally I manage often "just" to define the source, and select a series of domains such that the sweep works all the way (it will probably fail for a loop (thorus) but then do it in 2 steps.

--
Good luck
Ivar



Hi
Many thanks for replying Mr. Kjelberg. I am able to do sweep mesh for an "L" shaped domain. But when trying to progress further by meshing " Π" shaped domain, what ever inputs I change, the error is the same. It reads that "source and destination has to be specified in Domain-14". Domain-14 is the domain in the other corner. Is there anything you think I can do other than letting my project down? I'm really fed up.
[QUOTE] Hi meshing, I say often, is more an art than pure science, you need to try and fail a little, normally I manage often "just" to define the source, and select a series of domains such that the sweep works all the way (it will probably fail for a loop (thorus) but then do it in 2 steps. -- Good luck Ivar [/QUOTE] Hi Many thanks for replying Mr. Kjelberg. I am able to do sweep mesh for an "L" shaped domain. But when trying to progress further by meshing " Π" shaped domain, what ever inputs I change, the error is the same. It reads that "source and destination has to be specified in Domain-14". Domain-14 is the domain in the other corner. Is there anything you think I can do other than letting my project down? I'm really fed up.

Ivar KJELBERG COMSOL Multiphysics(r) fan, retired, former "Senior Expert" at CSEM SA (CH)

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago Feb 25, 2013, 2:00 p.m. EST
Hi

Sometimes you need to add several sweep mesh nodes, one per segment

--
Good luck
Ivar
Hi Sometimes you need to add several sweep mesh nodes, one per segment -- Good luck Ivar

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago Feb 25, 2013, 11:44 p.m. EST

Hi

Sometimes you need to add several sweep mesh nodes, one per segment

--
Good luck
Ivar


Hi

I'm sorry Mr. Kjelberg, what is "sweep mesh node". I'm not able to precisely understand that even through help option. Please explain me about what to do.
[QUOTE] Hi Sometimes you need to add several sweep mesh nodes, one per segment -- Good luck Ivar [/QUOTE] Hi I'm sorry Mr. Kjelberg, what is "sweep mesh node". I'm not able to precisely understand that even through help option. Please explain me about what to do.

Ivar KJELBERG COMSOL Multiphysics(r) fan, retired, former "Senior Expert" at CSEM SA (CH)

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago Feb 26, 2013, 2:17 a.m. EST
Hi

try some of the videos on the main COMSOL site or check some of the webinars, then try the doc

the Sweep mesh node is the one you find by right-clicking the "Mesh" node and look down the list.

Once you have added this node you can define on which domain(s) you want this one to apply, then add sub node (right click on the new "sweep node") and add Size or better Distribution here you define the number of steps in the sweep direction.

To define manually the sweep direction you need to define the source boundary, possible the destination too if the domain is complex.
BUT, one condition is that all your lateral sweep boundaries have the same topology (=number of boundary entities)

The main trick is to decide where to start the sweep and along which path, and you need the same mesh on the source and destination boundaries if you define them both (use a "copy mesh" node in that case)

--
Good luck
Ivar
Hi try some of the videos on the main COMSOL site or check some of the webinars, then try the doc the Sweep mesh node is the one you find by right-clicking the "Mesh" node and look down the list. Once you have added this node you can define on which domain(s) you want this one to apply, then add sub node (right click on the new "sweep node") and add Size or better Distribution here you define the number of steps in the sweep direction. To define manually the sweep direction you need to define the source boundary, possible the destination too if the domain is complex. BUT, one condition is that all your lateral sweep boundaries have the same topology (=number of boundary entities) The main trick is to decide where to start the sweep and along which path, and you need the same mesh on the source and destination boundaries if you define them both (use a "copy mesh" node in that case) -- Good luck Ivar

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago Jun 17, 2014, 12:28 p.m. EDT
Hi,

I have one similar problem with meshing cilindrical elements which have spokes in circular direction (like a wheel rim). The problem is that when I do a section cut a try to mesh segments of the element, the sweep tool does not allow me to mesh tha circualr part and not try to mesh the spokes. It is probably a really common problem, but somehow I am not able to find anything similar in help or comsol community.

As Ivar wrote one way is to import assembled models from CAD, but in general this is a pretty longway when several elements are being analyzed and are already assembeld in a larger system.

Just to clarify my problem, I have attached a printscreen which shows very simple which segment I want to sweep in the first step and laso aims to which segments remain for next mesh nodes.


Thanks in advance

--
Kind regards,

Matej
Hi, I have one similar problem with meshing cilindrical elements which have spokes in circular direction (like a wheel rim). The problem is that when I do a section cut a try to mesh segments of the element, the sweep tool does not allow me to mesh tha circualr part and not try to mesh the spokes. It is probably a really common problem, but somehow I am not able to find anything similar in help or comsol community. As Ivar wrote one way is to import assembled models from CAD, but in general this is a pretty longway when several elements are being analyzed and are already assembeld in a larger system. Just to clarify my problem, I have attached a printscreen which shows very simple which segment I want to sweep in the first step and laso aims to which segments remain for next mesh nodes. Thanks in advance -- Kind regards, Matej


Ivar KJELBERG COMSOL Multiphysics(r) fan, retired, former "Senior Expert" at CSEM SA (CH)

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago Jun 17, 2014, 2:26 p.m. EDT
Hi

I would expect you can sweep your section if you "split" your volume such that you have a section of revolution for the outer and inner rim parts, then you would need either thets for the spokes, or try a structural surface mesh and sweep the spoke in the thickness, but you need as many mesh elements in the thickness for both inner and outer rims.

Another way, as you part is symmetric, would be to cut it into "pie" slices, and to separate the domains into outer rime entity, spoke and inner rim entity, then create the full volume by mirror and copy operations, and repeat the same for the mesh (mesh a section, then copy mirror the mesh all around

Then main limitation, sweep meshes cannot easily go around complex topologies with loops, you need to cut your domains into smaller items and handle them separately by programming manual mesh steps

I hope I made myself clear

--
Good luck
Ivar
Hi I would expect you can sweep your section if you "split" your volume such that you have a section of revolution for the outer and inner rim parts, then you would need either thets for the spokes, or try a structural surface mesh and sweep the spoke in the thickness, but you need as many mesh elements in the thickness for both inner and outer rims. Another way, as you part is symmetric, would be to cut it into "pie" slices, and to separate the domains into outer rime entity, spoke and inner rim entity, then create the full volume by mirror and copy operations, and repeat the same for the mesh (mesh a section, then copy mirror the mesh all around Then main limitation, sweep meshes cannot easily go around complex topologies with loops, you need to cut your domains into smaller items and handle them separately by programming manual mesh steps I hope I made myself clear -- Good luck Ivar

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago Jun 17, 2014, 5:18 p.m. EDT
Hello,

Ivar, thanks for the prompt reply.

Yes, I was expecting this is a "normal" way to resolve such simple multiple meshing, I just got confused with this thread: www.comsol.eu/community/forums/general/thread/25676
You probably meant that you import assemblies and not parts only for really complex parts which are more difficult to be segmented inside Comsol's environment, right?

At least from my perspective, SW has a more friendly UI and it also allows making split lines which are convenient for dividing boundaries or surfaces. For 3D geometries this tools is probably not useful and your proposed approach to split volumes for simple symmetric geometries inside Comsol and to divide parts into assemblies inside CAD environment is better.

I'm not at my WS at this moment and will try this in the morning.

Thanks again for your fast reply.

--
Kind regards,

Matej
Hello, Ivar, thanks for the prompt reply. Yes, I was expecting this is a "normal" way to resolve such simple multiple meshing, I just got confused with this thread: http://www.comsol.eu/community/forums/general/thread/25676 You probably meant that you import assemblies and not parts only for really complex parts which are more difficult to be segmented inside Comsol's environment, right? At least from my perspective, SW has a more friendly UI and it also allows making split lines which are convenient for dividing boundaries or surfaces. For 3D geometries this tools is probably not useful and your proposed approach to split volumes for simple symmetric geometries inside Comsol and to divide parts into assemblies inside CAD environment is better. I'm not at my WS at this moment and will try this in the morning. Thanks again for your fast reply. -- Kind regards, Matej

Ivar KJELBERG COMSOL Multiphysics(r) fan, retired, former "Senior Expert" at CSEM SA (CH)

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago Jun 18, 2014, 2:27 a.m. EDT
Hi

it's not "that complex" to segment geometries in COMSOL, you need to play a little with the Boolean operations in the geometry section (add a cylinder, take the exclusion (but keep all initial objects), then repeat for a smaller cylinder, finally delete all unwanted OBJECTs, you might also delete the ones in double but this is not strictly required, ads any geometric Object defined a multiple time, is reduced to one (or one set of) analysed Entities

--
Good luck
Ivar
Hi it's not "that complex" to segment geometries in COMSOL, you need to play a little with the Boolean operations in the geometry section (add a cylinder, take the exclusion (but keep all initial objects), then repeat for a smaller cylinder, finally delete all unwanted OBJECTs, you might also delete the ones in double but this is not strictly required, ads any geometric Object defined a multiple time, is reduced to one (or one set of) analysed Entities -- Good luck Ivar

Note that while COMSOL employees may participate in the discussion forum, COMSOL® software users who are on-subscription should submit their questions via the Support Center for a more comprehensive response from the Technical Support team.