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.

Can't form union of 1564 geometrical objects

Please login with a confirmed email address before reporting spam

Hi, I have trouble forming a union of 1564 connected geometrical objects that consist of cylinders and spheres made natively in COMSOL. Everytime I try to form a union, I get the error message: "Boolean geometry operation failed".

I have tried the following: repairing feature in COMSOL, increasing the repair tolerances, switching between COMSOL/CAD Kernel, defeaturing options such as remove small faces/short edges etc.

I would love to hear if you guys have any idea on how I can proceed from here.

My COMSOL version: COMSOL Multiphysics 5.4.0.295

The mph file barely exceeds 5 mb even though I optimized it for file size. I hope that it is fine with a Dropbox link: https://www.dropbox.com/s/93u3f95mdfpo6x1/COMSOL_Sephia.mph?dl=0

Best regards, Sephia


8 Replies Last Post Feb 4, 2019, 12:33 p.m. EST
Robert Koslover Certified Consultant

Please login with a confirmed email address before reporting spam

Posted: 5 years ago Jan 30, 2019, 3:50 p.m. EST

Here's another trick you can try:
When you have a large number of objects and can't seem to form a union of them all at once, try forming unions of subsets of your overall set of objects, first. Once those work, you can union those subsets (sub-unions?) together. You will find that you can often/usually form these sub-unions. If there are one or more trouble spots, you may find that you can't form unions that include those particular objects. But if so, that will at least let you know which objects are the source(s) of your problem(s), and you can concentrate your repair/editing there. Once you have isolated and fixed those issues, you can contiunue to form unions until you can create an overall union. I looked at your file. I can already form unions of some of the parts, just not all of them at once. So you just might be able to get there, if you proceed as I described. Good luck.

-------------------
Scientific Applications & Research Associates (SARA) Inc.
www.comsol.com/partners-consultants/certified-consultants/sara
Here's another trick you can try: When you have a large number of objects and can't seem to form a union of them all at once, try forming unions of subsets of your overall set of objects, first. Once those work, you can union those subsets (sub-unions?) together. You will find that you can often/usually form these sub-unions. If there are one or more trouble spots, you may find that you can't form unions that include those particular objects. But if so, that will at least let you know which objects are the source(s) of your problem(s), and you can concentrate your repair/editing there. Once you have isolated and fixed those issues, you can contiunue to form unions until you can create an overall union. I looked at your file. I can already form unions of some of the parts, just not all of them at once. So you just might be able to get there, if you proceed as I described. Good luck.

Sergei Yushanov Certified Consultant

Please login with a confirmed email address before reporting spam

Posted: 5 years ago Jan 30, 2019, 4:05 p.m. EST

Sephia,

Union fails because you have duplicate objects on the same locations - remove/disable all duplicates and Union will work, as shown in the attached imgaes.

Regards,

Sergei

Sephia, Union fails because you have duplicate objects on the same locations - remove/disable all duplicates and Union will work, as shown in the attached imgaes. Regards, Sergei


Please login with a confirmed email address before reporting spam

Posted: 5 years ago Jan 30, 2019, 5:31 p.m. EST

Here's another trick you can try:
When you have a large number of objects and can't seem to form a union of them all at once, try forming unions of subsets of your overall set of objects, first. Once those work, you can union those subsets (sub-unions?) together. You will find that you can often/usually form these sub-unions. If there are one or more trouble spots, you may find that you can't form unions that include those particular objects. But if so, that will at least let you know which objects are the source(s) of your problem(s), and you can concentrate your repair/editing there. Once you have isolated and fixed those issues, you can contiunue to form unions until you can create an overall union. I looked at your file. I can already form unions of some of the parts, just not all of them at once. So you just might be able to get there, if you proceed as I described. Good luck.

Thank you Robert for a great suggestion! I feel that this is an important methodology that can be applied in many more scenarios. I will definitely keep this in mind for future works!

Sephia,

Union fails because you have duplicate objects on the same locations - remove/disable all duplicates and Union will work, as shown in the attached imgaes.

Regards,

Sergei

Thank you Sergei for your thorough analysis of the problem and your very helpful powerpoint slides. I will try to remove the duplicate objects and see if it solves my problem. I honestly thought it wouldn't be a big deal for COMSOL to deal with completely overlapping objects.

Best regards, Sephia

>Here's another trick you can try: >When you have a large number of objects and can't seem to form a union of them all at once, try forming unions of subsets of your overall set of objects, first. Once those work, you can union those subsets (sub-unions?) together. You will find that you can often/usually form these sub-unions. If there are one or more trouble spots, you may find that you can't form unions that include those particular objects. But if so, that will at least let you know which objects are the source(s) of your problem(s), and you can concentrate your repair/editing there. Once you have isolated and fixed those issues, you can contiunue to form unions until you can create an overall union. I looked at your file. I can already form unions of some of the parts, just not all of them at once. So you just might be able to get there, if you proceed as I described. Good luck. Thank you Robert for a great suggestion! I feel that this is an important methodology that can be applied in many more scenarios. I will definitely keep this in mind for future works! >Sephia, > >Union fails because you have duplicate objects on the same locations - remove/disable all duplicates and Union will work, as shown in the attached imgaes. > >Regards, > >Sergei Thank you Sergei for your thorough analysis of the problem and your very helpful powerpoint slides. I will try to remove the duplicate objects and see if it solves my problem. I honestly thought it wouldn't be a big deal for COMSOL to deal with completely overlapping objects. Best regards, Sephia

Please login with a confirmed email address before reporting spam

Posted: 5 years ago Feb 2, 2019, 4:57 p.m. EST

UPDATE

I have been working on my model and incorporated both strategies from Robert and Sergei. First I removed all duplicated objects; i.e. only unique objects exist now. Secondly, I tried to form sub-unions and then form a final union of the sub-unions at the end. So far, I have only succeded once with one specific type of model. But for any variations of the same model, forming a union is seemingly impossible. From my point of view, COMSOL seems very inconsistent with the union operator.

Down below I have attached 2 mph-files, one where I succeed in forming a union and one where I fail. Both models are very similar, so it is very strange that one fails but not the other. I have tried forming unions of around 10 different versions of this model, but somehow, only 1 of them succeded. What is the difference between the models? Why is one model more compatible with COMSOL's union operator than the other?

Best regards, Sephia

**UPDATE** I have been working on my model and incorporated both strategies from Robert and Sergei. First I removed all duplicated objects; i.e. only unique objects exist now. Secondly, I tried to form sub-unions and then form a final union of the sub-unions at the end. So far, I have only succeded once with one specific type of model. But for any variations of the same model, forming a union is seemingly impossible. From my point of view, COMSOL seems very inconsistent with the union operator. Down below I have attached 2 mph-files, one where I succeed in forming a union and one where I fail. Both models are very similar, so it is very strange that one fails but not the other. I have tried forming unions of around 10 different versions of this model, but somehow, only 1 of them succeded. What is the difference between the models? Why is one model more compatible with COMSOL's union operator than the other? Best regards, Sephia


Edgar J. Kaiser Certified Consultant

Please login with a confirmed email address before reporting spam

Posted: 5 years ago Feb 2, 2019, 6:46 p.m. EST

Hi Sephia,

I increased the absolute repair tolerance to 1e-5 or 1e-4, then the failed model builds a union. However, meshing this will be the next challenge. This geometry creates many difficult spots, probably due to all the intersecting objects and also maybe inaccuracies in positions and directions resulting in small faces and short edges.

Cheers Edgar

-------------------
Edgar J. Kaiser
emPhys Physical Technology
www.emphys.com
Hi Sephia, I increased the absolute repair tolerance to 1e-5 or 1e-4, then the failed model builds a union. However, meshing this will be the next challenge. This geometry creates many difficult spots, probably due to all the intersecting objects and also maybe inaccuracies in positions and directions resulting in small faces and short edges. Cheers Edgar

Please login with a confirmed email address before reporting spam

Posted: 5 years ago Feb 2, 2019, 7:25 p.m. EST

Hi Edgar!

It is a bit embarrassing that I overlooked the repair tolerance this time. It is usually one of the first remedies I try first. Thanks for the quick reply!

Best regards, Sephia

Hi Edgar! It is a bit embarrassing that I overlooked the repair tolerance this time. It is usually one of the first remedies I try first. Thanks for the quick reply! Best regards, Sephia

Sergei Yushanov Certified Consultant

Please login with a confirmed email address before reporting spam

Posted: 5 years ago Feb 4, 2019, 8:54 a.m. EST

Sephia,

To mesh geometry, add Union and make sure to clear box "Keep interior boundaries", otherwise meshing would fail.

Regards,

Sergei

Sephia, To mesh geometry, add Union and make sure to clear box "Keep interior boundaries", otherwise meshing would fail. Regards, Sergei


Please login with a confirmed email address before reporting spam

Posted: 5 years ago Feb 4, 2019, 12:33 p.m. EST

Dear Sergei,

Thank you for the reminder, it was not clear for me what consequences "Keep interior boundaries" would result in.

I now have a simplified prototype model that works thanks to everyone. While I am happy that everyone's expertise helped me move forward, I now understand that there is certainly no way I can upscale the complexity of my model, which was the intention from the beginning. I have attached one of my most complex models down below, you will see what I mean.

Best regards, Sephia

Dear Sergei, Thank you for the reminder, it was not clear for me what consequences "Keep interior boundaries" would result in. I now have a simplified prototype model that works thanks to everyone. While I am happy that everyone's expertise helped me move forward, I now understand that there is certainly no way I can upscale the complexity of my model, which was the intention from the beginning. I have attached one of my most complex models down below, you will see what I mean. Best regards, Sephia

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.