Can't create entityset for a single node without assigning a property to it

User: "Altair Forum User"
Altair Employee
Updated by Altair Forum User

Hello,

 

I was trying to create a node using,

 *createnode 0 0 0 0 0 0;

and then assigning it to an entityset using,

 *createmark nodes 1 [hm_latestentityid nodes]; *entitysetcreate 'SetName' nodes 1;

 

However when I go check the created set in the HyperMesh Model GUI under Sets, it doesn't show any nodes added to it.

 

I'd appreciate any help with this issue.

 

Thanks.

Find more posts tagged with

Sort by:
1 - 11 of 111
    User: "QuyNguyenDai"
    Altair Community Member
    Updated by QuyNguyenDai

    Your commands work without issue on my Hypermesh.

    User: "Altair Forum User"
    Altair Employee
    OP
    Updated by Altair Forum User

    Your commands work without issue on my Hypermesh.

    These commands work for me as well when I type them into the hm tcl console. However, when I use these commands in a script, the set that is created does not have any nodes.

     

    However, if after creating the set and assigning the node to it, I assign a property to the node using tcl script, then the set seems to retain the node that I had assigned earlier.

     

    I'm not really sure why this is happening.

    User: "tinh"
    Altair Community Member
    Updated by tinh

    These commands work for me as well when I type them into the hm tcl console. However, when I use these commands in a script, the set that is created does not have any nodes.

     

     

     

    That means your script has bug

     

     

    Actually, I don't know how to assign property to a node. If you have problem with your script then show it here. We will debug it easily

    User: "Altair Forum User"
    Altair Employee
    OP
    Updated by Altair Forum User

     

    That means your script has bug

     

     

    Actually, I don't know how to assign property to a node. If you have problem with your script then show it here. We will debug it easi

    @tinh : I think I realize where the issue is occuring in my script now. Having said that, I still don't have a fix for it.
     

    To put it very simply, this is my script,

     *createnode 0 0 0 0 0 0 *createmark nodes 1 [hm_latestentityid nodes] *entitysetcreate OneNode nodes 1 *createnode 0 0 5 0 0 0 *createmark nodes 1 [hm_latestentityid nodes] *entitysetcreate TwoNode nodes 1 *createnode 0 0 10 0 0 0 *createmark nodes 1 [hm_latestentityid nodes] *entitysetcreate ThreeNode nodes 1 *nodecleartempmark

    When I run this script, the three sets, 'OneNode','TwoNode' and 'ThreeNode' do get created, however only the 'ThreeNode' entity set has a node in it. The other two sets have 0 nodes in them. I figured out that due to the use of *nodecleartempmark, only the most recently created node is left which is why ThreeNode has a node in it.

     

    However, my question is that how should I make all three sets retain their nodes and not just the last one.

     

     

    User: "QuyNguyenDai"
    Altair Community Member
    Updated by QuyNguyenDai

    The following code works for me:

     *createnode 0 0 0 0 0 0 *createmark nodes 1 [hm_latestentityid nodes] *entitysetcreate OneNode nodes 1 *clearmark nodes 1  *createnode 0 0 5 0 0 0 *createmark nodes 1 [hm_latestentityid nodes] *entitysetcreate TwoNode nodes 1 *clearmark nodes 1  *createnode 0 0 10 0 0 0 *createmark nodes 1 [hm_latestentityid nodes] *entitysetcreate ThreeNode nodes 1 *clearmark nodes 1 

     

    <?xml version="1.0" encoding="UTF-8"?>mode_set.png

    User: "Altair Forum User"
    Altair Employee
    OP
    Updated by Altair Forum User

    @Q.Nguyen-Dai : Yes, my code does work without the *nodecleartempmark statement as well, however I do need to clear the temporary nodes at the end of my program, and if I do so, the added nodes disappear from two of the three entitysets. So my question is how can I make the entity sets retain the added nodes even after *nodecleartempmark is used ?

    User: "QuyNguyenDai"
    Altair Community Member
    Updated by QuyNguyenDai

    You can't. Because Hypermesh does not keep 'temporary' nodes after   '*nodecleartempmark' command.

    To keep these nodes, you can creat some lines based on these nodes, or some element?

    User: "Altair Forum User"
    Altair Employee
    OP
    Updated by Altair Forum User

    You can't. Because Hypermesh does not keep 'temporary' nodes after   '*nodecleartempmark' command.

    To keep these nodes, you can creat some lines based on these nodes, or some element?

    @Q.Nguyen-Dai : The issue is that I only have to keep these nodes as RefNodes (kind of a point node to represent an entire mass) which is why I cannot create lines or elements with these Nodes as they serve as reference nodes. Hence, I was looking for a solution by which I could convert these temporary nodes to permanent ones so that they remain stored in the entity set.

    User: "QuyNguyenDai"
    Altair Community Member
    Updated by QuyNguyenDai

    No way to keep temporary nodes after '*nodecleartempmark' command. So don't use this command!

     

    User: "tinh"
    Altair Community Member
    Updated by tinh

    @Q.Nguyen-Dai : The issue is that I only have to keep these nodes as RefNodes (kind of a point node to represent an entire mass) which is why I cannot create lines or elements with these Nodes as they serve as reference nodes. Hence, I was looking for a solution by which I could convert these temporary nodes to permanent ones so that they remain stored in the entity set.

     

     

    If you need a node represents lumped mass, create mass element on it

    User: "Altair Forum User"
    Altair Employee
    OP
    Updated by Altair Forum User

     

     

    If you need a node represents lumped mass, create mass element on it

    @tinh : Thank you for that suggestion. It worked perfectly. Just as a side note, I was able to find another hypermesh command called *makepreservednodes which also does the same thing, converts a list of temporary nodes on a mark to preserved nodes which are retained even after using *nodecleartempmark.