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 :

résolution d équations à deux inconnues avec nombres complexes


Sujet :

MATLAB

  1. #1
    Futur Membre du Club
    Inscrit en
    Décembre 2010
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 10
    Points : 5
    Points
    5
    Par défaut résolution d équations à deux inconnues avec nombres complexes
    Bonjour,
    je cherche à résoudre un problème d électromagnétisme où il faut trouver des paramètres T1 et T2 d un circuit d adaptation(T1 et T2 étant en fait des tanBd1 et tanBd2). J ai Zl (charge) et Zc(impédance caractéristique).
    La donnée stipule aussi que finalement real(Ztot) = 40 et imag(Ztot)=0.
    (Ztot ayant été trouvé après résolution du circuit)

    J essaie en vain d'utiliser la fonction solve pour trouver des solutions T1 et T2, fonction qui devrait fonctionner puisqu il y a deux inconnues (T1 et T2) pour deux équations. Mais peut être n aime t elle pas les complexes.
    Ztot peut paraitre indigeste mais au final cela ressemble au long argument que vous trouvez plus bas.

    Si quelqu un a une autre idée pour procéder ou une solution a ce problème, je suis preneur. Merci bien.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Zc= 50;
    %lambda =0.3;
    Zl = 20+ 30* 1i;
     
     
    [T1,T2] = solve('real(j*Zc*Zc*Zc*T1*(j*T2*Zc+Zl)/(j*T2*Zc*Zl)*(j*Zc*T1+ Zc*Zc*(j*T2*Zc+Zl)/(j*T2*Zc*Zl))= 40',...
    'imag(j*Zc*Zc*Zc*T1*(j*T2*Zc+Zl)/(j*T2*Zc*Zl)*(j*Zc*T1+ Zc*Zc*(j*T2*Zc*Zl)/(j*T2*Zc*Zl))=0');

    Les erreurs renvoyées sont :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     
    ??? Error using ==> solve>getEqns at 182
    ' real(j*Zc*Zc*Zc*T1*(j*T2*Zc+Zl)/(j*T2*Zc*Zl)*(j*Zc*T1+
    Zc*Zc*(j*T2*Zc+Zl)/(j*T2*Zc*Zl))= 40 ' is not a valid expression or equation.
     
    Error in ==> solve at 67
    [eqns,vars] = getEqns(varargin{:});
     
    Error in ==> bonus at 6
    [T1,T2] = solve('real(j*Zc*Zc*Zc*T1*(j*T2*Zc+Zl)/(j*T2*Zc*Zl)*(j*Zc*T1+
    Zc*Zc*(j*T2*Zc+Zl)/(j*T2*Zc*Zl))= 40'...

  2. #2
    Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 63
    Points : 68
    Points
    68
    Par défaut
    Je pense qu'il faut que tu maches le travail à Matlab et que tu fasses toi meme le calcul des parties reelle et imaginaire pour eviter d'avoir à utiliser real() et imag() dans solve(). Donc il faudrait ecrire Zl sous la forme a + j.b et developper l'expression de Ztot.

    Ton Ztot a l'air de pouvoir se simplifier assez facilement quand je vois que t'as laissé un terme comme "(j*T2*Zc*Zl)/(j*T2*Zc*Zl)". Par contre je sais pas si tout ca est vraiment homogene du coup car on a Zc * T1 de meme unité que Zc * Zc si j'ai pas fait d'erreur. Mais bon, c'est peut etre possible car je connais pas l'unité de T1.

  3. #3
    Rédacteur

    Homme Profil pro
    Comme retraité, des masses
    Inscrit en
    Avril 2007
    Messages
    2 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 83
    Localisation : Suisse

    Informations professionnelles :
    Activité : Comme retraité, des masses
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 2 978
    Points : 5 179
    Points
    5 179
    Par défaut
    Salut!
    Comme tu utilises la notation complexe, ton système est nécessairement linéaire. Il te faut l'écrire proprement, puis le résoudre, probablement au moyen de l'opérateur \ .
    Jean-Marc Blanc
    Calcul numérique de processus industriels
    Formation, conseil, développement

    Point n'est besoin d'espérer pour entreprendre, ni de réussir pour persévérer. (Guillaume le Taiseux)

  4. #4
    Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 63
    Points : 68
    Points
    68
    Par défaut
    Citation Envoyé par FR119492 Voir le message
    Comme tu utilises la notation complexe, ton système est nécessairement linéaire.
    Je suis pas sur que le probleme soit lineaire du tout. Le fait que ce soit complexe n'est pas vraiment une condition suffisante pour la linearite ici. Le truc qui importe c'est que les fonctions qui definissent la partie imaginaire et la partie reelle forment un systeme lineaire et ca ne me semble pas etre le cas.

    Petit contre exemple. Si on considere le nombre complexe x/y + i.xy = A + iB, le systeme { x/y = A; xy = B } n'est pas lineaire (meme s'il se resout facilement) et pourtant le nombre est complexe.

  5. #5
    Rédacteur

    Homme Profil pro
    Comme retraité, des masses
    Inscrit en
    Avril 2007
    Messages
    2 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 83
    Localisation : Suisse

    Informations professionnelles :
    Activité : Comme retraité, des masses
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 2 978
    Points : 5 179
    Points
    5 179
    Par défaut
    Salut!
    En théorie des circuits, la notation complexe est une manière de représenter les grandeurs sinusoïdales. Or, si un circuit n'est pas linéaire, les grandeurs ne peuvent pas être toutes sinusoïdales à la fois.
    Jean-Marc Blanc
    Calcul numérique de processus industriels
    Formation, conseil, développement

    Point n'est besoin d'espérer pour entreprendre, ni de réussir pour persévérer. (Guillaume le Taiseux)

  6. #6
    Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 63
    Points : 68
    Points
    68
    Par défaut
    Citation Envoyé par FR119492 Voir le message
    Salut!
    En théorie des circuits, la notation complexe est une manière de représenter les grandeurs sinusoïdales. Or, si un circuit n'est pas linéaire, les grandeurs ne peuvent pas être toutes sinusoïdales à la fois.
    Jean-Marc Blanc
    Tu mélanges tout...

Discussions similaires

  1. Système d'équations à deux inconnues
    Par Anakin Skywalker dans le forum Mathématiques
    Réponses: 4
    Dernier message: 27/09/2019, 09h20
  2. VB express 2013 - aide et calcul avec nombres complexes
    Par vasilpapa dans le forum VB.NET
    Réponses: 6
    Dernier message: 06/07/2015, 05h56
  3. Système d'équations non linéaires en nombres complexes
    Par Fafa_L2EP dans le forum Mathématiques
    Réponses: 0
    Dernier message: 09/05/2014, 13h55
  4. TP:Système d'équation à deux inconnues
    Par tayaa dans le forum Débuter avec Java
    Réponses: 8
    Dernier message: 19/11/2010, 16h46
  5. UNION de deux SELECT avec nombre d'arguments différents
    Par orus8 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 16/07/2004, 14h32

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