首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将Abaqus库集成到PyCharm托管的项目中

如何将Abaqus库集成到PyCharm托管的项目中
EN

Stack Overflow用户
提问于 2014-04-23 11:28:52
回答 2查看 5.6K关注 0票数 10

关于将Abaqus特定的python库集成到一个托管在PyDev/Eclipse中的项目中,有一个类似的PyDev/Eclipse。但不幸的是,答案与我手头的问题不一致。

我正在使用ABAQUS版本6.11-2和社区版的PyCharm 3.1.3.Abaqus解释器驻留在我的windows7(64)机器上的以下位置:

代码语言:javascript
复制
C:\SIMULIA\Abaqus\6.11-2\Python\Obj\Python.exe
Python 2.6.2 for Abaqus 6.11-2 (r262:71600, Jun 29 2011, 19:23:41) [MSC v.1500 64 bit (AMD64)] on win32

我需要PyCharm来解决的库,为了给它的代码完成魔术一个转机,我就住在这里了--至少我认为它们是这样的。

代码语言:javascript
复制
C:\SIMULIA\Abaqus\6.11-2\Python\Lib
C:\SIMULIA\Abaqus\6.11-2\Python\Lib\abaqus.pyc
C:\SIMULIA\Abaqus\6.11-2\Python\Lib\abaqusConstants.pyc

下面是我要处理的脚本的第一行代码。

代码语言:javascript
复制
from abaqus import *
from abaqusConstants import *
backwardCompatibility.setValues(includeDeprecated=True, reportDeprecated=False)
import sketch
import part

PyCharm用红色下划线标记abaqus和abaqusConstants导入。显示:

代码语言:javascript
复制
 "Unresolved reference 'abaqus'".

有人能向我解释如何在PyCharm中配置项目,以便PyCharm能够解决这些导入吗?

将上述Python.exe作为项目解释器添加到“设置”对话框中将导致以下错误消息框:“无法在~path~处设置python。SDK似乎无效”。

问候

EN

回答 2

Stack Overflow用户

发布于 2019-04-08 05:55:13

我用的是abaqus 6.14-4,希望对你有帮助。我认为我们之所以需要PyCharm,是因为我们希望充分使用它的类型检查器和其他函数。如果我们只需要一个编辑器,那么Abaqus就足够了。

为了实现这个目标,我搜索abaqus的源代码已经很长时间了,但是找不到它。由于abaqus只提供已编译的*.pyc文件,所以我使用工具uncompyle6来解码*.pyc文件并在其中添加一些函数。

这是我的项目:皮查姆

  1. 注册\SIMULIA\Abaqus\6.14-4\tools\SMApy\python2.7\python.exe作为您的解释器(或者您可以选择任何您想要的)
  2. 将导入文件文件夹中的文件复制到网站包文件夹中。

注意到该程序使用os.system命令运行abaqus命令行,如下所示:

代码语言:javascript
复制
def saveAs(self, pathName):
    if isinstance(self.debug, bool) and self.debug:
        print(pathName)
    if 'ABAQUS_BAT_SETTING' in os.environ.keys():
        self.abaqus_bat_setting = os.environ['ABAQUS_BAT_SETTING']
    if 'ABAQUS_BAT_PATH' in os.environ.keys():
        self.abaqus_bat_path = os.environ['ABAQUS_BAT_PATH']
    os.system(self.abaqus_bat_path + ' cae -' + self.abaqus_bat_setting + ' ' + os.path.abspath(sys.argv[0]))

因此,我们需要设置环境,例如:

代码语言:javascript
复制
environ['ABAQUS_BAT_PATH'] = 'D:\\SIMULIA\\Abaqus\\Commands\\abaqus'
environ['ABAQUS_BAT_SETTING'] = 'noGUI'

它将以下列方式运行:

代码语言:javascript
复制
D:\SIMULIA\Abaqus\Commands\abaqus.bat -noGUI your_current_working_file.py
票数 5
EN

Stack Overflow用户

发布于 2019-04-04 02:31:25

虽然迟到了五年,但对于我来说,2016年的Abaqus2016和Windows10上的PyCharm 2019.1专业版都适用于我:

  1. 打开Abaqus CAE,转到内核命令行接口( >>>图标)并输入以下内容:
代码语言:javascript
复制
>>> import os
>>> print(os.environ['PYTHONPATH'])
C:\SIMULIA\CAE\2016;C:\SIMULIA\CAE\2016\win_b64;C:\SIMUL ...
  1. 复制输出并使系统范围内的PYTHONPATH环境变量。我修剪了一个重复条目和一些.路径。

  1. 重新启动PyCharm,以获取新的PYTHONPATH,转到文件/设置/项目/项目解释器,单击Cog图标,然后添加。选择系统解释器选项,然后将其指向Abaqus bin目录中的bin。在我的例子中,这是C:\SIMULIA\CAE\2016\win_b64\code\bin\python.exe。不要被像C:\SIMULIA\CAE\2016\win_b64\tools\SMApy\python2.7\python.exe这样的人误导--它们是行不通的。

这并不是防弹的--例如,您的行from abaqus import *不适合我--即使我将ABA_PATH添加到我获得的ImportError: abaqus module may only be imported in the Abaqus kernel process系统路径中。但是,有些调试和代码完成工作是有效的,例如:

设置系统范围内的路径似乎有点困难,但我无法让它以其他方式进行。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23242928

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档