|
Apprendre Maple Site dédié au logiciel de calcul formel Maple
|
Voir le sujet précédent :: Voir le sujet suivant |
Auteur |
Message |
bendesarts
Inscrit le: 27 Fév 2009 Messages: 234
|
Posté le: 13 Nov 2012 23:32 Sujet du message: Transformation d'un vecteur: produit matrice et vecteur |
|
|
Bonjour,
J'aimerais transformer un vecteur colonne de la forme
a1*x+b1*y+c1*z
V = a2*x+b2*y+c2*z
a3*x+b3*y+c3*z
en un produit matriciel de la forme
a1 b1 c1 x
a2 b2 c2 * y
a3 b3 c3 z
Voici le vecteur que j'aimerais transformer
Code: | V_Ci_BTP_F_li := Vector(3, {(1) = (diff(alpha(t), t))*h, (2) = -(diff(beta(t), t))*h, (3) = -(diff(alpha(t), t))*rBTPi*cos(ai)+(diff(beta(t), t))*rBTPi*sin(ai)+diff(z(t), t)})
|
pour lequel j'aimerais le mettre sous la forme d'une matrice fois le vecteur [diff(z(t), t);diff(alpha(t);diff(beta(t)]
Merci d'avance pour votre aide
Bendesarts |
|
Revenir en haut de page |
|
|
ALS
Inscrit le: 11 Sep 2006 Messages: 647
|
Posté le: 14 Nov 2012 8:32 Sujet du message: |
|
|
Bonjour,
C'est un peu compliqué, mais je passe par la résolution d'un système Av=v' avec 9 inconnues (les coeffs de A) pour trouver la matrice A.
Code: |
> V_Ci_BTP_F_li := Vector(3, {(1) = (diff(alpha(t), t))*h, (2) = -(diff(beta(t), t))*h, (3) = -(diff(alpha(t), t))*rBTPi*cos(ai)+(diff(beta(t), t))*rBTPi*sin(ai)+diff(z(t), t)});
>
V_Ci_BTP_F_li :=
[/d \ ]
[|-- alpha(t)| h]
[\dt / ]
[ /d \ ]
[-|-- beta(t)| h]
[ \dt / ]
[ /d \ /d \
[-|-- alpha(t)| rBTPi cos(ai) + |-- beta(t)| rBTPi sin(ai)
[ \dt / \dt /
/d \]
+ |-- z(t)|]
\dt /]
> V:=Vector(3,{(1) = diff(alpha(t), t), (2) = diff(beta(t), t), (3) = diff(z(t), t)});
[d ]
[-- alpha(t)]
[dt ]
[ ]
[d ]
V := [-- beta(t) ]
[dt ]
[ ]
[ d ]
[ -- z(t) ]
[ dt ]
> A:=Matrix([[a1,b1,c1],[a2,b2,c2],[a3,b3,c3]]);
[a1 b1 c1]
[ ]
A := [a2 b2 c2]
[ ]
[a3 b3 c3]
> s:=convert(evalm(A &* V-V_Ci_BTP_F_li),set);
/d \ /d \ /d \
s := {a1 |-- alpha(t)| + b1 |-- beta(t)| + c1 |-- z(t)|
\dt / \dt / \dt /
/d \ /d \ /d \
- |-- alpha(t)| h, a2 |-- alpha(t)| + b2 |-- beta(t)|
\dt / \dt / \dt /
/d \ /d \ /d \
+ c2 |-- z(t)| + |-- beta(t)| h, a3 |-- alpha(t)|
\dt / \dt / \dt /
/d \ /d \
+ b3 |-- beta(t)| + c3 |-- z(t)|
\dt / \dt /
/d \ /d \
+ |-- alpha(t)| rBTPi cos(ai) - |-- beta(t)| rBTPi sin(ai)
\dt / \dt /
/d \
- |-- z(t)|}
\dt /
> s:=collect(s,[diff(alpha(t),t),diff(beta(t),t),diff(z(t),t)]);
/d \ /d \ /d \
s := {a2 |-- alpha(t)| + (b2 + h) |-- beta(t)| + c2 |-- z(t)|,
\dt / \dt / \dt /
/d \ /d \ /d \
(a1 - h) |-- alpha(t)| + b1 |-- beta(t)| + c1 |-- z(t)|,
\dt / \dt / \dt /
/d \
(rBTPi cos(ai) + a3) |-- alpha(t)|
\dt /
/d \ /d \
+ (-rBTPi sin(ai) + b3) |-- beta(t)| + (c3 - 1) |-- z(t)|}
\dt / \dt /
> sys:=NULL:
> for k to 3 do sys:=sys,coeff(s[k],diff(alpha(t),t)),coeff(s[k],diff(beta(t),t)),coeff(s[k],diff(z(t),t)) od:
> sys:={sys};
sys := {a2, b1, c1, c2, a1 - h, b2 + h, c3 - 1, rBTPi cos(ai) + a3,
-rBTPi sin(ai) + b3}
> solve(sys,{a1,b1,c1,a2,b2,c2,a3,b3,c3});
{a1 = h, a2 = 0, a3 = -rBTPi cos(ai), b1 = 0, b2 = -h,
b3 = rBTPi sin(ai), c1 = 0, c2 = 0, c3 = 1}
> assign(%):
> A:=Matrix([[a1,b1,c1],[a2,b2,c2],[a3,b3,c3]]);
[ h 0 0]
[ ]
A := [ 0 -h 0]
[ ]
[-rBTPi cos(ai) rBTPi sin(ai) 1]
|
A plus tard. |
|
Revenir en haut de page |
|
|
bendesarts
Inscrit le: 27 Fév 2009 Messages: 234
|
Posté le: 17 Nov 2012 20:25 Sujet du message: |
|
|
Super, c'est un peu compliqué mais çà me va.
Merci |
|
Revenir en haut de page |
|
|
|
|
Vous ne pouvez pas poster de nouveaux sujets dans ce forum Vous ne pouvez pas répondre aux sujets dans ce forum Vous ne pouvez pas éditer vos messages dans ce forum Vous ne pouvez pas supprimer vos messages dans ce forum Vous ne pouvez pas voter dans les sondages de ce forum
|
Développé par phpBB © 2001, 2006 phpBB Group
Traduction par : phpBB-fr.com
Apprendre Maple - ©
- Alain Le Stang - Navigation optimisée pour une résolution 1024 x 768.
|