我有一个abaqus python脚本,我一直用于参数研究.每次我想运行不同的选项时,进入代码并编辑它是很累的.我希望能够传递脚本参数,以便我可以运行不同的选项而无需更改代码.
我想做这样的事......
abaqus cae script='Script.py --verbose --data=someData.dat'
Run Code Online (Sandbox Code Playgroud)
我已经尝试了上述内容,我也尝试过
abaqus python Script.py --verbose --data=someData.dat
Run Code Online (Sandbox Code Playgroud)
没有成功.这是可能吗?
小智 5
从Abaqus Scripting用户手册:
通过在命令行上输入 - 后跟由一个或多个空格分隔的参数,可以将参数传递到脚本中.这些参数将被Abaqus/CAE执行过程忽略,但它们可以在脚本中访问.有关详细信息,请参阅"Abaqus/CAE执行",Abaqus分析用户手册的第3.2.5节和"Abaqus/Viewer执行",Abaqus分析用户手册的第3.2.6节.
很好找到Schickmeister.我不清楚如何实现,所以这是一个例子
在cmd.exe中启动abaqus python
abaqus cae noGUI
Run Code Online (Sandbox Code Playgroud)
输入一些python代码
>>>import sys
>>>print sys.argv
['C:\\ABAQUS\\6.13-2SE\\code\\bin\\ABQcaeK.exe', '-cae', '-noGUI', '-lmlog', 'ON', '-tmpdir', 'C:\\Windows\\TEMP']
>>>quit()
Run Code Online (Sandbox Code Playgroud)
看看有多少参数出现了?这就是为什么我们需要抓住最后一个现在使用参数"test.odb"启动你的python脚本
abaqus cae noGUI=odb_to_video.py -- test.odb
Run Code Online (Sandbox Code Playgroud)
并使用.检索脚本中的最后一个参数
odbname = sys.argv[-1]
myOdb = visualization.openOdb(path=odbname)
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助!
| 归档时间: |
|
| 查看次数: |
5300 次 |
| 最近记录: |