Community Tip - When posting, your subject should be specific and summarize your question. Here are some additional tips on asking a great question. X
Can an autogem mesh created from a subassembly and saved be re-used in a top-level assembly autogem mesh? I'm using Creo Simulate (Creo Parametric 7.0.10.0), native mode.
I have saved several subassembly meshes and I would like to use them in a top-level assembly, but I'm unable to make it work. The subassembly meshes do not appear in the top level with all the connections that were created at that level; I must recreate them at the top level. The saved meshes are stored in the active workspace in Windchill as .mma files (.mmp files for parts).
I noticed that there is more literature available related to assembly meshes when using FEM mode. Is that the mode I should be using to create and save meshes for this task? Can this not be done using native mode?
Thanks!
Solved! Go to Solution.
You can use simplified reps but the default needs to be master so the assembly level simulation model gets propagated upward. Change anything that inherits the default exclude to be explicitly excluded, then change the default to master. I am not saying the everything has to be master but that only items that are at master will be included in the model and this includes at the assembly level. This also allows you to not include the assembly simulation model if you do not want it, by setting it to default exclude in whatever simplified rep is active. Just because parts within an assembly are master does not mean that the assembly containing them is set to master. Hopefully this all makes sense to you now. I think they should have had two settings for the assembly, both whether it was master or exclude at the assembly level and whether the default for sub-parts/assemblies would be master or exclude.
-regards
Note in my screenshot how the spring which is in the subassembly model is not present in the model that is set to default = exclude within a user defined simplified rep.
Hierarchical meshing is not supported for native mode. It might be possible for PTC to add this but there are significant technical challenges, with limited benefits since the top level still needs to validate the mesh and mesh anything missing. I am guessing that meshing from scratch could be faster than the steps needed to manage the hierarchical meshing. The original idea of Autogem is that it meshes automatically after you start the analysis. (at least since 1998 when I first used it). Is there some underlying reason you want to use a hierarchical mesh? For example are you able to mesh parts and subassemblies but difficulty at the top level? There are a lot of tips and best practices on building more complex models that the community could help you with.
Thank you for the response. I suspected that hierarchical meshing wasn't available in native mode, thank you for confirming.
I am able to mesh at the top assembly in native mode, but wanted to know if there were ways to streamline the meshing and inclusion of subassemblies that are used in multiple locations at the top assembly. For example, I am using a subassembly in three locations, and I wish to define a rigid link between two components within that subassembly. If I could create them at the subassembly level, and then bring that mesh into the top assembly, I wouldn't need to create the other rigid links at the top level, since they would already exist at the lower level and would ideally be recognized at the top level. Currently, I'm defining those rigid links for each instance of the subassembly at the top level.
Another case would be creating a more complex subassembly mesh with lumped masses, weighted links, etc. as a quick first-cut representation, which again, I'm able to do at the subassembly level and evaluate results (modal analysis, for example). It would be great to be able to bring that subassembly, along with all its previously defined masses, links, etc. into a top-level assembly, which would then have additional constraints and connections pertinent to the top level. I could then run a modal analysis, for example, at the top level, with the simplified subassembly mesh participating in the top-level modal analysis. Currently, if I want to do a modal analysis at the top level using a simplified subassembly, I have to recreate all the idealizations and connections at the top level as well.
Maybe I'm not using the correct approach. I would be interested in learning more about building complex models that you reference in your reply.
Thank you so much for clarifying! Hierarchical modelling does work in native mode, For example springs and rigids etc all propagate from parts to subassemblies to top level assemblies. If you are using simplified reps make sure the subassembly is set as master (simulate only works with master reps)
For this example the rigids are in the parts, the springs are in the subassemblies and the loads/constraints at the top level.
I missed the part about only using the master rep, thank you for pointing that out and showing an example. I have been using simplified reps other than the master rep, so that explains some of the behavior I'm seeing.
I often create simplified reps for analysis purposes. If I wish to be able to use these analysis simplified reps, is the workaround to create a "plus one" assembly set to master, and then use my analysis rep at that level? Or is there another way to accomplish this?
You can use simplified reps but the default needs to be master so the assembly level simulation model gets propagated upward. Change anything that inherits the default exclude to be explicitly excluded, then change the default to master. I am not saying the everything has to be master but that only items that are at master will be included in the model and this includes at the assembly level. This also allows you to not include the assembly simulation model if you do not want it, by setting it to default exclude in whatever simplified rep is active. Just because parts within an assembly are master does not mean that the assembly containing them is set to master. Hopefully this all makes sense to you now. I think they should have had two settings for the assembly, both whether it was master or exclude at the assembly level and whether the default for sub-parts/assemblies would be master or exclude.
-regards
Note in my screenshot how the spring which is in the subassembly model is not present in the model that is set to default = exclude within a user defined simplified rep.
Thank you for putting together this example. I'm not sure I follow completely but I'm going to experiment using your suggestions and see what happens in my situation(s). I think you're helping me get closer to my original intent, I appreciate your help.
I was able to successfully run a top-level simulation model that includes the mesh details (idealizations, connections, etc.) from lower level subassembly meshes using your example. Thanks very much for explaining the particulars of the simplified reps, that was the key to making it work.
That being said, is there a way to copy or otherwise propagate the status of the components of a subassembly into the top level assembly? For example, I have a subassembly that is used three times in the top assembly. Using your example, I need to set the state of each instance to master, and then work down the subassembly hierarchy and either set each component's status to master or exclude, as needed. If there was a way to set the state of one instance of the subassembly (including its components), and then copy that to the other two instances of the subassembly, it would save a lot of tedium/duplication. Again, perhaps I'm missing something.
At any rate, this seems to be working as I had hoped. Got any more good simulation tips/tricks?!
Hi Jeff,
You can choose a simplified rep called "user defined" then select the name of the rep. you saved. For example I use "FEA_REP" so it is clear that the rep is specifically for FEA.
In the subassembly- make a rep. specific for FEA
Then in the level above choose the USER DEFINED and select the FEA_Rep within the lower subassembly.
Also,
It is best if someone has answered your original question to mark the post as the solution so they get credit and so questions and answers can be found by the community. Chains of questions, and conversations, although related can become detached from the original question. As your question has evolved into how simplified reps work, this is best addressed by searching that topic or starting a new question if the existing info. is insufficient. As far as other tips and tricks, there are too many to respond with and there are varying categories. You can subscribe to see any posts to the entire Creo simulation section in your email inbox (use a rule to organize them into their own folder so you can browse them when you want and not clutter your inbox. You can also browse for my posts and I would note another advanced contributer @skunks has some good tips.
I searched for simplified reps and found some resources that can help you further your understanding.
Some simplified rep related posts.
https://www.ptc.com/en/support/article/CS319084?source=search
https://www.ptc.com/en/support/article/CS285908?source=search
Thanks. Yes, I was aware of and use this approach often in my assemblies. What I'm not seeing is the simulation features embedded in the subassembly user-defined FEA_rep showing up in the mesh of the top assembly FEA_rep. When I go back to the top assembly and change those subassemblies to master rep, and then go back into the top assembly FEA_rep, I see the subassembly simulation features in their respective FEA_reps (in the footer). Unfortunately, when I change the subassembly reps to master, all the components that I painstakingly excluded from or set as master in the subassembly FEA_reps reappear, and then I have to go back and exclude them in the top assembly FEA_rep one by one. It defeats the purpose of setting up the subassembly FEA_reps if their simulation features don't propagate up to the top-level FEA_rep and I have to redefine them as master. If there are multiple instances of the same subassembly, I have to do this for each subassembly, which, again, defeats the purpose of using user-defined reps. Hope that makes sense.
Your recommendation to use the master rep does work, but I was hoping that these user-defined reps would behave in a similar manner.
Maybe I am misunderstanding the way you use simplified reps, but I think you only need to correct the subassembly rep to default=master one time in a user defined rep and then reference that predefined user rep within the subassembly for every instance. You should not need to redo all the master/exclude for every instance of the subassembly. Another way to possibly describe this is to not set master/exclude at any level below the immediate assembly - assign the correct user defined rep for any subassemblies and let the subassembly control the master/exclude conditions.
Note how if you modify from the model tree, the user defined option does not show up, as well as all the substitute options.