Hello all,
we have a model with about 800.000 nodes that incluedes about 100 parts. Many of these partes are connected to one another by adhesive bonding. To connect the mesh of the adhesive to the mesh of the components we use bonded contact.
Unfortunately, the model becomes very slow. Running for 65 hours now and still "applying constraints".
Is there any way to speed up the bonded contact or, alternatively, is there a clever way to create compatible meshes in complex assemblies so that the adhesive may share commen nodes with the components to avoid bonded contact alltogether?
Thanks a lot for any advice!
Comments
Sorry it's so slow. The delay is in generating the MPCs and is caused by the inefficient way it accesses the system matrices so there's not much you can do besides using fewer nodes in the bonded contacts.
Can you use the CCX solver? It's much faster at MPCs. For 800 000 nodes, you would probably need to compile the MKL version with OOC whose source code is included with Mecway. I'm not sure if we've talked about this before but compiling it with that is pretty easy and only requires installing one extra thing (Mingw64). Or if you have enough RAM (~100 GB?), it should solve faster with an ILP64 (i8) version of CCX that I think is available at dhondt.de.
thanks for the advice. I will look at the post by @Sergio.
I already fiqured out that the bonded contact is much slower when the meshes are very different compared to nearly compatible meshes.
We may give ccx a try. But we are using laminate materials and sheetmetal parts that we model with shell elements. With ccx I am always a bit uncomfortable with shells because thay seem to be a bit buggy and shells with laminate are incompatible with some elements that we need to use (e.g. *mass)
We will try to get in compiled and see how it works. We have 64 GB RAM
Our other alternative is to rebuild the entire model with solids only and use common nodes for adhesive and component.
The version of CCX with Mecway 19 (and the source) is patched to allow all other element types except user elements to be used in the same model as laminates.
For example, a 100 000 node model with 12 000 bonded contact slave nodes that used to take 25 minutes for the Applying constraints stage now takes 25 seconds.
if that works that would sure be a major game changer. We'll check it out and let you know.
Thanks for looking in to this!
that fix worked incredibly well on a test model that we set up. Thank you very much!
Top: V19, Bottom V20_Beta3
3510 sec. vs. 37 sec. for applying constraints phase. Thats 95 times faster.
For curiosities sake: what was the issue before?
And is the beta version "safe to use" for 3d static" simulation?
Thanks!
Yes, it's OK for regular use of all the features. Every release I make, including special in-between versions like this, passes a comprehensive set of automated tests for the solvers. Sometimes there might be GUI or random crashing bugs which aren't well covered by test cases, but probably no new ones here.
Thanks for the background info, that makes sense.
In the meantime we have been solving a model we are currently working on in under two hours with beta release that previously wouldnt solve within 90h. We were actually just about to give up.
So thanks again for the great support.
Speaking of bugs:
I noticed that model edges do not hide in beta version.
The not hiding model edges is intentional. Some people have said they want an awareness of where the non-hidden parts are so I thought leaving that visible would do that, and you could turn it off most of the time if it's in the way. It also used to show a lot of unhelpful edges on the ragged cutting plane surfaces. Will that be OK or is it a real problem for you?
Now that you mention it leaving the model edges visible might be a benefit for post processing to have the hidden parts "transparent" for reference. Cant really say if it might be annoying in some situations right now. I'll let you know what i think of it once I have worked with it for a while.
Maybe an option to toggle the visibility of the hidden component's model edges in the preferences would be an option.
Back to bonded contact:
I noticed that the visualization performance gets bogged down quite a bit when selecting a bonded contact in the outline tree even If it does not include many nodes. Might there be a fix for that, too?
The slowness there is because it's matching up the nodes, faces, points on faces, etc. in the same way the solver does. It was meant to give a reliable visualization of which nodes connect to where. But perhaps nobody really needs that and simply showing dumb symbols on each face would be sufficient.
No doubt it can be improved but I don't see it as such a high priority. I just try not to click on bonded contacts.
I've never really used the inbuilt solver in part because it seemed so incredibly much slower than CCX (and because I often need nonlinearity) but that may be caused by me often using bonded contacts as most analysis consist of multiple STEP files from my CAD software which are bonded rather than being modeled as a single piece.
This may lead to me using the inbuilt solver more.
Back to the always visible model outlines: They do get in the way quite a bit if there are many components in one model. So having an option to "hide" or to "hide all but outline" would be a nice addition.
I might have to rethink the outline. Though don't forget you can make it thinner in Tools -> Options.
It is not there in V19. I thought it was intended to save the sum in outline tree or something like that...
I tried again and gave it more time. This time it worked. Don't know why its taking so long in this model (600k nodes). Maybe because of several configurations?
Sorry, I can't share the model.
Can the sum be defined before solving? It would be handy to have it available strait away.
Yes, once it's there, it'll be now evaluated when it solves.
That is a very convinient feature!
I sent you a mail with the outline tree.