p
u
b
l
i
c
i
t
é
publicité
  1. #1
    Invité régulier
    Inscrit en
    novembre 2008
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : novembre 2008
    Messages : 38
    Points : 9
    Points
    9

    Par défaut [PYTHON/FORTRAN] Problème accés à COMMON Block Python Fortran

    Bonjour tout le monde ,
    J'ai une libraire FORTRAN et j essaie d'utiliser cette librairie via un script python. Pour cela avec f2py, je créer le module Python a partir de "MaLibFortran".

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    f2py -c FichierSourcedelalibFortran -m MalibFortran --fcompiler=gnu95 --f90flags=-O3
    Ma librairie FORTRAN contient un COMMON
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    * INCLUDE ZCTRAN
     
          INTEGER       NMAX
          PARAMETER    (NMAX=50)
     
          REAL*8        PI
          PARAMETER    (PI=3.1415926535D00)
     
          COMPLEX*16    II
          PARAMETER    (II=(0.D00,1.D00))
     
    *
          COMMON /ZCTRAN/ SOMMET,EXC,TC,KC,ZFIX
     
          COMMON /ZCTRAN/ ANG,EX,LONG,LINT,T,XP,YP,ERREL
          COMMON /ZCTRAN/ K,PERIM,PERIMINT,QPUIT,ERRMAX,ERRMOY,ECERRM
          COMMON /ZCTRAN/ DTMIN,DTMAX,LARC,R,LMAXP,PRECG,PRECMI,PRECMA
     
          COMMON /ZCTRAN/ NCOTE,IINF,IFIX1,IFIX2,ICONT,
         .                IZFIX,IPUIT,NLIGNE,IMARQ
     
          COMMON /ZCTRAN/ OUVERT

    J'aimerais donc dans mon code python avoir accés à :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    >>> import MalibFortran 
    >>> MalibFortran .f1() #f1 etant une fonction , ca c'est ok ca fonctionne
    >>> print MalibFortran.ZCTRAN.NCOTE # !!!!!!!!!!!!! Ne fonctionne pas : voici le message d erreur : Traceback (most recent call last):
      File "<stdin>", line 1, in ?
    AttributeError: 'module' object has no attribute 'ZCTRAN'
    
    Pouvez vous m'aider s'il vous plait...

  2. #2
    Invité régulier
    Inscrit en
    novembre 2008
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : novembre 2008
    Messages : 38
    Points : 9
    Points
    9

    Par défaut

    La solution que j ai trouvé est celle ci ...

    COMMON /ZCTRAN/ SOMMET,EXC,TC,KC,ZFIX,
    . ANG,EX,LONG,LINT,T,XP,YP,ERREL,
    . K,PERIM,PERIMINT,QPUIT,ERRMAX,ERRMOY,ECERRM,
    . DTMIN,DTMAX,LARC,R,LMAXP,PRECG,PRECMI,PRECMA,
    . NCOTE,IINF,IFIX1,IFIX2,ICONT,
    . IZFIX,IPUIT,NLIGNE,IMARQ,
    . OUVERT

    et l appel se fait
    MalibFortran.zctran.ncote # Mettre en minuscule

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème accés à COMMON Block Python Fortran
    Par squallmrs dans le forum Fortran
    Réponses: 0
    Dernier message: 05/06/2012, 11h35
  2. problème de syntaxe en python
    Par akrogames dans le forum Général Python
    Réponses: 3
    Dernier message: 03/02/2008, 20h33
  3. Swig - Python/C++ problème avec STL
    Par mencaglia dans le forum Interfaçage autre langage
    Réponses: 2
    Dernier message: 26/11/2007, 18h21
  4. Problème en interfacant C et Fortran
    Par karl3i dans le forum MFC
    Réponses: 6
    Dernier message: 23/05/2006, 16h10
  5. Problème d'encodage avec Python
    Par tse_tilky_moje_imja dans le forum Général Python
    Réponses: 2
    Dernier message: 22/02/2006, 14h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo