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 :

[Débutant] Résolution d'équations différentielles


Sujet :

Fortran

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Inscrit en
    Novembre 2008
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 9
    Par défaut [Débutant] Résolution d'équations différentielles
    Bonsoir,
    Je dois realiser un programme qui doit me permettre de trouver les positions successives d'un missile par la methode d'euler. Les positions du missiles sont soumises a des equations diffrentielles du premier ordre. Le probleme parait simple mais quand je veux ecrire l'algorithme d'euler, pour l'instant parmi tout ce que j'ai essayé, il a toujours un probleme et j'ai du mal :s. Est ce que vous pouvez m'aider svp

    Merci

  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!
    l'algorithme d'euler
    Cette belle méthode dont on a dit: "Admirez, mais n'appliquez pas!"
    il a toujours un probleme
    Lequel?
    Jean-Marc Blanc

  3. #3
    Membre du Club
    Inscrit en
    Novembre 2008
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 9
    Par défaut
    Ben en fait la j'ai pas le choix, je dois l'appliquer puisque la methode m'est imposée. En fait je ne sais pas trop comment declarer mes variables, du moins je ne sais pas si la facon que j'ai utilisé est la bonne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    real*8 Xm(T),DX(T)
    integer*4 T
    Xm pour les coordonnées et DX pour la derivée dont la forme est donnée.

    Et ensuite apres avoir defini mes conditions initales j'ai fait cette boucle
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    do T=1,NT
            Xm(T+1)=Xm(T)+H*DX(T)
    end do
    NT correspond au nombre d'iterations et H correspond au pas que j'ai defini auparavant.

  4. #4
    Membre du Club
    Inscrit en
    Novembre 2008
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 9
    Par défaut
    Je precise que je suis débutant

  5. #5
    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
    Salut

    Pense à mettre les balises code (le #) quand tu écrit du code.

    Dans tes déclarations il y a un problème avec les dimensions de tes tableaux. Il faut que tu donnes une valeur à T avant de déclarer Xm et DX.

    Par exemple (avec ta syntaxe) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    integer*4, parameter T=100
    real*8 DX(T), Xm(T)
    Avec une syntaxe plus moderne (genre Fortran 90) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    integer,parameter :: T = 100
    double precision, dimension(T) :: DX, Xm
    (Les réels double precision sont real*8)

    Si tu ne déclares pas T comme parametre, tu ne peux pas l'utiliser dans la déclaration de la dimension des tableaux. En faisant cela la valeur de T n'est cependant plus modifiable

  6. #6
    Membre du Club
    Inscrit en
    Novembre 2008
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 9
    Par défaut
    J'ai oublie de le preciser mais je l'avais initialise :s. J'avais mît T=0 pour la première itération. je l'ai fait après la déclaration des variables. Est ce que l'ordre dans le cas présent a une importance? Par contre pour la syntaxe la aussi elle m'est impose a l'école,c'est du fortran 77 il me semble.
    Mais si en fesant ça je ne peux plus modifier la valeur de T je ne vois plus du tout comment faire mes itérations
    Je suis perdu la

Discussions similaires

  1. Résolution d'équations différentielles 3ème ordre ?
    Par MaryAnN76 dans le forum MATLAB
    Réponses: 6
    Dernier message: 09/10/2007, 16h09
  2. Résolution d'équations différentielles couplées
    Par DVD-RW dans le forum MATLAB
    Réponses: 4
    Dernier message: 05/06/2007, 19h47
  3. [Débutant] Résolution d'équation
    Par scraven dans le forum MATLAB
    Réponses: 2
    Dernier message: 03/06/2007, 13h29
  4. Réponses: 2
    Dernier message: 05/05/2007, 18h22

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