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 :

comment remplir un vecteur en fortran 77


Sujet :

Fortran

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 3
    Par défaut comment remplir un vecteur en fortran 77
    Bonjour, ma question est très simple (si si!). Je voudrais remplir un vecteur de parametres par des parametres différents dont je connais les valeurs. J'ai tenté de le faire comme en Matlab:
    PARAM=(OS,OR,hs,VGM,VGN) ou PARAM=[OS,OR,hs,VGM,VGN]
    mais le compilo n'aime vraiment pas . Est-ce que je suis obligée de faire:
    PARAM(1)=OS
    PARAM(2)=OR
    PARAM(3)=hs
    PARAM(4)=VGM
    PARAM(5)=VGN

    ? il n'y a vraiment pas plus élégant? je précise que je suis en Fortran 77 et que ce n'est pas négociable!!
    merci de votre réponse!

  2. #2
    Rédacteur

    Homme Profil pro
    Comme retraité, des masses
    Inscrit en
    Avril 2007
    Messages
    2 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : Suisse

    Informations professionnelles :
    Activité : Comme retraité, des masses
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 2 978
    Par défaut
    Salut!
    Les valeurs des paramètres sont-elles fixées une fois pour toutes (lorsque tu écris le programme) ou v arient-elles d'une exécution à l'autre?
    Jean-Marc Blanc

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 3
    Par défaut
    elles sont lues dans un fichier de parametres d'entrée, donc elles peuvent varier.

  4. #4
    Rédacteur

    Homme Profil pro
    Comme retraité, des masses
    Inscrit en
    Avril 2007
    Messages
    2 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : Suisse

    Informations professionnelles :
    Activité : Comme retraité, des masses
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 2 978
    Par défaut
    Salut!
    elles sont lues dans un fichier
    Alors, pourquoi pas quelque-chose comme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
          Read (10,'(5F10.3)') (Param(i),i=1,5)
    Jean-Marc Blanc

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 3
    Par défaut
    En effet, je n'ai pas été assez précise. Ces valeurs sont lues dans plusieurs fonctions et subroutines donc là je choisis de les re-remplir dans un vecteur PARAm pour clarifier un peu mon code mais je ne peux pas le faire à partir du fichier d'entrée. Quoique...je vais y réfléchir!
    J'ai une autre question, du coup : peut-on définir une fonction qui dépend d'une autre fonction, afin que que ma fonction composée dépende de la variable de la 2ème fonction.
    Clairement:
    f1=f_2(theta)
    theta=f_3(h)

    donc f1=(f_2 o f_3)(h) et moi je veux justement integrer f1 par rapport à h.
    Est ce possible de déclarer une fonction composée?
    En matlab je ferais : F=inline('f_2(f_3(h))','h');
    puis je peux intégrer par rapport à h : quadl(F,0,100,1e-10)
    puis-je faire quelque chose du même genre ?

  6. #6
    Membre émérite
    Avatar de Ladgalen
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Novembre 2007
    Messages
    466
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Enseignant Chercheur

    Informations forums :
    Inscription : Novembre 2007
    Messages : 466
    Par défaut
    Bonjour

    Tu as plusieurs possibilités mais qui n'existe pas en F77 (je crois), il te faudra passer en F90. Cependant dans les deux cas ce n'est pas vraiment un f o g()

    * Tu peux passer une fonction comme argument d'une autre fonction ou subroutine. De la même façon que tu passes une variable tu passe la fonction.

    * Tu peux inclure une fonction dans une autre avec un "contains". Avec cette deuxième solution ta fonction ne sera pas accessible à l'extérieur de la fonction dans laquelle tu l'as définies.

    Bon courage

Discussions similaires

  1. Réponses: 2
    Dernier message: 30/05/2012, 19h44
  2. Comment remplire une CList ?
    Par stof dans le forum MFC
    Réponses: 23
    Dernier message: 02/02/2005, 17h33
  3. Réponses: 3
    Dernier message: 19/01/2005, 15h50
  4. [SWT] Comment remplir une Table ?
    Par simon77 dans le forum SWT/JFace
    Réponses: 1
    Dernier message: 23/08/2004, 10h31
  5. [TChart] comment remplir un histogramme avec du rouge strié.
    Par :GREG: dans le forum Composants VCL
    Réponses: 2
    Dernier message: 12/08/2002, 09h37

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