[PYTHON] Installation d'OpenMDAO (version 1.7.1)

Vue d'ensemble d'OpenMDAO

Qu'est-ce qu'OpenMDAO?

Cheval de compétition


Histoire d'OpenMDAO

Année/Mois version un événement
2010/7 0.0.1 Libération
2015/1 0.12.0 J'ai quitté GUI!
2015/4 0.13.0 Version suivante 1.Parce que c'est 0
2015/7 1.0.0 J'ai revu le cadre!(Non rétrocompatible)
2016/7 1.7.1 Libération

Comme mentionné ci-dessus, les versions 0.13 et antérieures et 1.0.0 et ultérieures sont complètement différentes. Cet article résume l'installation de la version 1.7.1. Voir slideshare here pour installer les versions antérieures à la 0.13.0, bien que ce soit un slapstick.


Installez OpenMDAO

Environnement prérequis

Il semble que Git (optionnel), Python, Pip, Numpy, Scipy devraient être installés à l'avance (non confirmé). Le document original déclare:

OS Versions
Mac OS X Mavericks(10.9.5) Yosemite(10.10.5) El Capitan(10.11.x)
Ubuntu Trusty Tahr (14.04.2 LTS) Vivid Vervet (15.04) Xenial Xerus (16.04 LTS)
Windows 7 8 10

Il peut également être installé sur d'autres distributions telles que RHEL et Mint. En fait, j'ai pu l'installer sur CentOS 6.4 sans aucun problème.


packages versions
Python 2.7.9 ou plus, 3.4.3 ou plus
Numpy 1.9.2 ou plus
Scipy 0.15.1 ou plus
Git(Optional) -

Cette fois, nous utiliserons l'environnement Anaconda créé sur Ubuntu 14.04 LTS.

conda create -n py27 python=2.7 anaconda
source activate py27

Si Anaconda est installé dans l'environnement pyenv, Voir les 3 types de solutions de contournement de y_sama pour activer les problèmes de collision lorsque pyenv et anaconda coexistent.


Installation

Puisqu'il est enregistré dans PyPI, installez-le avec pip. Ne pas installer avec conda (l'ancienne version (0.13) est enregistrée dans anaconda)

pip install openmdao

Contrôle de fonctionnement

Après avoir exécuté ce qui suit, si vous pouvez confirmer l'opération check stdout, c'est OK.

PY27=`which conda`
cp ${PY27:0:-10}/lib/python2.7/site-packages/openmdao/examples/paraboloid_example.py .
python paraboloid_example.py

Contrôle de fonctionnement stdout


##############################################
Setup: Checking root problem for potential issues...
No recorders have been specified, so no data will be saved.
Setup: Check of root problem complete.
##############################################
-15.0

Installation liée à MPI

Installé avec conda. MPI de mpi4py de conda utilise MPICH2

conda install mpi4py
conda install -c mutirri petsc4py

Vérification du fonctionnement de petsc4py

Préparez les petsc4py_test.py suivants

petsc4py_test.py


from petsc4py import PETSc
rank = PETSc.COMM_WORLD.getRank()
num_ranks = PETSc.COMM_WORLD.getSize()
x = PETSc.Vec().createMPI(4) # VecCreateMPI: Creates a parallel vector.  size=4
x.setValues([0,1,2,3], [10,20,30,40]) # VecSetValues: Inserts or adds values into certain locations of a vector.  x[0]=10, x[1]=20, x[2]=30, x[3]=40
print ('Rank',rank,'has this portion of the MPI vector:', x.getArray() ) # VecGetArray: Returns a pointer to a contiguous array that contains this processor's portion of the vector data.
vec_sum = x.sum() # VecSum: Computes the sum of all the components of a vector. 10+20+30+40=100

if rank == 0:
    print ('Sum of all elements of vector x is',vec_sum,'and was computed using',num_ranks,'MPI processes.')

Après avoir exécuté ce qui suit, si vous pouvez confirmer le résultat ci-dessous, vous pouvez vérifier le fonctionnement de petsc.

mpirun -np 2 python petsc_test.py

contrôle de fonctionnement petsc


(('Rank', 1, 'has this portion of the MPI vector:',
 'Rank', 0, 'has this portion of the MPI vector:', 
array([ 10.,  20.]))
array([ 30.,  40.]))
('Sum of all elements of vector x is', 
100.0, 'and was computed using'

Vérification du fonctionnement d'OpenMDAO MPI

Après avoir exécuté ce qui suit, si la fin de log.doe est la suivante, c'est OK. (L'avertissement est envoyé à stdout)

PY27=`which conda`
cp ${PY27:0:-10}/lib/python2.7/site-packages/openmdao/examples/doe_example.py .
mpirun -np 5 python doe_example.py >log.doe
tail -10 log.doe

queue stdout


  const.c: 3.0
  dut.y: 13304.993403
  indep_var.x: 4434.99780099
Timestamp: 1480262524.502128
Iteration Coordinate: rank3:Driver|1
Iteration succeeded: yes
Unknowns:
  const.c: 3.0
  dut.y: 13266.2297346
  indep_var.x: 4422.07657819

Résumé

Recommended Posts

Installation d'OpenMDAO (version 1.7.1)
Installation d'Anaconda3
Installation de CentOS 8
Introduction de ferenOS 1 (installation)
Installation de Python 3.3 rc1
Installation de matplotlib (Python 3.3.2)
Installation de dlib, cv2
Aligner la version de chromedriver_binary
Procédure d'installation de CentOS 8 (dernière version)
Renforcement de l'apprentissage 2 Installation de chainerrl
Installation du client de ressources Web ChEMBL
Mise à niveau de python Anaconda
Vérifiez la version OpenSSL de python 2.6
Installation source et installation de Python
[Python] Version Taple du menu déroulant de la préfecture
Tester la version du module argparse
Élever la version de pyenv elle-même
Installer SciPy et matplotlib (Python)
Installation de l'agent OMC Cloud --Linux-
Installation facile d'OpenCV sur RaspberryPi 3+
Corrigez la version Conflit de pip et exécutez normalement l'installation de la bibliothèque.
Installer une ancienne version de Tensorflow
Installation de scikit-learn (Mac OS X)
pyenv-changer la version python de virtualenv
Version Ideone> Python: 3.5 (au 29 août 2017)
Installation de Python, SciPy, matplotlib (Windows)
Introduction de ferenOS 3 (mise à jour et installation du package)
Installation du code Visual Studio et installation de python
Résumé de la procédure d'installation d'Oracle Database XE
Comment vérifier la version de Django
À propos de l'environnement virtuel de Python version 3.7
MacOS Cataline ne parvient pas à installer psutil
[Python] Essayez pydash de la version Python de lodash
Version Migemo de la commande: find ,: mfind
Installation de la version Pleasanter .NetCore (CentOS7 .NetCore2.2 SQL Server 2019)
Solution d'erreur d'installation de mysqlclient [Mac, version Windows]
[AWS] Résumé des contre-mesures d'erreur d'installation de l'interface de ligne de commande
Introduction à Scapy ① (De l'installation à l'exécution de Scapy)
Guide d'installation par lots d'outils de gestion de version pour les principaux langages de script