如何连续计算多个K文件
我想利用中午休息的时候让电脑自动计算多个K文件。不要同时算,算完一个在继续算下一个,请问如何实现,不胜感激!
我想利用中午休息的时候让电脑自动计算多个K文件。不要同时算,算完一个在继续算下一个,请问如何实现,不胜感激!
!!!Dyna批处理!!!
我都是自己编辑批处理来进行计算的,比ansys的好,我自己觉得,虽然不算高科技,总有人不知道,贴出来大家看看吧,具体办法如下:
1、设置环境变量。右键单击‘我的电脑’,选属性----高级-----环境变量,找到path变量,在变量值(很长很长)的最后添加一个分号‘;’,然后查找你的ansys安装目录下一个叫ls970的文件,找到之后把路径复制下来,拷贝到刚才分号的后面,确定再确定,设置环境变量的目的是使系统认识ls970命令在什么地方;环境变量设置成功与否,可这样检验,在运行里面键入ls970,回车,有窗口调出就行了。
2、编辑批处理文件。在你ansys工作目录(就是你要进行dyna计算的目录)新建文本文件,将后缀名从txt改变为bat,中间会询问你是否改变后缀名,是!!!右键单击之,选择编辑,出现空白的编辑界面:
情况A:你只想进行某一个单独的计算,只需要在批处理文件中键入;
ls970 i=jobname.k
保存,然后令批处理文件与k文件同目录,双击批处理,计算开始!!!
情况B:想进行系列计算,新建足够多空的文件夹,每个里面放一个你想计算的k文件,在这些空文件夹上一级目录同样建一个上述的批处理文件,进行如下编辑
cd D:\ansyswork\dyna1
ls970 i=jobname.k
cd D:\ansyswork\dyna2
ls970 i=jobname.k
cd D:\ansyswork\dyna3
ls970 i=jobname.k
上面的路径和k文件名根据自己的重新设置,保存,双击批处理,就等着吧,你的k文件就会一个一个接着算啦!
在批处理文件里也是可以设置使用的cpu数量的。
比如,在后面加上ncpu=2,则可以利用两个cpu进行并行计算,以此类推。
当然这需要license的支持。
同时打开几个k文件同时计算与一次利用多个cpu进行依次计算的效率会多少有点区别。
同时计算时对内存的要求更高,因为多个k文件需要多用内存。
一次利用多个cpu进行计算时,cpu可能不能100%利用,但这可以尽快得到前面几个k文件的计算结果,以便查看分析。另外,一次利用多个cpu进行计算时,它的效率也不会是单个cpu的同比例倍数。
在批处理里,还可以加上"shutdown -s"命令使计算机完成批处理计算后自动关机(当然也需要有管理员权限),大家要节约能源哦!
或者
cd D:\temp\1
path=C:\LSDYNA\program
ls971_p.exe i=1.k ncpu=2 memory=100000000
cd D:\temp\2
path=C:\LSDYNA\program
ls971_p.exe i=2.k ncpu=2 memory=100000000
cd D:\temp\3
path=C:\LSDYNA\program
ls971_p.exe i=3.k ncpu=2 memory=100000000
啊,实验成功,感谢5楼的朋友
不过问题接踵而至
如果我计算三个文件时,第一个文件由于模型内部的原因出错Error,那么还会继续跳过它计算后面两个文件吗?
如果不行,那应该怎么编写,才能让其跳过错误,继续进行后面几个文件的计算呢?谢谢
path就是表明ls971_p.exe文件的路径。写一次就够了。
末尾还可以加个shutdown自动关机。
至于计算出错,出错了dyna会退出,然后跳到下一个命令。
TOP
这个Submitter是LS-PrePost里面的那个Job Submitter吗?