Skip to content

Instantly share code, notes, and snippets.

@bismarckjunior
Created August 28, 2017 15:31
Show Gist options
  • Save bismarckjunior/2c58f3059024383d2a9bc08e5082db32 to your computer and use it in GitHub Desktop.
Save bismarckjunior/2c58f3059024383d2a9bc08e5082db32 to your computer and use it in GitHub Desktop.
Tutorial de como instalar bibliotecas Python no ABAQUS 2017.

Instalação de Módulos Python no ABAQUS 2017

Este tutorial serve para mostar o passo a passo de como instalar módulos Python (ex. scipy e matplotlib) que não estão disponíveis no Python do ABAQUS. A instalação será realizada copiando-se os módulos do Python do Windows para o Python do ABAQUS. Para isso, é necessário ter o Python instalado no Windows com a mesma versão do Python do ABAQUS.

Uma forma de utilizar diferentes versões do Python em uma mesma máquina é utilizando o programa Anaconda. Por isso, a instalação deste programa será necessária.

1. Verificando as Versões do Python

A versão do Python do ABAQUS 2017 é 2.7.3 e a do módulo numpy é 1.6.2, mas, caso deseje confirmar, digite no prompt do ABAQUS:

>>> import sys
>>> sys.version
'2.7.3 (default, Feb  6 2016, 06:24:46) [MSC v.1700 64 bit (AMD64)]'
>>> import numpy
>>> numpy.version.version
'1.6.2'

Essas versões são necessárias para a criação do ambiente de desenvolvimento.

2. Instalação do Anaconda

Para instalar o Anaconda siga as instruções do site da Anaconda ou através do tutorial: "Anaconda: Instalação e Uso".

3. Crianção de um Ambiente de Desenvolvimento

Com o uso do Anaconda podemos criar um ambiente de desenvolvimento com as mesmas características do Python do ABAQUS. Para criar um ambiente denominado pyABQ faça:

  1. Abra o prompt de comando do Anaconda, digitando "Anaconda" no menu Iniciar do Windows;
  2. Digite o comando abaixo de acordo com as versões já identificadas:
    $ conda create -n pyABQ python=2.7.3 numpy=1.6.2 anaconda
    
    Surgirá a seguinte mensagem:
    $ conda create -n pyABQ python=2.7.3 numpy=1.6.2 anaconda
    Fetching package metadata ...........
    Solving package specifications: .
    
    Package plan for installation in environment C:\Users\bismarck\AppData\Local\
    Continuum\Anaconda2\envs\pyABQ:
    
    The following NEW packages will be INSTALLED:
    
        anaconda:   custom-py27_0
        pip:        9.0.1-py27_1
        python:     2.7.3-7
        setuptools: 27.2.0-py27_1
        wheel:      0.29.0-py27_0
    
    Proceed ([y]/n)?
    
  3. Digite enter para continuar a instalação. Surgirá a seguinte mensagem:
    python-2.7.3-7 100% |###############################| Time: 0:00:08   2.43 MB/s
    anaconda-custo 100% |###############################| Time: 0:00:00   1.38 MB/s
    INFO menuinst_win32:__init__(182): Menu: name: 'Anaconda${PY_VER} ${PLATFORM}',
    prefix: 'C:\Users\bismarck\AppData\Local\Continuum\Anaconda2\envs\pyABQ', env_n
    me: 'pyABQ', mode: 'None', used_mode: 'user'
    #
    # To activate this environment, use:
    # > activate pyABQ
    #
    # To deactivate this environment, use:
    # > deactivate pyABQ
    #
    # * for power-users using bash, you must source
    #
    

4. Instalando os Módulos no Python no Ambiente de desenvolvimento

Para instalar um módulo no ambiente de desenvolvimento é necessário, primeiro, ativar o ambiente. Para isso, no prompt do Anaconda, faça:

  1. Ative o ambiente de desenvolvimento criado (pyABQ):
    $ activate pyABQ
    
  2. Instale o módulo desejado (package_name) com o comando:
    $ conda install package_name
    

A seguir será exemplificado como instalar os módulos Matplotlib e Scipy.

4.1 Módulo SciPy

O SciPy é uma coleção de algoritmos matemáticos e funções prontas desenvolvida com uma extensão do módulo Numpy. Para instalar este módulo bastaria digitar:

$ conda install scipy

Porém, a mensagem que surge informa que o módulo numpy será atualizado.

$ conda install scipy
Fetching package metadata ...........
Solving package specifications: .

Package plan for installation in environment C:\Users\bismarck\AppData\Local\Con
tinuum\Anaconda2\envs\pyTeste:

The following NEW packages will be INSTALLED:

    mkl:            2017.0.3-0
    scipy:          0.19.1-np113py27_0
    vs2008_runtime: 9.00.30729.5054-0

The following packages will be UPDATED:

    numpy:          1.6.2-py27_4       --> 1.13.1-py27_0

Proceed ([y]/n)? 

Como a SIMULIA não recomenta a atualização do módulo numpy, é necessário interromper a instalação digitando "n" e buscar por uma versão compatível com o numpy 1.6.2 que seria a versão 0.11 do SciPy. Assim, para instalar o scipy 0.11, digite:

$ conda install scipy=0.11

Dessa forma surgirá a mensagem:

$ conda install scipy=0.11
Fetching package metadata ...........
Solving package specifications: .

Package plan for installation in environment C:\Users\bismarck\AppData\Local\Con
tinuum\Anaconda2\envs\pyTeste:

The following NEW packages will be INSTALLED:

    scipy: 0.11.0-np16py27_1

Proceed ([y]/n)?

Note que será criado o módulo scipy no ambiente de desenvolvimento pyABQ. Digite enter para prosseguir.

4.2 Módulo Matplotlib

O Matplotlib é uma biblioteca para plotar gráfico com o Python. A versão do Matplotlib compatível com o Numpy 1.6.2 é a versão 1.1. Para instalar este módulo, digite:

$ conda instal matplotlib=1.1

Surgirá a seguinte mensagem:

$ conda instal matplotlib=1.1
Fetching package metadata ...........
Solving package specifications: .

Package plan for installation in environment C:\Users\bismarck\AppData\Local\Con
tinuum\Anaconda2\envs\pyTeste:

The following NEW packages will be INSTALLED:

    dateutil:   2.4.1-py27_0
    matplotlib: 1.1.1-np16py27_2
    pyside:     1.1.2-py27_0
    pytz:       2017.2-py27_0
    six:        1.10.0-py27_0

Proceed ([y]/n)?

Note que serão criados os módulos dateutil, matplotlib, pyside, pytz e six. Digite enter para prosseguir.

5. Copiando os Módulos Para o Python do ABAQUS

A instalaçãod de um módulo no Python do ABAQUS é feita copiando a pasta do módulo do Python do Windows para a pasta do Python do ABAQUS. Os módulos são instalados na pasta $PATH_PYTHON$/Lib/site-packages/.

Para encontrar o módulo instalado no Anaconda, digite no prompt do Anaconda o comando:

$ conda info -e

Surgirá as informações dos ambientes criados, inclusive a sua localização:

$ conda info -e
# conda environments:
#
pyABQ                 *  C:\Users\bismarck\AppData\Local\Continuum\Anaconda2\envs\pyABQ
root                     C:\Users\bismarck\AppData\Local\Continuum\Anaconda2

Portanto, basta copiar a pasta referente ao módulo instalado da pasta: C:\Users\bismarck\AppData\Local\Continuum\Anaconda2\envs\pyABQ\Lib\site-packages para a pasta do ABAQUS: C:\SIMULIA\CAE\2017\win_b64\tools\SMApy\python2.7\Lib\site-packages

5.1 Módulo Scipy

Conforme visto na seção 4.1, a instalação do SciPy 0.11 não possui nenhuma dependência. Por isso, para a instalação, basta copiar a pasta scipy (localizado na pasta site-packages do Anaconda) para a pasta site-packages do ABAQUS.

5.2 Módulo Matplotlib

Conforme visto na seção 4.2, a instalação do Matplotlib 1.1 possui 4 dependências:

  • dateutil
  • pyside
  • pytz
  • six

Por isso, para a instalação, basta copiar as pastas dateutil, pyside, pytz, matplotlib e os arquivos six.py e six.pyc (localizados na pasta site-packages do Anaconda) para a pasta site-packages do ABAQUS.

6. Verificando a Instalação

Para verificar a instalação basta importar e utilizar os módulos no prompt do ABAQUS.

@ismaelpimentel
Copy link

Excelente.

@GabrielHilgert
Copy link

Muito bom!
Para o abaqus 2017 tem um script que faz isso:
https://github.com/nasa/CompDam_DGD/tree/master/utilities/abaqus-python-addpkg

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment