Update 50000+ node coordinates

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

Hello,

 

In Hypermesh I would like to update the node coordinates of the nodes of a certain component in my model (new coordinates based on results of some simulation). I have a separate text file with per node ID the new coordinates. With TCL, I want to go through this list and update the node coordinate, using *setvalue  or *nodemodify. However, either of these commands take ~100 [ms] per node to update. Since I have more than 50,000 nodes, this will take too long. Exporting the model to a text file and editing it there is the current workaround but not preferable: I need a hypermesh file with the correct node coordinates and (very important, and the main source of my problem) the connection with the geometry.

So, I thought to use threads. However, this does not seem to work in Hypermesh. If I run the example file from some TCL book (which runs fine in the normal TCL shell) nothing happens: threads are created and destroyed but if I send something to the thread to be evaluated, nothing happens.

Can anyone help me how I can modify the coordinates of multiple nodes at the same time by using some kind of parallel processing?

 

Edit: I also tried *setvalue with multiple nodes on a mark but then all nodes get the same coordinate. For example:

*createmark nodes 1 1 2 3

*setvalue nodes mark=1 coordinates ='[list {0.0 0.0 0.0} {0. 0.1 0.1} {0.0 0.1 0.2}'  (without the '' but otherwise it was not shown in this message)

results in all 3 nodes having coordinate 0.0 0.0 0.0

 

 

Kind regards,

Loesje

Find more posts tagged with