IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Fortran Discussion :

Passer un nombre variable d'arguments à une subroutine


Sujet :

Fortran

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 5
    Par défaut Passer un nombre variable d'arguments à une subroutine
    Bonjour,

    Je recherche une façon de passer un nombre non fixé d'arguments à une subroutine. De façon plus précise, je souhaite créer une subroutine réalisant le produit tensoriel d'un nombre quelconque de matrices données en argument.

    La subroutine idéale serait donc appelée par un

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     CALL TensorProduct(A1,A2,....)
    utilisable quelque soit le nombre de matrice Ak données en argument.

    Merci d'avance à ceux qui prendront le temps de me répondre.

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Août 2006
    Messages
    974
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Août 2006
    Messages : 974
    Par défaut
    2 solutions :
    • Tu utilises l'attribut optional pour les tableaux 2, 3, ... , n
    • Tu écris n routines (Routine à 1 arg, routine à 2 args, ...) et tu les associes dans une routine générique (interface to ... module procedure ...)

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 5
    Par défaut
    Merci pour votre réponse,

    J'ai opté pour l'utilisation d'attributs optional, même si je trouve cela malheureusement assez lourd. Il est dommage que Fortran n'ait pas une façon plus élégante de gérer ce problème.

    Néanmoins, merci pour tout.

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 04/03/2013, 11h16

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