使用abaqus将变量传递给python脚本文件python 2.6.2
问题描述:
我试图通过命令行将变量传递给abaqus
脚本文件(.psf)。每次执行另一个脚本时都会执行命令行调用,并且每次调用中的变量都有不同的值。在这方面,我可以在使用的命令语法方面提供帮助。我试过os.system
和subprocess.Popen
,都出现了某种错误。使用abaqus将变量传递给python脚本文件python 2.6.2
在我的主要脚本(.py文件),它会调用.psf
Xa=150000
abaqusCall = 'abaqus script=tt_Par.psf'
runCommand = 'cmd.exe /c ' + abaqusCall
process = subprocess.Popen(runCommand, cwd=workDir, args=Xa)
和.psf
它接受变量这种格式..
import sys,os
for item in sys.argv
x1 = sys.argv[0]
x2 = sys.argv[1]
print x1,x2
谁能给在这方面的方向?
谢谢你提前
答
试试这个。我不知道psf文件是什么,但我只是使用py文件。
def abaqus_cmd(mycmd):
'''
used to execute abaqus commands in the windows OS console
inputs : mycmd, an abaqus command
'''
import subprocess, sys
try:
retcode = subprocess.call(mycmd,shell=True)
if retcode < 0:
print >>sys.stderr, mycmd+"...failed during execution", -retcode
else:
print >>sys.stderr, mycmd+"...success"
except OSError as e:
print >>sys.stderr, mycmd+"...failed at execution", e
运行一个简单的命令来完成这一
abaqus_cmd('abaqus fetch job=beamExample')
传递变量,但是你可以做到这一点
odbfile = 'test.odb'
abaqus_cmd('abaqus python odb_to_txt.py '+odbfile)
,这仅仅是在ABAQUS一个Python实例,你不能访问这里是abaqus的核心。要访问abaqus核心,您需要像这样运行脚本。
abaqus_cmd('abaqus cae noGUI=beamExample.py')
I HAVE NOT 想出如何变量传递到在ABAQUS内核脚本,请参阅我的评论
还检查了http://stackoverflow.com/questions/22750272/can-i-传递命令行-参数到ABAQUS-蟒?全息= 1#28773379 – nagordon