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 :

[Fortran 77][Débutant] Méthode de lissage de courbe


Sujet :

Fortran

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 4
    Points : 1
    Points
    1
    Par défaut [Fortran 77][Débutant] Méthode de lissage de courbe
    bonjour à tous,

    je suis eleve ingenieur en stage
    Je découvre le fortran et j'ai un fichier de données à traiter. Cela constitue en fait un profil avec des discontinuités; d'ou le lissage!
    je voudrais utiliser pour le début qqch de simple : moyenne mobile par exemple
    est il possible d'utiliser des indices dans fortran?
    Par la suite, est il possible d'utiliser des Splines avec fortran et si oui comment?

    Merci d'avance

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 98
    Points : 107
    Points
    107
    Par défaut
    salut,

    Ta question est quelque peu bizarre : comment définis-tu des discontinuités sur un fichier de données ?
    De plus, ta question n'est pas relative à fortran, mais plus à de l'analyse numérique.
    Enfin, tu souhaites faire du lissage (moyenne mobile par ex) ou de l'interpolation (spline cubique par ex)

    Bref, pour du lissage, sur google, tu trouveras ton bonheur concernant :
    - les moyennes mobile simples
    - les moyennes mobiles pondérées
    - les moyennes mobiles centrées
    - les lissages exponentiels simple, double, ...
    - ...

    finalement, quelle est la finalité ?

  3. #3
    Expert éminent sénior

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 603
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 603
    Points : 17 913
    Points
    17 913
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par fp_81-69
    est il possible d'utiliser des indices dans fortran?
    Par la suite, est il possible d'utiliser des Splines avec fortran et si oui comment?


    Heureusement ....

    C'est un des plus vieux langages informatiques, et en plus orienté maths....
    "Un homme sage ne croit que la moitié de ce qu’il lit. Plus sage encore, il sait laquelle".

    Consultant indépendant.
    Architecture systèmes complexes. Programmation grosses applications critiques. Ergonomie.
    C, Fortran, XWindow/Motif, Java

    Je ne réponds pas aux MP techniques

  4. #4
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Citation Envoyé par afrancisco

    finalement, quelle est la finalité ?
    recuperer des données dans un fichier texte, les placer dans un tableau, le trier pour enfin les "traiter" via un lissage du style moyenne mobile et les reinjecter dans la sous-routine.

    merci pour le lissage, j'ai trouvé ce qu'il me faut.

    par contre, j'ai une autre question, là c'est du pur fortran 77!
    l'idée, c'est d'ouvrir un fichier et d'y copier des données.
    pour moi un calcul = 30 incréments.
    je voudrais à chaque fois, créer autant de fichiers, que d'incréments.
    pour cela, je me demandais si c'est possible de créer un fichier dont le nom de fichier dépend d'une valeur de variable

    merci

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 98
    Points : 107
    Points
    107
    Par défaut
    salut,

    ... créer un fichier dont le nom de fichier dépend d'une valeur de variable ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    character(len=6) :: nom_fich
    integer              :: increment
    ...
    write(nom_fich,'(A4,I2.2)') 'toto', increment ! on suppose un increment à 2 chiffres
     
    open(10, file=nom_fich\\'.txt')
       write(10,*) ...
       ...
    close(10)
    voilà, par exemple, si je n'ai pas fait de bourde ...

  6. #6
    Membre éclairé 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
    Points : 825
    Points
    825
    Par défaut
    tu peux même ajouter l'extension directement dans le WRITE....
    il n'y a que ceux qui savent qui ne savent pas qu'ils savent...
    Libere-toi hacker, GNU's Not Unix!!!

  7. #7
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    merci pour le coup de main

    oui j'ai rajouté l'extension dans le write. J'était obligé parce que ça marchait pas sinon. peut être que ca marche pas avec fortran 77 le coup des \\ dans la commande open( ....,file=...\\'.txt') ??!

    maintenant ca marche au poil!

    @+

  8. #8
    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
    Points : 1 346
    Points
    1 346
    Par défaut
    Citation Envoyé par fp_81-69
    peut être que ca marche pas avec fortran 77 le coup des \\ dans la commande open( ....,file=...\\'.txt') ??!
    C'est surtout que ce n'est pas du Fortran « pantoute ». Il aurait fallu lire « // » et non « \\ ». Le « // » est l'opérateur de concaténation pour les chaînes et fait partie du language depuis la version 77.

    Même ordre d'idée : le « i2.2 » n'est pas du F77, mais du F90 ou F95, je ne suis plus certain. Tu utilises donc possiblement un compilateur F95, sinon un compilateur F77 contenant quelques ajouts de F90.

    Pour revenir à la solution de rajouter l'extension dans le write, elle est généralement préférable; elle évite d'avoir à « trimmer » la chaîne avant de concaténer l'extension.

  9. #9
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 4
    Points : 1
    Points
    1
    Par défaut tri de tableau multi dimensionnel
    oui c vrai. je sais pas trop quelle versions de fortran j'ai est finalement. J penche aussi pour un fortran 77 ac qqles éléments f90.

    je sais pas s'il faut faire un autre post, mais disons que c'est "la suite logique" des pb que je rencontre pour lisser ma courbe"! :

    voilà, j'ai besoin d'un algorithme de tri de tableau 5(valeur fixe) colonnes et N lignes pour ranger dans l'ordre croissant un colonne pr exemple la 3ième; mais il faut que lorsque on modifie la position d'un coefficient, les coefficient de la meme ligne suivent!

    J'ai fait des recherches sur le net, mais mal car j'ai pas trouvé mon bonheur...!

    merci d'avance
    et bientôt bon wé à tous!!

  10. #10
    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
    Points : 1 346
    Points
    1 346
    Par défaut
    Si je comprends bien ton besoin, il te faut une routine de tri qui retourne l'ordre des éléments et non seulement la liste triée. Tu peux alors utiliser l'ordre pour placer les rangées à leur place.

    Va voir du côté de :


Discussions similaires

  1. [EJB] [débutant] [Méthode]EJB et présentation web
    Par Eric Berger dans le forum Java EE
    Réponses: 6
    Dernier message: 03/08/2006, 23h42
  2. [algoritmique][débutant]Méthode récursive
    Par lejimi dans le forum Langage
    Réponses: 7
    Dernier message: 16/01/2006, 19h54
  3. Réponses: 2
    Dernier message: 05/01/2006, 14h17
  4. Réponses: 4
    Dernier message: 24/11/2005, 19h51
  5. [Débutant] Méthode super()
    Par KooX dans le forum Langage
    Réponses: 3
    Dernier message: 07/11/2004, 21h28

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