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 :

Résolution système tridiagonal - Méthode de Thomas


Sujet :

Fortran

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Février 2007
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Résolution système tridiagonal - Méthode de Thomas
    Bonsoir,

    Après de longues recherches sur le net le sur le forum, je crie "à l'aide" !!

    Je suis débutant en programmation et je dois résoudre un syst. 3 équations à 3 inconnues par la méthode de Thomas.

    Le truc c'est que je dois placer mon système dans un fichier .txt qui sera lu à partir de l'algorithme, et là je bloque... Je ne sais pas du tout comment partir. Après, je pense avoir le bon algo mais pr faire lire les bons termes de la matrice....

    Système à résoudre :
    -2X1 + X2 = -1
    X1 - 2X2 + X3 = -1
    X2 - 2X3 = -1

    En ayant créé mes fichiers .txt, voici mes esquisses d'algo :
    Algorithme Thomas

    Et mon fichier de base avec le système : Fichier matrice à lire

    Bon tout le début de l'algorithme, je ne pense que c'est totalement faux (jusqu'au moment où on a définit GAMMA(1) et BETA(1)), mais vraiment, je suis bloqué !

    Merci à vous.

  2. #2
    Membre régulier Avatar de Fortran90
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2006
    Messages : 83
    Points : 82
    Points
    82
    Par défaut
    Bon on n'est pas rendu, vu les nombres de pb qu'il y a dans ton programme
    Voici une première partie qui lit ta matrice. Après ça sera à toi de jouer.
    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    	Program Thomas
    	IMPLICIT NONE	
    	INTEGER N,i,j
    	REAL,DIMENSION(:,:),ALLOCATABLE::MAT
    	REAL,DIMENSION(:)  ,ALLOCATABLE::RHS
    C	OUVRIR LE FICHIER POUR LIRE LA MATRICE
    C	STOCKEE DANS LE FICHIER mat.txt
    	Open(unit=1,file='mat.txt')
    	READ(1,*)N
    	WRITE(*,*)'TAILLE DU PROBLEME: ',N
    	WRITE(*,*)'===================='
    C
    C	ALLOUER LES TABLEAUX
    	ALLOCATE(MAT(N,N),RHS(N))
    C	REMARQUE: TA MATRICE EST SYMETRIQUE=> STOCKAGE PERDU POUR RIEN
    C	FORMAT *, DETECTION AUTOMATIQUE
    	DO i = 1,3
    	  READ(1,*) (MAT(i,j),j=1,3),RHS(i)
    	ENDDO
    C	ECRITURE DE LA MATRICE
    	WRITE(*,*)
    	WRITE(*,*)'INPUT MATRIX: '
    	WRITE(*,*)'=============='
    	DO i = 1,3
    	  WRITE(*,'(3F6.2)') (MAT(i,j),j=1,3)
    	ENDDO
    	WRITE(*,*)
    	WRITE(*,*)'RIGHT HAND SIDE: '
    	WRITE(*,*)'==============='
    	DO i = 1,3
    	  WRITE(*,'(F5.2)') RHS(i)
    	ENDDO
    	CLOSE(1)
    C	UNE SORTIE PROPRE, ON DESALLOUE LES TABLEAUX
    	DEALLOCATE(MAT,RHS)
    	End

Discussions similaires

  1. Résolution système d'équation par la méthode SOR
    Par seanp223 dans le forum Mathématiques
    Réponses: 9
    Dernier message: 25/05/2011, 15h35
  2. [Débutant] Problème de résolution système d'équation
    Par Damien123 dans le forum MATLAB
    Réponses: 7
    Dernier message: 31/10/2009, 18h10
  3. Résolution système différentiel
    Par gmachi10 dans le forum MATLAB
    Réponses: 1
    Dernier message: 19/08/2009, 15h23
  4. Résolution système linéaire mais avec paramètre
    Par feynman dans le forum Scilab
    Réponses: 7
    Dernier message: 03/10/2007, 06h55

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