Jump to content


  • Content Count

  • Joined

  • Last visited

Everything posted by Loesje84

  1. Are you familiar with the TCL programming language to start with? If not, I would suggest to start to read some documentation on the TCL website: http://www.tcl.tk/man/tcl8.5/tutorial/tcltutorial.html All hypermesh commands can be found in the Hypermesh reference guide (in hypermesh go to help => Hyperworks help home) in section scripts. It's just a very long list (divided into 4 parts) and no clear explanation when to use what command, so just go through the list and see what you need. Or use search. In your case you will need the *createmarkpanel (to enable user to select a node) and hm_getvalue (to get the data you need, check under 'data names' what data can be extracting for what entity type) commands.
  2. What do you mean by: importing a new model and overwriting the coordinates? in what sense importing and overwriting? Already found what you mean: the Import solver deck tabs shows the possibility to import nodes only and with Fe overwrite, the coordinates are overwritten. I didn't think for a second about this possibility. Thank you very much. It does not solve the parallel processing problem (still need that for another purpose, ie new topic) but it does solve THIS problem very well.
  3. 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
  4. Well, I though we've tried every possible check/uncheck combination in this synchronization tool, but apparently not. However, unchecking everything freezes the load step of all models, so it's not the solution. The solution is, I found, to first set the first model to the appropriate step, uncheck master and the first model. You can then change the step of your second model, but note that it is IMPOSSIBLE to change the step of the first unchecked model (although it may seem in the dropdown menu used to select the step). If you want to compare a third model, you go to the second window, set it to the correct step and uncheck this model in the synch tool, etc. It will look (for three models) like this:
  5. Hello all, I have a question regarding viewing results of two abaqus result files in Hyperview. For some reason, Hyperview automatically synchronizes the loadstep (simulation step) when two ore more results are displayed in a page (for instance, left window myresfile.odb and right window myresfile2.odb). If I want to compare the results of loadstep 1 of file 1 and loadstep 3 of file 2, this is impossible! Everytime I go to the second window to select the third step, the first window jumps to step 3 too. And then I go back to window 1 to set it to step1, the second window jumps to step 1. Can anyone help, because this is extremely annoying. With NASTRAN models, by the way, this does not happen. Kind regards.
  6. Hello everyone, I'm a new user of Compose (have lots of experience in Matlab and Hypermath though) and I am plotting some data. I am experiencing two problems: 1) There seems to be no legend handle. So, I cannot edit the font size of the legend in my script. Any idea how to do this (in a script, not by clicking on the legend and editing it manually)? 2) When I execute the following lines, the Ylabel completely disappears from the figure. Even when I save it, there is no (or only some of the pixels) Ylabel; it is shifted too much to the left. How can I move the ylabel (again, in a script, although I'm not even able to move it by mouse or so). Changing the position of the axes or the figure does not help and there is no 'Position' option in the label handle. figure(1) plot([1:9],[20:20:180]) set(gca,'FontSize',12) ylabel('Reaction force [N]') legend('test') saveas(1,'testimg') Thank you for replying.
  7. Thank you for your response, but I already know the syntax, which is working perfectly on my machine. The problem is that when I want to run Hyperview in batchmode using TCL (so, with option -b) on the machines of my colleagues, they get the above mentioned error. Anyone else any idea how to solve it? We have Windows 7, 64bit computers by the way.
  8. Hello jcd, I'm not sure why you would want to submit an abaqus job through Hypermesh, but I can help you I think. Usually, when I want to run abaqus in tcl, I use the syntax exec abaqus job=abc (so without inp) sometimes with int included (for interactive mode) So, I'm not sure whether you've used this same syntax, but your actual"problem" is impatience Because something is running in Hypermesh in the background, hypermesh seems non-responding (this hold actually for all hyperworks programs...) However, when you check your task manager, or the abaqus files, you most likely will see progress. Hypermesh will start to respond again after the abaqus job has finished. What you can try, is to add & to the end of you line. Syntax: exec abaqus job=abc & This means that TCL won't wait for a return command of the program you're executing. Hypermesh will then (as far as I know) remain responsive. Kind regards, Loesje
  9. Dear all, I have written some macro's in TCL that use hyperview in batch mode. It runs fine on my machine, but my collegues get the error "Failed to load package hwt couldn't read file "c:/altair/14.0/hw/tcl/hwt/pkgIndex.tc" no such file or directory while executing "source {c:/altair/14.0/hw/tcl/hwt/pkgIndex.tcl}" What I did: I opened the tclsh85.tcl and typed in exec c:/altair/14.0/hw/bin/win64/hw.exe -b -tcl c:/user/test/tcl in which test.tcl contains "puts hello" When I run the same syntax (without exec) in cmd.exe it works, but as my progs are written in TCL, it's no use using cmd. I tried to add the hwt dir to the altair environment variable, added the path to auto_path, and I also ran source {c:/altair/14.0/hw/tcl/hwt/pkgIndex.tcl} in the tclshell, but it all didn't help. Package names shows on all computers the exact same list, either in the tchshell or in Hyperview. What could be different? By the way: if some of my collegues log in into my computer they also get this error, except 1 collegue: if he logs in on my computer it does work. If I, on the other hand, log in to their computer, I get the failed to load package error. Who can help me? Kind regards, Loesje84
  10. Wow, I've spent the past week trying installing tcom, and with twapi, within 2 minutes I got what I needed So, everyone trying using tcom for COM applications in hypermath: use twapi! @tinh: thank you so much for your help!
  11. Hi, I don't know anything about twapi, but as soon as I get any result, I'll post it here. Thank you for your reply!
  12. I know, I use the tcl window in hypermath. But what I came across, is that when I use the shell in tcl/win64/bin/tclsh85.exe, I can evaluate tcl files using "tclsh mytclfile.tcl". when I do the same in the tcl window in hypermath, I get: Tcl Error : invalid command name "tclsh85" while executing "tclsh85 myfile.tcl" myfile.tcl only containing: puts "hello world" Furthermor, when I want to use the tcom package is in the shell, this is no problem, while when I want to use it in de tcl window in hypermath, it doesnt work. I have set the auto_path variable pointing to the package. i made it identical to the auto_path of the shell. So, what is going wrong?
  13. Hi, thank you for the answer. tcom.dll and tcom.tcl are indeed the same folder. but, as you can read from my edited post: I got it partially to work. Can you help me resolving this issue?
  14. I have the same problem, however, I get "couldn't load library "..../hw/tcl/tcom.tcom.dll": this library or a dependent library could not be found in library path. I was able to use the tcom package in a seprate TCL installation (activestate, using teacup to install is), however I need the package to work in Hypermath too. What do I do wrong? (I just downloaded the 64bit tcom, and copied it as mentioned below. I do not have (experiece with) visual basics , C++, etc, just Matlab and Hyperworks, and now a bit tcl) >> edit: Ok, using teacup setup and teacup link make I set the repository of the tcl shell in win64/bin to that of the working activestate tcl installation. It seemed to work, howver it only works in the tclsh85 shell itself, but not in hypermath ](*,) why? Apparently, the tcl editor in hypermath is not the same as the tclsh85 shell (running tcl scripts using { tclsh helloworld.tcl } does not work either). who can help me out with this?
  • Create New...