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

MATLAB Discussion :

[solve] R�solution d'un syst�me de deux �quations


Sujet :

MATLAB

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    5
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 5
    Par d�faut [solve] R�solution d'un syst�me de deux �quations
    Bonjour,

    je dois r�soudre un syst�me de 2 �quations (X1 et X2) � 2 inconnues (R et t).
    Les �quations ne sont pas tr�s commodes et lorsque j'utilise la fonction :j'obtiens le message suivant :
    Warning: Warning, solutions may have been lost
    puis les r�sultats affich�s sont loin d'�tre ceux que j'attends...

    Visiblement, Matlab dois "manquer de m�moire" et tronque des valeurs, ce qui me donne des r�sultats faux.
    Je ne sais pas trop comment r�soudre ce probl�me.
    J'avais pens� utiliser la fonction fzero, mais cela implique de conna�tre o� se situent les solutions et je ne sais pas l'utiliser avec un syst�me, seulement avec une �quation � une inconnue.

    Est-il possible d'utiliser une autre fonction de r�solution de syst�me ?
    Ou peut-�tre utiliser plus de pr�cision dans les valeurs ?

    Merci d'avance

    Matlab 7.4.0.287 (R2007a)

  2. #2
    Membre �prouv�
    Profil pro
    Inscrit en
    D�cembre 2004
    Messages
    1 299
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2004
    Messages : 1 299
    Par d�faut
    Salut, tu peux utiliser une m�thode num�rique. Pour r�soudre l'�quation f(x)=0 o� x est un vecteur de R^2 (x=(x1;x2)), utilise la m�thode de Newton et toutes ses variantes.

  3. #3
    Membre �m�rite
    Avatar de rostomus
    Homme Profil pro
    Doctorant �lectronique et traitement du signal
    Inscrit en
    D�cembre 2006
    Messages
    791
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 42
    Localisation : France

    Informations professionnelles :
    Activit� : Doctorant �lectronique et traitement du signal

    Informations forums :
    Inscription : D�cembre 2006
    Messages : 791
    Par d�faut
    Salut,

    Tu peux nous poster tes deux �quations?

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    5
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 5
    Par d�faut
    Voici les 2 �quations :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    X1 =
     
    598459172153623/2374945115996160*pi-1/4*(1637500000000/273*t^2*R*(18/15625-12035612411181512153/72018011619328000000000000000000*R/t^3+(-2491596114225751/1208925819614629174706176+7802383612627838942311038999531524974685067173656264998622535560518887/33625946619946996896066769151862778492368248522481336320000000000000000000000000000000000000000000000000000000000000*R^4/t^12)*R^2/t^2)^(1/2)*(54459784665979693/2880720464773120000000000000/t^3)^(71/25+5388982421036481330682482662376010433/51865939976016628167831715840000000000000000000000000000*R^2/t^6+(-1314906976004109/576460752303423488+370816673790655729637/72018011619328000000000000000000*R/t^3-145327539147378968191217198930338201/103731879952033256335663431680000000000000000000000000000*R^2/t^6)*R/t)+4189214205075361/26388279066624000)/R*(700976274800963/4611686018427387904-47543392013400271989/144036023238656000000000000000000*R/t^3+5910975214708699665410119948329878257/51865939976016628167831715840000000000000000000000000000000*R^2/t^6+(269/20-9931106086422581923189586280125244302614927665228774727671750448507129/538015145919151950337068306429804455877891976359701381120000000000000000000000000000000000000000000000000000*R^4/t^12+768268220905111444642045323725885970696268735253998472449867711616476769362394983151634283596195860399105811649686808509084460611707421929/7236507430960159138002537883147695892287498964704148031336460737147158526674013993670006695302921745490887311360000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000*R^8/t^24)*t^2/R^2)^(1/2)*(54459784665979693/2880720464773120000000000000/t^3)^(-143/50+145353165273499800617/72018011619328000000000000000*R/t^3-24168859520652881873269978654761755101/51865939976016628167831715840000000000000000000000000000*R^2/t^6+(-3176444784221283161893747348048820679/51865939976016628167831715840000000000000000000000000*R^2/t^6+18182104765841874964776682764409991119136453041654452933655897411040067/1345037864797879875842670766074511139694729940899253452800000000000000000000000000000000000000000000000000*R^4/t^12-4878621499956665561347657795538707354816420235941206935106533022273106582126843572092971888838896766563/6976165316107640652787016623812415820133010160793401687975328170575665795846845235200000000000000000000000000000000000000000000000000000000000000000000000000*R^6/t^18)*t/R)-(-6550000000000/273*t^2*R^2*(18/15625-12035612411181512153/72018011619328000000000000000000*R/t^3+(-2491596114225751/1208925819614629174706176+7802383612627838942311038999531524974685067173656264998622535560518887/33625946619946996896066769151862778492368248522481336320000000000000000000000000000000000000000000000000000000000000*R^4/t^12)*R^2/t^2)^(1/2)*(54459784665979693/2880720464773120000000000000/t^3)^(71/25+5388982421036481330682482662376010433/51865939976016628167831715840000000000000000000000000000*R^2/t^6+(-1314906976004109/576460752303423488+370816673790655729637/72018011619328000000000000000000*R/t^3-145327539147378968191217198930338201/103731879952033256335663431680000000000000000000000000000*R^2/t^6)*R/t)*(200030789078143412389/288072046477312000000000000000000/t^3-3656915423851393219995322577165449017/207463759904066512671326863360000000000000000000000000000000/t^6+4361054595430220456135594514690220666542632289390039/59764509885442146192643850359054002364088320000000000000000000000000000000000000000000/t^9+930503702839999/2189866660074853547892690386944*t*54459784665979693^(1/5)*2880720464773120000000000000^(4/5)/(1/t^3)^(4/5)/R)/(700976274800963/4611686018427387904-47543392013400271989/144036023238656000000000000000000*R/t^3+5910975214708699665410119948329878257/51865939976016628167831715840000000000000000000000000000000*R^2/t^6+(269/20-9931106086422581923189586280125244302614927665228774727671750448507129/538015145919151950337068306429804455877891976359701381120000000000000000000000000000000000000000000000000000*R^4/t^12+768268220905111444642045323725885970696268735253998472449867711616476769362394983151634283596195860399105811649686808509084460611707421929/7236507430960159138002537883147695892287498964704148031336460737147158526674013993670006695302921745490887311360000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000*R^8/t^24)*t^2/R^2)^(1/2)/((54459784665979693/2880720464773120000000000000/t^3)^(-143/50+145353165273499800617/72018011619328000000000000000*R/t^3-24168859520652881873269978654761755101/51865939976016628167831715840000000000000000000000000000*R^2/t^6+(-3176444784221283161893747348048820679/51865939976016628167831715840000000000000000000000000*R^2/t^6+18182104765841874964776682764409991119136453041654452933655897411040067/1345037864797879875842670766074511139694729940899253452800000000000000000000000000000000000000000000000000*R^4/t^12-4878621499956665561347657795538707354816420235941206935106533022273106582126843572092971888838896766563/6976165316107640652787016623812415820133010160793401687975328170575665795846845235200000000000000000000000000000000000000000000000000000000000000000000000000*R^6/t^18)*t/R))+7779969237997099/26388279066624000)*(200030789078143412389/288072046477312000000000000000000/t^3-3656915423851393219995322577165449017/207463759904066512671326863360000000000000000000000000000000/t^6+4361054595430220456135594514690220666542632289390039/59764509885442146192643850359054002364088320000000000000000000000000000000000000000000/t^9+930503702839999/2189866660074853547892690386944*t*54459784665979693^(1/5)*2880720464773120000000000000^(4/5)/(1/t^3)^(4/5)/R)-(1637500000000/273*t^3*(13/500*R/t-3162509803996765/147573952589676412928*R^2/t^2)*(54459784665979693/2880720464773120000000000000/t^3)^(278/125+3085217946327923/2305843009213693952*R/t)-4189214205075361/52776558133248000)*(1/4/R*(700976274800963/4611686018427387904-47543392013400271989/144036023238656000000000000000000*R/t^3+5910975214708699665410119948329878257/51865939976016628167831715840000000000000000000000000000000*R^2/t^6+(269/20-9931106086422581923189586280125244302614927665228774727671750448507129/538015145919151950337068306429804455877891976359701381120000000000000000000000000000000000000000000000000000*R^4/t^12+768268220905111444642045323725885970696268735253998472449867711616476769362394983151634283596195860399105811649686808509084460611707421929/7236507430960159138002537883147695892287498964704148031336460737147158526674013993670006695302921745490887311360000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000*R^8/t^24)*t^2/R^2)^(1/2)*(54459784665979693/2880720464773120000000000000/t^3)^(-143/50+145353165273499800617/72018011619328000000000000000*R/t^3-24168859520652881873269978654761755101/51865939976016628167831715840000000000000000000000000000*R^2/t^6+(-3176444784221283161893747348048820679/51865939976016628167831715840000000000000000000000000*R^2/t^6+18182104765841874964776682764409991119136453041654452933655897411040067/1345037864797879875842670766074511139694729940899253452800000000000000000000000000000000000000000000000000*R^4/t^12-4878621499956665561347657795538707354816420235941206935106533022273106582126843572092971888838896766563/6976165316107640652787016623812415820133010160793401687975328170575665795846845235200000000000000000000000000000000000000000000000000000000000000000000000000*R^6/t^18)*t/R)-54459784665979693/23045763718184960000000000000/t^3-18*t/R)^2/(1/4*t*(13/500*R/t-3162509803996765/147573952589676412928*R^2/t^2)*(54459784665979693/2880720464773120000000000000/t^3)^(278/125+3085217946327923/2305843009213693952*R/t)/R^2*(700976274800963/4611686018427387904-47543392013400271989/144036023238656000000000000000000*R/t^3+5910975214708699665410119948329878257/51865939976016628167831715840000000000000000000000000000000*R^2/t^6+(269/20-9931106086422581923189586280125244302614927665228774727671750448507129/538015145919151950337068306429804455877891976359701381120000000000000000000000000000000000000000000000000000*R^4/t^12+768268220905111444642045323725885970696268735253998472449867711616476769362394983151634283596195860399105811649686808509084460611707421929/7236507430960159138002537883147695892287498964704148031336460737147158526674013993670006695302921745490887311360000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000*R^8/t^24)*t^2/R^2)^(1/2)*(54459784665979693/2880720464773120000000000000/t^3)^(-143/50+145353165273499800617/72018011619328000000000000000*R/t^3-24168859520652881873269978654761755101/51865939976016628167831715840000000000000000000000000000*R^2/t^6+(-3176444784221283161893747348048820679/51865939976016628167831715840000000000000000000000000*R^2/t^6+18182104765841874964776682764409991119136453041654452933655897411040067/1345037864797879875842670766074511139694729940899253452800000000000000000000000000000000000000000000000000*R^4/t^12-4878621499956665561347657795538707354816420235941206935106533022273106582126843572092971888838896766563/6976165316107640652787016623812415820133010160793401687975328170575665795846845235200000000000000000000000000000000000000000000000000000000000000000000000000*R^6/t^18)*t/R)/(18/15625-12035612411181512153/72018011619328000000000000000000*R/t^3+(-2491596114225751/1208925819614629174706176+7802383612627838942311038999531524974685067173656264998622535560518887/33625946619946996896066769151862778492368248522481336320000000000000000000000000000000000000000000000000000000000000*R^4/t^12)*R^2/t^2)^(1/2)/((54459784665979693/2880720464773120000000000000/t^3)^(71/25+5388982421036481330682482662376010433/51865939976016628167831715840000000000000000000000000000*R^2/t^6+(-1314906976004109/576460752303423488+370816673790655729637/72018011619328000000000000000000*R/t^3-145327539147378968191217198930338201/103731879952033256335663431680000000000000000000000000000*R^2/t^6)*R/t))-54459784665979693/23045763718184960000000000000/t^3-18*t/R)
     
     
     
    X2 =
     
    -3275000000000/273*t^2*R*(18/15625-12035612411181512153/72018011619328000000000000000000*R/t^3+(-2491596114225751/1208925819614629174706176+7802383612627838942311038999531524974685067173656264998622535560518887/33625946619946996896066769151862778492368248522481336320000000000000000000000000000000000000000000000000000000000000*R^4/t^12)*R^2/t^2)^(1/2)*(54459784665979693/2880720464773120000000000000/t^3)^(71/25+5388982421036481330682482662376010433/51865939976016628167831715840000000000000000000000000000*R^2/t^6+(-1314906976004109/576460752303423488+370816673790655729637/72018011619328000000000000000000*R/t^3-145327539147378968191217198930338201/103731879952033256335663431680000000000000000000000000000*R^2/t^6)*R/t)+1056558429015651/17592186044416/R*(700976274800963/4611686018427387904-47543392013400271989/144036023238656000000000000000000*R/t^3+5910975214708699665410119948329878257/51865939976016628167831715840000000000000000000000000000000*R^2/t^6+(269/20-9931106086422581923189586280125244302614927665228774727671750448507129/538015145919151950337068306429804455877891976359701381120000000000000000000000000000000000000000000000000000*R^4/t^12+768268220905111444642045323725885970696268735253998472449867711616476769362394983151634283596195860399105811649686808509084460611707421929/7236507430960159138002537883147695892287498964704148031336460737147158526674013993670006695302921745490887311360000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000*R^8/t^24)*t^2/R^2)^(1/2)*(54459784665979693/2880720464773120000000000000/t^3)^(-143/50+145353165273499800617/72018011619328000000000000000*R/t^3-24168859520652881873269978654761755101/51865939976016628167831715840000000000000000000000000000*R^2/t^6+(-3176444784221283161893747348048820679/51865939976016628167831715840000000000000000000000000*R^2/t^6+18182104765841874964776682764409991119136453041654452933655897411040067/1345037864797879875842670766074511139694729940899253452800000000000000000000000000000000000000000000000000*R^4/t^12-4878621499956665561347657795538707354816420235941206935106533022273106582126843572092971888838896766563/6976165316107640652787016623812415820133010160793401687975328170575665795846845235200000000000000000000000000000000000000000000000000000000000000000000000000*R^6/t^18)*t/R)

  5. #5
    Membre �prouv�
    Profil pro
    Inscrit en
    D�cembre 2004
    Messages
    1 299
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2004
    Messages : 1 299
    Par d�faut
    Salut, tes �quations n'ont rien de bien compliqu�. Utilise la m�thode de Newton et c'est gagn�. Le calcul de la jacobienne est facile.
    Mais je n'ai pas vu de signe "=" O� est ton second membre ?

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    5
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 5
    Par d�faut
    Il n'y a pas de signe "= " car il me semble que Matlab le met par defaut dans le solve.

    C'est � dire : solve(X1,X2) <=> solve(X1=0,X2=0).

    Du moins, c'est ce que j'avais compris dans la documentation.

    Sinon, pour la r�solution vous avez raison, je vais utiliser Newton-Raphson.
    Merci beacoup

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    5
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 5
    Par d�faut
    Bon ben j'ai essay� de r�soudre le syt�me avec la m�thode de Newton-Raphson mais matlab n'a toujours pas assez de m�moire. Il me dit au bout d'une heure :
    ??? Out of memory


    Voici le code que j'ai tap� pour la m�thode de Newton (qui marche avec des exemples plus simples)
    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
    function S=Newton(F1,F2)
     
    syms R t
     
    F=[F1;F2];
    v=[R,t];
    S=[0;0];
    J=jacobian(F,v);
    Jinv=inv(J);
    for i=1:2
        v=[S(1),S(2)];
        X1=subs(F1,R,v(1));
        X1=subs(X1,t,v(2));
        X2=subs(F2,R,v(1));
        X2=subs(X2,t,v(2));
        Ji=subs(Jinv,R,v(1));
        Ji=subs(Ji,t,v(2));
     
     
          S=S-Ji*[X1;X2];
    end
    S=S;
    Il est tap� � l'arrache mais il marche sur d'autres �quations.

    Donc je n'arrive toujours pas � r�soudre mon syst�me !!!

    Peut-�tre que l'utilisation des variables en symboliques n'est pas une bonne chose ?

    Sinon, est-ce que quelqu'un aurait une autre id�e (autre algo, logiciel...)

    Merci d'avance

  8. #8
    Membre �m�rite
    Avatar de rostomus
    Homme Profil pro
    Doctorant �lectronique et traitement du signal
    Inscrit en
    D�cembre 2006
    Messages
    791
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 42
    Localisation : France

    Informations professionnelles :
    Activit� : Doctorant �lectronique et traitement du signal

    Informations forums :
    Inscription : D�cembre 2006
    Messages : 791
    Par d�faut
    Salut,

    Comment as-tu obtenu X1 et X2?
    Est ce que tu veux toujours une solution en "symbolique"?

  9. #9
    Membre �prouv�
    Profil pro
    Inscrit en
    D�cembre 2004
    Messages
    1 299
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2004
    Messages : 1 299
    Par d�faut
    je ne suis pas un expert du calcul symbolique avec matlab. Mais je sais que Maple est fait pour faire du calcul symbolique.

    Selon moi : matlab : calcul num�rique
    maple : calcul symbolique

    m�me si on peut faire de calcul num�rique et symbolique avec ces deux logiciels, � chacun son point fort.

  10. #10
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    5
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 5
    Par d�faut
    J'obtiens X1 et X2 en rempla�ant dans 2 �quations de d�part toutes les variables qui d�pendent de R et t pour obtenir 2 �quations � 2 inconnues.

    Sinon je veux le r�sultat en num�rique pas en symbolique. C'est juste que j'utilise une d�claration de mes variables R et t en symbolique. Mais je devrais obtenir des r�sultats num�riques avec Newton (voir meme avec le "solve" de matlab). Donc maple n'est pas utile ici.

    Merci quand meme.

    En fait matlab n'arrive pas a inverser la matrice jacobienne dans mon algo de Newton car il ne dispose pas d'assez de m�moire pour stocker toutes ses donn�es utiles � cette inversion.

    Donc j'ai toujours pas trouv� de solutions .................

  11. #11
    Membre �m�rite
    Avatar de ol9245
    Homme Profil pro
    Chercheur
    Inscrit en
    Avril 2007
    Messages
    985
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 63
    Localisation : France, H�rault (Languedoc Roussillon)

    Informations professionnelles :
    Activit� : Chercheur

    Informations forums :
    Inscription : Avril 2007
    Messages : 985
    Billets dans le blog
    1
    Par d�faut
    Bjr,

    je sais pas si �a a un rapport avec ta difficult� � r�soudre tes �quations, mas des nombres longs comme d'ici dimanche, genre 12035612411181512153 c'est pas courant en alcul num�rique. Tu aurais des probl�mes d'arrondi que �a m'�tonnerais pas.

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    >> x=12035612411181512153  ;
    >> y=x+1 ;
    >> y-x
     
    ans =
     
         0
    OL

Discussions similaires

  1. R�ponses: 4
    Dernier message: 05/12/2013, 10h01
  2. [XL-2007] R�solution d'une syst�me de trois �quations � trois inconnues
    Par frisou65 dans le forum Macros et VBA Excel
    R�ponses: 1
    Dernier message: 26/08/2011, 08h20
  3. R�ponses: 1
    Dernier message: 22/05/2008, 13h56
  4. R�ponses: 1
    Dernier message: 13/12/2006, 12h01
  5. R�solution d'un syst�me d'�quations
    Par JeaJeanne dans le forum MATLAB
    R�ponses: 1
    Dernier message: 04/12/2006, 10h08

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