Programmation Fortran 90
Répondre à la discussion
Affichage des résultats 1 à 3 sur 3

Programmation Fortran 90



  1. #1
    invite224b964d

    Programmation Fortran 90


    ------

    Bonjour à tous,

    Je suis nouveau sur ce forum et je crée cette conversation pour vous exposer mon problème. Je suis en 3ème année de Licence Génie de Système Industriels et j'ai quelques soucis en programmation. Je dois, pour dans quelques jours, rendre un programme complet en Fortran 90 et je bloque pas mal. Voici le sujet, je ne vous cache pas qu'il est assez long mais j'ai déjà réalisé une petite partie de celui-ci, je suis à la question 4.

    Méthodologie à utiliser :

    On souhaite représenter la consommation d’une voiture. Pour cela on va exprimer la
    consommation entrainée d’une part par une variation de position dx et d’autre part par une
    variation de la vitesse du véhicule.

    On utilise la forme différentielle suivante pour modéliser la consommation:
    FD : P(x,v)dx + Q(x,v)dv

    P(x,v)dx est la consommation à la position x à la vitesse v entrainer par un déplacement dx.
    Q(x ,v)dv est la consommation à la position x à la vitesse v entrainer par une variation de la
    vitesse dv.

    Ainsi la consommation lors d’un parcours de A à B le long T (trajectoire dans l’espace x,v) est
    obtenue par l’intégrale curviligne :

       P x,v dx Qx,v dv 

    On prendra la consommation en litre, la distance en km et la vitesse en km/h

    1) Variables :

    a) Ecrire un fichier ‘caracauto.txt’ contenant les caractéristiques de la voiture :
    · « m », la masse de la voiture.
    · « conso90 », la consommation à 90 km/h de la voiture.
    · « consomini », la consommation minimale de la voiture.
    · « energyfuel », l’énergie calorifique du fuel par litre.
    · …

    b) Créer une Subroutine permettant la lecture et l’affichage de votre fichier caracauto.txt

    Open(20,file=’… .txt’)
    Read(20,*) ….
    Write(*,*) ‘bidule=’, bidule, ‘[mm]’


    2) Subroutine VarconsoPDx :

    Ecrire un programme qui retourne la consommation pour une distance parcourue dx en km,
    sachant la position x, la vitesse v.

    a) Ecrire la structure du programme
    b) Préciser les arguments de la subroutine : données d’entré et données de sortie
    c) Proposer une forme mathématique pour P(x,v)
    d) Programmer et tester cette forme mathématique

    Indication :
    ConsoDx =variation de consommation suivant la vitesse
    Conso=consommation suivant le nombre de kilomètres effectués
    X=nombre de kilomètres effectués
    Chaque nouvelle variable doit être déclaré


    3) Subroutine VarconsoQdv :

    Ecrire un programme qui retourne la consommation en litre pour une variation de vitesse dv
    en km/h sachant la position x et la vitesse v.

    e) Ecrire la structure du programme
    f) Préciser les arguments de la subroutine : données d’entré et données de sortie
    g) Proposer une forme mathématique pour P(x,v)
    h) On pourra associer la consommation à la variation d’énergie cinétique du véhicule.
    i) Programmer et tester cette forme mathématique

    Indication :
    ConsoDx =variation de consommation suivant la vitesse
    Conso=consommation suivant le nombre de kilomètres effectués
    X=nombre de kilomètres effectués
    Chaque nouvelle variable doit être déclarée

    4) Parcours :

    Ecrire un programme permettant de relire un parcours quelconque. Le parcours est défini
    comme un ensemble de point de passage caractérisé par une position Xp et une vitesse Vp.

    Exemple :
    P1(0,0) P2(10,90) P3(90,90)P4(1000,50)

    a) Créer un fichier texte récapitulant le parcours « parcours.txt ». La structure du
    parcours sera telle que le nombre d’étape doit être quelconque.
    b) Ecrire un programme parcours.f90 qui relit et stocke les données du parcours.

    5) Subroutine computestep.f90 :

    Écrire un programme calculant entre deux points du parcours le temps de parcours, la
    consommation total, la consommation entrainée par le déplacement uniquement et la
    consommation entrainée par la variation de vitesse uniquement.

    a) Ecrire la structure du programme
    b) Préciser les arguments de la subroutine : données d’entré et données de sortie
    c) Ecrire le programme en utilisant VarconsoPDx et VarconsoQdv créés précédemment.
    d) Tester et montrer le bon fonctionnement du programme à l’aide d’un exemple.

    6) Programme principale conso.f90

    A l’aide des programmes précédents écrire un programme permettant de lire les fichiers
    caracauto.txt et parcours.txt et de calculer le temps de parcours ainsi que les différentes
    consommations durant un parcours quelconque.

    Postprocessing
    a) Modifier le programme précédent pour qu’il génère des fichiers de données
    permettant de tracer les différentes consommations en fonction du temps ou de la
    distance parcourue.
    b) Générer deux parcours pour un déplacement de Rouen à Marseille un économique et
    un privilégiant la vitesse. Analyser grâce au programme conso les consommations lors
    de ces deux parcours.
    c) Proposer une modification de la fonction Q pour modéliser un système de
    récupération d’énergie durant le freinage.
    d) Programmer la modification précédente et analyser les conséquences pour les deux
    parcours que vous avez proposés.


    Si vous pouviez m'aider ce serait vraiment cool, j'ai beau y passer pas mal de temps, j'ai vraiment beaucoup de mal. Inutile de vous préciser que j'ai commencer la programmation en Fortran que depuis cette année et que mon prof n'est pas spécialement pédagogue, ça n'aide pas...

    Je vous remercie d'avance!

    Gabriel.

    -----

  2. #2
    invite1c6b0acc

    Re : Programmation Fortran 90

    Bonjour,
    Pour les 4 premières questions vous avez resté ce que vous avez fait ?
    A priori la 5e utilise les mêmes outils, donc si les 4 première fonctionnent correctement, vous êtes sur la bonne voie.
    Qu'est-ce qui vous bloque dans la cinquième ?
    A+

  3. #3
    invite1c6b0acc

    Re : Programmation Fortran 90

    Désolé, faut vraiment que je me relise avec plus d'attention. Je voulais écrire "vous avez testé et non pas resté"

Discussions similaires

  1. fortran f 95
    Par invite67111f19 dans le forum Programmation et langages, Algorithmique
    Réponses: 0
    Dernier message: 19/11/2011, 11h11
  2. Help en Fortran...
    Par invitebe3c6d64 dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 14/11/2010, 19h31
  3. programmation fortran et C++, recherche de livres
    Par invite4bf7373f dans le forum Logiciel - Software - Open Source
    Réponses: 1
    Dernier message: 30/06/2010, 15h57
  4. programmation, langage fortran
    Par invite9d2516b7 dans le forum Logiciel - Software - Open Source
    Réponses: 6
    Dernier message: 12/01/2010, 21h02
  5. programmation en fortran
    Par tpscience dans le forum Logiciel - Software - Open Source
    Réponses: 4
    Dernier message: 18/05/2009, 12h53