Exponentielle d'une matrice

Tout ce qui concerne notamment les outils de calcul numérique, de calcul formel ou de géométrie.
[participation réservée aux membres inscrits]
Règles du forum
Merci de soigner la rédaction de vos messages et de consulter ce sujet avant de poster. Pensez également à utiliser la fonction recherche du forum.
kilébo
Modérateur honoraire
Modérateur honoraire
Messages : 1059
Inscription : samedi 22 avril 2006, 12:08
Localisation : Région Parisienne

Exponentielle d'une matrice

Message non lu par kilébo »

Bonjour,

Connaitriez-vous un logiciel (libre) me permettant de calculer l'exponentielle d'une matrice ? (En formel ou en numérique, peut d'importance, c'est juste pour vérifier un calcul)

Merci d'avance.
PS : Si ça existe en page web, c'est encore mieux !
François D.
Utilisateur chevronné
Utilisateur chevronné
Messages : 1367
Inscription : dimanche 30 juillet 2006, 10:04
Localisation : Alsace

Message non lu par François D. »

maxima ne sait pas faire ça ? Ce serait bien étonnant.
kilébo
Modérateur honoraire
Modérateur honoraire
Messages : 1059
Inscription : samedi 22 avril 2006, 12:08
Localisation : Région Parisienne

Message non lu par kilébo »

Je viens d'installer maxima et c'est en espagnol quelque soit le langage sélectionné au départ (français ou anglais). Ne maitrisant pas l'espagnol, je l'ai désinstallé...
A une erreur de calcul et de raisonnement prêt, tout cela doit être correct.
François D.
Utilisateur chevronné
Utilisateur chevronné
Messages : 1367
Inscription : dimanche 30 juillet 2006, 10:04
Localisation : Alsace

Message non lu par François D. »

Curieux, cette histoire de langue :? ...

J'ai maxima chez moi (sous Linux, en anglais), et je viens de faire quelques tests : les exponentielles de matrices, il semble très bien comprendre ça :).
kilébo
Modérateur honoraire
Modérateur honoraire
Messages : 1059
Inscription : samedi 22 avril 2006, 12:08
Localisation : Région Parisienne

Message non lu par kilébo »

Euh... Est-ce que je pourrais abuser de ton temps et te demander de me calculer l'exponentielle de la matrice :
$$\left(\begin{array}{ccc}
5 & 0 & 3\\
-6 & -1 & -3\\
-6 & 0 &-4\end{array}\right) \quad \text{?}$$

Idéalement de celle-ci en fait : $$\left(\begin{array}{ccc}
5s & 0 & 3s\\
-6s & -s & -3s\\
-6s & 0 &-4s\end{array}\right)$$

[EDIT]Il y avait un coefficient erroné : 3 -> -3 à la fin de la deuxième ligne
François D.
Utilisateur chevronné
Utilisateur chevronné
Messages : 1367
Inscription : dimanche 30 juillet 2006, 10:04
Localisation : Alsace

Message non lu par François D. »

C'est urgent ? Parce que j'ai l'impression que si j'entre simplement $\exp(A)$, il se contente de remplacer les coefficients par leur exponentielle respective ... je suppose pourtant qu'il y a une fonctionnalité spécifique.

Je vais regarder de plus près.
kilébo
Modérateur honoraire
Modérateur honoraire
Messages : 1059
Inscription : samedi 22 avril 2006, 12:08
Localisation : Région Parisienne

Message non lu par kilébo »

Merci !

J'attends, pas de soucis.
A une erreur de calcul et de raisonnement prêt, tout cela doit être correct.
Lionel

Message non lu par Lionel »

Avec MatLab (fonction expm)

le resultat pour la première matrice donne :

$$\left(\begin{array}{ccc}
14.4102&0&7.0212\\
-14.0424&0.3679&-7.0212\\
-14.0424&0&-6.6533
\end{array}\right) $$
Arnaud
Modérateur honoraire
Modérateur honoraire
Messages : 7095
Inscription : lundi 28 août 2006, 13:18
Localisation : Allemagne

Message non lu par Arnaud »

Je pense qu'on peut écrire une macro sous openoffice calc pour faire ce genre de calcul, car on est de toute façon limité par la précision attendue.

La fonction a utiliser dans ce cas là serait PRODUITMAT.
Arnaud
Un peu d'info - Pyromaths - Pas d'aide en MP (non plus)
kojak
Modérateur général
Modérateur général
Messages : 10424
Inscription : samedi 18 novembre 2006, 19:50

Message non lu par kojak »

Je confirme les résultats précédents (TI 89) : ce sont des résultats approchés...

sinon tu peux chercher les valeurs propres de ta matrice : -1 à l'ordre 2 et 2 et ensuite tu vérifies que le sous espace propre associé à la valeur propre 2 est un plan, donc ta matrice est diagonalisable : tu as aussi ta matrice de passage $P$ et donc $D=P^{-1}AP$ et alors ensuite ton exponentielle de matrice....
sous espace propre associé à 2 : $(1,-1,-1)$
sev pour $-1$ plan équation $2x+z=0$ d'où $(1,0,-2)$ et $(1,-1,-2)$

Matrice de passage P

$$\left(\begin{array}{ccc}
1&1&1\\
-1&0&-1\\
-1&-2&-2
\end{array}\right)$$

Matrice diagonale $D$

$$\left(\begin{array}{ccc}
2&0&0\\
0&-1&0\\
0&0&-1
\end{array}\right)$$

Or $D=P^{-1}AP$ et

$$e^D=\left(\begin{array}{ccc}
e^2&0&0\\
0&e^{-1}&0\\
0&0&e^{-1}
\end{array}\right)$$

donc $e^A=Pe^DP^{-1}$ c'est à dire

$$e^A=\left(\begin{array}{ccc}
2e^2-e^{-1} & 0 & e^{2}-e^{-1}\\
2e^{-1}-2e^2& e^{-1} &e^{-1}-e^2\\
2e^{-1}-2e^2& 0 &2e^{-1}-e^2
\end{array}\right)$$
pihro

Message non lu par pihro »

oui, avec maple je trouve la même chose, à savoir (avec les s) :

$$ \left( \begin {array}{ccc} -{e^{-s}}+2\,{e^{2\,s}}&0&{e^{2\,s}}-{e^{-
s}}\\\noalign{\medskip}-2\,{e^{2\,s}}+2\,{e^{-s}}&{e^{-s}}&-{e^{2\,s}}
+{e^{-s}}\\\noalign{\medskip}-2\,{e^{2\,s}}+2\,{e^{-s}}&0&2\,{e^{-s}}-
{e^{2\,s}}\end {array} \right) $$
(c'est génial, maple sait convertir en tex : même pas besoin de tout retaper !)
MB
Administrateur
Administrateur
Messages : 7729
Inscription : samedi 28 mai 2005, 14:23
Statut actuel : Enseignant

Message non lu par MB »

kilébo a écrit :Je viens d'installer maxima et c'est en espagnol quelque soit le langage sélectionné au départ (français ou anglais). Ne maitrisant pas l'espagnol, je l'ai désinstallé...
Oui, c'est un peu bizarre. C'est la version 0.7.1 de wxMaxima.
Par contre, en allant dans Editar > Configurar puis en sélectionnant Inglês dans Idioma, alors tu peux avoir l'interface en anglais. (il faut relancer)
En ce qui concerne le français ... ça ne semble pas fonctionner.
MB. (rejoignez pCloud et bénéficiez de 10Go de stockage en ligne gratuits)
Pas d'aide en message privé. Merci de consulter ce sujet avant de poster votre premier message.
kilébo
Modérateur honoraire
Modérateur honoraire
Messages : 1059
Inscription : samedi 22 avril 2006, 12:08
Localisation : Région Parisienne

Message non lu par kilébo »

Merci à tous pour vos réponses : Je vais pouvoir poster le corrigé de CCP - 2005 - PC - 1 maintenant que j'ai isolé mon erreur de calcul.
A une erreur de calcul et de raisonnement prêt, tout cela doit être correct.
MB
Administrateur
Administrateur
Messages : 7729
Inscription : samedi 28 mai 2005, 14:23
Statut actuel : Enseignant

Message non lu par MB »

Bon et pour information. Voici comment faire avec Maxima.

Code : Tout sélectionner

M: matrix ([5*s, 0, 3*s], [-6*s, -s, -3*s], [-6*s, 0, -4*s]);
load(linearalgebra)$
matrixexp(M);
La fonction "Copy Tex" permet de copier le résultat directement au format TeX.
Ce qui donne :

Code : Tout sélectionner

$$\pmatrix{{e}^{-s}\,\left( 2\,{e}^{3\,s}-1\right)  & 0 & {e}^{-s}\,\left( {e}^{3\,s}-1\right) \cr -{e}^{-s}\,\left( 2\,{e}^{3\,s}-2\right)  & {e}^{-s} & -{e}^{-s}\,\left( {e}^{3\,s}-1\right) \cr -{e}^{-s}\,\left( 2\,{e}^{3\,s}-2\right)  & 0 & -{e}^{-s}\,\left( {e}^{3\,s}-2\right) }$$
Il faut modifier un peu pour avoir du LaTeX par contre ...

Code : Tout sélectionner

$$\begin{pmatrix}
{e}^{-s}\,\left( 2\,{e}^{3\,s}-1\right)  & 0 & {e}^{-s}\,\left( {e}^{3\,s}-1\right) \\
 -{e}^{-s}\,\left( 2\,{e}^{3\,s}-2\right)  & {e}^{-s} & -{e}^{-s}\,\left( {e}^{3\,s}-1\right) \\
 -{e}^{-s}\,\left( 2\,{e}^{3\,s}-2\right)  & 0 & -{e}^{-s}\,\left( {e}^{3\,s}-2\right)
\end{pmatrix}$$
Ce qui donne :

$$\begin{pmatrix}
{e}^{-s}\,\left( 2\,{e}^{3\,s}-1\right) & 0 & {e}^{-s}\,\left( {e}^{3\,s}-1\right) \\
-{e}^{-s}\,\left( 2\,{e}^{3\,s}-2\right) & {e}^{-s} & -{e}^{-s}\,\left( {e}^{3\,s}-1\right) \\
-{e}^{-s}\,\left( 2\,{e}^{3\,s}-2\right) & 0 & -{e}^{-s}\,\left( {e}^{3\,s}-2\right)
\end{pmatrix}$$
MB. (rejoignez pCloud et bénéficiez de 10Go de stockage en ligne gratuits)
Pas d'aide en message privé. Merci de consulter ce sujet avant de poster votre premier message.
kilébo
Modérateur honoraire
Modérateur honoraire
Messages : 1059
Inscription : samedi 22 avril 2006, 12:08
Localisation : Région Parisienne

Message non lu par kilébo »

Merci MB !

Grâce à tes indications, j'ai réussi à installer le logiciel correctement (en anglais mais pas de soucis pour ça) et à reproduire le calcul !

Merci !
A une erreur de calcul et de raisonnement prêt, tout cela doit être correct.
MB
Administrateur
Administrateur
Messages : 7729
Inscription : samedi 28 mai 2005, 14:23
Statut actuel : Enseignant

Message non lu par MB »

De rien. Et pour retrouver la forme donnée par Maple :

Code : Tout sélectionner

expand(matrixexp(M));
Voilà une méthode utilisant un logiciel libre. :P
MB. (rejoignez pCloud et bénéficiez de 10Go de stockage en ligne gratuits)
Pas d'aide en message privé. Merci de consulter ce sujet avant de poster votre premier message.