Maple 9 et matrices complexes

Maple 9 et matrices complexes - Divers - Programmation

Marsh Posté le 15-11-2007 à 19:53:17    

Bonjour,
 
Je voudrais effectuer quelques calculs en Maple, et à mon grand regret il ne semble pas capable de traiter correctement les matrices complexes "formelles".
 
En effet, prenons l'exemple simple de l'addition de deux matrices complexes génériques :  

Code :
  1. > with(linalg):
  2. > assume(a,real,b,real,c,real,d,real,e,real,f,real,g,real,h,real):
  3. > A := matrix([[a+I*b,c+I*d],[-c+I*d,a-I*b]]);
  4.                          [a~ + b~ I     c~ + d~ I]
  5.                     A := [                       ]
  6.                          [-c~ + d~ I    a~ - b~ I]
  7. > B := matrix([[e+I*f,g+I*h],[-g+I*h,e-I*f]]);
  8.                          [e~ + f~ I     g~ + h~ I]
  9.                     B := [                       ]
  10.                          [-g~ + h~ I    e~ - f~ I]
  11. > evalc(normal(simplify(evalm(A + B),complex)));
  12.           [a~ + b~ I + e~ + f~ I     c~ + d~ I + g~ + h~ I]
  13.           [                                               ]
  14.           [-c~ + d~ I - g~ + h~ I    a~ - b~ I + e~ - f~ I]


Comme vous pouvez le voir, malgré les nombreuses commandes l'incitant à présenter A+B sous une jolie forme, il laisse les coeff un peu n'importe comment.
Ce que je voudrais obtenir serait une matrice dont tous les coeff sont sous forme algébrique simple, c'est à dire :  
[ (a+e) + (b+f) I          (c+g) + (d+h)I ]
[                                                    ]
[ (-c-g) + (d+h) I                .....        ]
 
Savez-vous si cela est possible, et si oui, comment faire?
 
merci!


---------------
Mon Feed-Back / Votre PC s'ennuie ? Faites-le participer au World Community Grid !
Reply

Marsh Posté le 15-11-2007 à 19:53:17   

Reply

Marsh Posté le 20-11-2007 à 04:12:39    

La fonction collect(%, I) peut-être ?
Le chapitre 5 de http://www.math.uqam.ca/_boileau/P [...] rMaple.pdf peut t'aider. La commande infolevel[int] := 2; semble assez utile pour connaitre les infos dont Maple a besoin pour ses évaluations.


---------------
Les aéroports où il fait bon attendre, voila un topic qu'il est bien
Reply

Marsh Posté le 20-11-2007 à 20:11:26    

Chalut et merci pour ton message,
Hélas je viens d'essayer et ça n'a pas l'air de faire l'affaire...

Code :
  1. > collect(%,I);
  2. Error, (in collect) invalid 1st argument array(1 .. 2, 1 .. 2,[(1, 1)=a+I*b+e+I*f,(1, 2)=c+I*d+g+I*h,(2, 1)=-c+I*d-g+I*h,(2, 2)=a-I*b+e-I*f])


Et de façon générale :

Code :
  1. > collect(a+b*I+c+d*I,I);
  2. Error, (in collect) cannot collect I


 
Peut-être que Maple n'en est tout simplement pas capable...


Message édité par Mimisursonpingouin le 20-11-2007 à 20:14:34

---------------
Mon Feed-Back / Votre PC s'ennuie ? Faites-le participer au World Community Grid !
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed