Bonjour, cliquez-ici pour vous inscrire et participer au forum.
  • Login:



+ Répondre à la discussion
Page 1 sur 2 1 DernièreDernière
Affichage des résultats 1 à 15 sur 20

Résolution des système linéaire sur matlab

  1. dalida1111

    Date d'inscription
    mars 2011
    Messages
    287

    Résolution des système linéaire sur matlab

    Bonsoir
    je viens de lire le cours de dérivation numérique et je veux l appliquer sur matlab ( je suis débutante en matlab)
    prenos cet exemple que j'ai fait manuellement :
    soit f et c deux fonctions constantes sur [0,1] on cherche une fonction U(x) de classe C² sur [0,1]
    on a :
    -U''(x)+C(x) *U(x)=f(x) **
    U(0)=0=U0
    U(1)=0=(n+1)
    l equation ** est un système continue pour résoudre cette equation on utilise la méthode de difference finies ,donc on subdivise [0,1] en posant
    x0=0
    x1=x0+h
    x2=x1+h
    xj=x(j-1) + h
    x(n+1)=1=b
    h=b-a /n+1 =1/ n+1
    on cherche à déterminer U(xj)=Uj
    on sait que U(x0)=U0=0
    U(xn+1) =Un+1 =0
    on approxime U" (x) par U"(x)= [U(x+h)-2U(x)+ U(x-h)] / h²
    d ou U"(xj)=[U(xj+h)-2U(xj)+ U(xj-h)] / h²
    =[Uj+1-2Uj+ Uj-1] / h²
    d ou ** est equivalent à
    -U(j+1)+2Uj-U(j-1) /h² +Cj Uj =fj
    avec fj=f(xj)
    C(xj)=Cj
    finalement on obtient :
    -Uk-1+ (2+h² Ck )Uk-Uk+1=fk*k² pour k=j
    on utilisant la notation matricielle on obtient:
    A U = f
    avec u1
    u2
    U= .
    .
    Un
    et f1
    f2
    f= .
    fn

    2+h² 1 -1 0 0
    0 -1 2+h²C2 -1 0
    A=

    0 -1 2+h²C3

    d ou j ai transformé uen equation differentielle en un système algebrique linéaire
    AU=f
    si A est inversible alors U= A^-1 *f

    mais j arrive pas à appliquer cette méthode sur matlab ):
    est ce qu il y a quelqu un qui se sent l ame charitable ...pour m aider et me donner la solution sous matlab ( je vais bien sur essayer de la décoder et la comprendre ..)
    merci d avance de m avoir aidée
    PS: excusez moi si les matrices ne sont pas claires mais je ne sais pas comment les copier S:


     


    • Publicité



  2. Bruno

    Date d'inscription
    novembre 2005
    Localisation
    Entre Bruxelles et Gif...
    Messages
    3 749

    Re : resolution des système linéaire sur matlab

    Bonjour,

    Il va falloir faire un effort sur les matrices car en l'état c'est illisible. Essayez d'écrire une matrice de cette façon (syntaxe Matlab): [1 0 0; 0 1 0; 0 0 1] (le ";" correspond au passage à la ligne suivante, deux colonnes étant séparées par une espace).
    « Il faut dire la vérité, mais on peut l'arranger. » -- Emily Dickinson
     

  3. dalida1111

    Date d'inscription
    mars 2011
    Messages
    287

    Re : Résolution des système linéaire sur matlab

    salut
    concerant les matrices que j'ai déjà ecris :
    U=[ u1 u2 u3 ............un ]
    F=[f1*h² f2*h² f3*h²........fn*h²]
    A=[2+C1*h² -1 0.......... 0;-1 2+C2*h² -1 0.......0;.................... ....;0..............-1 2+Cn*h² -1]

    et on a : AU=F

    merci d avance de m avoir aidée
     

  4. dalida1111

    Date d'inscription
    mars 2011
    Messages
    287

    Re : Résolution des système linéaire sur matlab

    s'il vous plait j 'ai besoin d un coup de pousse pour avancer un peu !
    je suis complètement bloquée
     

  5. membreComplexe12

    Date d'inscription
    décembre 2009
    Messages
    1 878

    Re : Résolution des système linéaire sur matlab

    si tu as [A] une matrice et {x} un vecteur inconnu et {b} un second membre il faut faire ceci sous matlab pour résoudre ce système :

    x=A\b;
     


    • Publicité



  6. dalida1111

    Date d'inscription
    mars 2011
    Messages
    287

    Re : Résolution des système linéaire sur matlab

    Bonjour
    merci de m avoir répondue mais ce n est pas ca que je cherche
    je veux le programme qui transforme une equation differentielle en un système linéaire (genre AX=F)
    merci d avance
     

  7. membreComplexe12

    Date d'inscription
    décembre 2009
    Messages
    1 878

    Re : Résolution des système linéaire sur matlab

    ça ne doit pas exister ceci c'est à toi de faire la transformation
     

  8. dalida1111

    Date d'inscription
    mars 2011
    Messages
    287

    Re : Résolution des système linéaire sur matlab

    Bonsoir
    merci pour la réponse
    mais j ai pas bien saisi
    dois je faire la transformation manuellement , et il n y a pas de programme sur matlab pour pouvoir la faire
    j'ai un autre souci
    je veux le programme qui calcul les equations differentielles de 2éme,3éem et 4 éme degré sous matlab
    je sais faire ca manuellement mais pas sur matlab (car je suis débutante en matlab )
    merci de m avoir aidée
    en fait j ai juste besoin d un coup de pousse pour avancer un peu car car fait une semaine que je suis bloquée ):
     

  9. Paraboloide_Hyperbolique

    Date d'inscription
    juin 2012
    Localisation
    Liège
    Âge
    30
    Messages
    1 126

    Re : Résolution des système linéaire sur matlab

    Bonjour,

    Je reprend votre schéma numérique:



    Sous Matlab, on peut écrire la matrice de différentiation seconde qui est carré triadiagonale avec les diagonales constantes:



    A cette matrice vous ajoutez la matrice diagonale contenant les termes et vous avez votre opérateur différentiel discret en additionnant les matrices A et D.

    On peut construire facilement les matrices A et D avec la commande "diag".

    Il vous reste ensuite à implémenter les conditions frontières sur votre matrice finale et à résoudre.
     

  10. dalida1111

    Date d'inscription
    mars 2011
    Messages
    287

    Re : Résolution des système linéaire sur matlab

    merci pour la réponse
     

  11. dalida1111

    Date d'inscription
    mars 2011
    Messages
    287

    Re : Résolution des système linéaire sur matlab

    Bonsoir

    je suis vraiment bloquée ...j ai besoin juste d un coup de pousse pour avancer

    je veux résoudre -U"(x)+4x²U(x)=2exp(-x²)
    avec U(a)=alfa , U(b)=beta; a=0 ,b=1, alfa=1,beta=1/e

    mon code:

    %resolution de l equation : -U’’(x)+c(x)U(x)=f(x) en (a,b)
    %avec U(a)=’alfa et U(b)=beta ‘
    n = input ('le nombre des points est:\n ' ) ;
    a = input ('veuillez donner l extremite gauche de l intervalle:\n') ;
    b = input('veuillez donner l extremite droite de l intervalle:\n') ;
    alfa = input ('veuillez donner la valeur de la solution de u(a):\n') ;
    beta = input ('veuillez donner la valeur de la solution de u(b):\n') ;
    h = (b-a)/(n+1) ;
    x = a+h :h :b-h ;
    %construction de la matrice A et du second membre
    A=diag((2+4*(x^2)*(h^1))*ones( n,1))-diag(ones(n-1,1),1)-diag(ones(n-1,1),-1);
    F=2*exp(-x^2)*h^2;
    F(1)=F(1)+alfa;
    F(n)=F(n)+beta;
    %Resolution du systeme
    %ecriture de la solution
    sol=inv(A)*F';

    %dessin de la solution approchee et exacte
    subplot(2,2,1)
    fplot(' exp(-x^2) ',[a,b])
    hold on
    subplot(2,2,2)
    plot(x,sol)
    hold off

    il faut vous signaler que je suis encore débutante en matlab ! je crois que l erreur est dans la matrice A ,je ne sais pas comment utiliser la variable x ... meme lorsque j ai tracé la figure ca ne m a pas donnée des solutions qui s pprcohent
    mercid avance
     

  12. Paraboloide_Hyperbolique

    Date d'inscription
    juin 2012
    Localisation
    Liège
    Âge
    30
    Messages
    1 126

    Re : Résolution des système linéaire sur matlab

    Vous n'avez pas implémenté les conditions frontières dans la matrice A.

    Par ailleurs, je vous recommande de taper "sol = A\b" plutôt que "sol = inv(A)*b". Le premier code est plus rapide que le second car il ne calcule pas explicitement l'inverse de la matrice.
     

  13. dalida1111

    Date d'inscription
    mars 2011
    Messages
    287

    Re : Résolution des système linéaire sur matlab

    Bonjour
    merci infiniment de m avoir répondue


    en fiat j ai refait mon code :
    mais mon probème maintenant c est de tracer plusieurs courbe sur la meme fenetre pour n=2, 5,9 ...pour comparer la solution approchée et la soltion exacte
    mais je ne sais pas quelle commande dois je utiliser
     

  14. Paraboloide_Hyperbolique

    Date d'inscription
    juin 2012
    Localisation
    Liège
    Âge
    30
    Messages
    1 126

    Re : Résolution des système linéaire sur matlab

    De rien

    Quant à votre dernière question:

    Plusieur courbes superposées:
    Ajoutez les arguments à la commande "plot".

    Exemple:

    % Graphes de sin(x) et cos(x)
    plot(x, sin(x), x, cos(x))

    Plusieurs graphes séparés dans la même fenêtre:
    Employez la commande "subplot". Tapez "help subplot" pour avoir les détails concernant son utilisation.
    Dernière modification par Paraboloide_Hyperbolique ; 01/08/2012 à 20h08.
     

  15. dalida1111

    Date d'inscription
    mars 2011
    Messages
    287

    Re : Résolution des système linéaire sur matlab

    Bonsoir
    merci pour la réponse mais ce n est pas ca que je veux ..
    je veux tracer des courbes par exemple pour n=2, 40 , 100....
    quand j exècute mon code et je donne une valeur à n ( n=9 par exemple) j arrive juste à tracer la courbe de la solution approchée pour n=9 et la courbe de la colution exacte( deux courbes supperposées) ca je sais le faire
    mais je veux tracer dans 1 meme graphe la solution approchée pour plusieurs n ( n=3,9,8....) ce n est pas seulement une seule valeur de n
    dois je modifier mon code? ajouter une boucle quelque part? ou ajouter des commandes ??
    je suis vraiment bloquée ): ca fait 2 jours que je cherche la solution
    merci d avance
     


    • Publicité




Poursuivez votre recherche :




Sur le même thème :




 

Discussions similaires

  1. resolution systeme non lineaire
    Par membreComplexe12 dans le forum Mathématiques du supérieur
    Réponses: 3
    Dernier message: 17/07/2011, 16h42
  2. Problème fsolve MATLAB résolution système non linéaire
    Par gotenths dans le forum Logiciel - Software - Open Source
    Réponses: 5
    Dernier message: 10/05/2011, 18h50
  3. Résolution de systeme linéaire
    Par pichoun dans le forum Mathématiques du supérieur
    Réponses: 1
    Dernier message: 25/03/2009, 20h29
  4. algèbre linéaire: résolution de système.
    Par mouniac dans le forum Mathématiques du supérieur
    Réponses: 6
    Dernier message: 12/03/2009, 17h18
  5. résolution système linéaire
    Par spirit01 dans le forum Mathématiques du supérieur
    Réponses: 1
    Dernier message: 21/05/2008, 01h53