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 :

Sortir d'une subroutine


Sujet :

Fortran

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 87
    Par défaut Sortir d'une subroutine
    Bonjour,
    alors j aimerais avoir un peu d aide, sachant que je suis novice en Fortran. Alors je raisous un système et suivant que ma méthode converge ou pas je continu ou je veux diviser mon pas de temps pour adapter, en gros, mon maillage.
    J ai pensé à faire un "goto" mais a priori ca ne marche pas, sachant que mon pas de temps et toutes les interpolation qui en découle est définit dans un autre fichier.

    Si quelqu un a une petite idée ce serrait sympa.
    Merci.

  2. #2
    Membre émérite Avatar de genteur slayer
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2002
    Messages
    710
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2002
    Messages : 710
    Par défaut
    fait montrer comment sont imbriqué (en gros) tes boucles, sinon tu a la boucle DO avec condition final et la commande EXIT:

    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
     
    Boucletemporelle:do while(t<TempsFinal)
      Boucle_pas_de_temps:Do
        <.................>
        <tout ton calcul + calcul de l'erreur (servant à adapter le pas)
        <.................>
        if (erreur<seuil)then 
          t=t+dt
          c=(Constante/erreur)**(1.d0/5.d0)   !facteur d"adaptation du pas          
          if (c>2.d0) c=2.d0
          if (c<5.d-1) c=5.d-1 
          dt=c*dt
          EXIT
        else
          dt=dt/2.d0
        endif
      end do Boucle_pas_de_temps
    end do boucle temporelle

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 87
    Par défaut
    En gros ce que j ai c est:

    Boucle de temps:
    subroutine(1) qui fait tout les calculs
    subroutine(2) qui dit si ca converge
    Fin boucle de temps

    et je voudrais que quand (2) me dit que ca converge pas retourner au début de la boucle temps.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 87
    Par défaut
    ?le facteur d adaptation c est quoi?

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 87
    Par défaut
    la subroutine (2) est dans la (1), c est très simplifié mais en gros c est ce qui ce passe.

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 87
    Par défaut
    Mais le schéma que tu m as donné ressemble à ce que j ai dans la tête et ce que je veux programmer.

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

Discussions similaires

  1. [DEBUTANT] sortir d'une boucle avec un touche particulière
    Par thibouille dans le forum Débuter
    Réponses: 4
    Dernier message: 25/10/2005, 06h44
  2. SORTIR D'UNE BOUCLE
    Par chekibperl dans le forum Langage
    Réponses: 2
    Dernier message: 22/10/2005, 12h48
  3. [HTML/JAVASCRIPT]Sortir d'une iframe
    Par tidou dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 19/01/2005, 15h26
  4. [Threads] Sortir d'une fonction bloquante
    Par guejo dans le forum MFC
    Réponses: 19
    Dernier message: 17/08/2004, 14h12
  5. Comment sortir d'une dll ?
    Par Fred007 dans le forum Langage
    Réponses: 3
    Dernier message: 19/02/2004, 08h21

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