如何更改 Abaqus 求解器可执行文件名
How to change Abaqus solver executable file name
我想比较两个并行的 运行Abaqus 模拟与用 Fortran 编码的 umat。似乎我能够 select 与每个 运行 关联的正确 standard.exe,但不会总是这么幸运。这促使我询问是否有办法调用 abaqus 作业并将 standard.exe 的名称更改为 standard1.exe 之类的名称以区分 运行。我检查了 abaqus 帮助,但似乎没有通过命令行的选项。
在 Abaqus 中 jobs/analyses 提交还有很大的改进空间...
总之,有空可以看看我的GitHub repo。我试图在提交作业时填补 Abaqus 中缺少的内容。如果您有任何问题,请告诉我。
或者您可以使用此代码来识别您所从事的工作的正确进程标识符 (pid) 运行。然后您可以终止与此 ID 关联的进程。
import psutil
processesList = psutil.pids()
jobname=''
print('\n\nStart')
for proc in processesList:
try:
p = psutil.Process(proc)
if (p.name()=='standard.exe' or p.name()=='explicit.exe' or p.name()=='pre.exe' or p.name()=='explicit_dp.exe'):
i=0
jobCpus='1'
jobGpus='0'
sameJob = False
print('\nPID: %s'%proc)
for line in p.cmdline():
if line == '-job':
if jobname==p.cmdline()[i+1]:
sameJob = True
else:
sameJob=False
jobname=p.cmdline()[i+1]
print('Job Name: %s'%jobname)
elif line == '-indir':
jobdir=p.cmdline()[i+1]
print('Job Dir: %s'%jobdir)
elif line == '-cpus':
jobCpus=p.cmdline()[i+1]
print('Cpus number: %s'%jobCpus)
elif line == '-gpus':
jobGpus=p.cmdline()[i+1]
print('Gpus number: %s'%jobGpus)
i+=1
except:
pass
print('\nEnd\n\n')
为了杀死一个进程,你可以使用这个命令:
import os, signal
os.kill(int(pid), signal.SIGTERM)
我想比较两个并行的 运行Abaqus 模拟与用 Fortran 编码的 umat。似乎我能够 select 与每个 运行 关联的正确 standard.exe,但不会总是这么幸运。这促使我询问是否有办法调用 abaqus 作业并将 standard.exe 的名称更改为 standard1.exe 之类的名称以区分 运行。我检查了 abaqus 帮助,但似乎没有通过命令行的选项。
在 Abaqus 中 jobs/analyses 提交还有很大的改进空间...
总之,有空可以看看我的GitHub repo。我试图在提交作业时填补 Abaqus 中缺少的内容。如果您有任何问题,请告诉我。
或者您可以使用此代码来识别您所从事的工作的正确进程标识符 (pid) 运行。然后您可以终止与此 ID 关联的进程。
import psutil
processesList = psutil.pids()
jobname=''
print('\n\nStart')
for proc in processesList:
try:
p = psutil.Process(proc)
if (p.name()=='standard.exe' or p.name()=='explicit.exe' or p.name()=='pre.exe' or p.name()=='explicit_dp.exe'):
i=0
jobCpus='1'
jobGpus='0'
sameJob = False
print('\nPID: %s'%proc)
for line in p.cmdline():
if line == '-job':
if jobname==p.cmdline()[i+1]:
sameJob = True
else:
sameJob=False
jobname=p.cmdline()[i+1]
print('Job Name: %s'%jobname)
elif line == '-indir':
jobdir=p.cmdline()[i+1]
print('Job Dir: %s'%jobdir)
elif line == '-cpus':
jobCpus=p.cmdline()[i+1]
print('Cpus number: %s'%jobCpus)
elif line == '-gpus':
jobGpus=p.cmdline()[i+1]
print('Gpus number: %s'%jobGpus)
i+=1
except:
pass
print('\nEnd\n\n')
为了杀死一个进程,你可以使用这个命令:
import os, signal
os.kill(int(pid), signal.SIGTERM)