fatal_error a écrit:[...]
où on déduit a=x,d=y,g=z
(en supposant v qui est normé)
on orthonormalize R pour avoir une matrice de rotation
donc on prend (b,e,h) ortho à (a,d,g), par ex (b,e,h)=(a,d,-g)
puis on déduit (c,f,i) avec gram schmidt
mais (a,d,-g) n'est pas orthogonal à (a,d,g)
Et il est souvent question d'angles d'Euler par ci ou par là.
Dlzlogic a écrit:Etes-vous sûr que les 3 points palpés et leurs homologues forment deux triangles STRICTEMENT semblables ?
target=[1,2,3]
target/=norm(target,2)
xInitial=[1,0,0];
%{
M=
v1 v2 v3
--------
a b c
d e f
g h i
%}
v1=target';
v2=[-v1(2) v1(1) 0];
v2/=norm(v2,2);
v2=v2';
v3=cross(v1,v2);
M(1,:)=v1;
M(2,:)=v2;
M(3,:)=v3;
M=M';
%on verifie que M est bien une matrice de rotation: det(M)=1, inv(M)=M'
phi=atan2(M(3,1),M(3,2));
theta=asin(M(3,1))
psi=-atan2(M(1,3),M(2,3));
R_phi=[
cos(phi) sin(phi) 0;
-sin(phi) cos(phi) 0;
0 0 1
];
R_theta=[
1 0 0;
0 cos(theta) sin(theta);
0 -sin(theta) cos(theta);
];
R_psi=[
cos(psi) sin(psi) 0
-sin(psi) cos(psi) 0
0 0 1
];
R=R_psi*R_theta*R_phi
%on sattend a trouver target, ce qui nest pas le cas
R*xInitial'
clear;
clearplot
clg
target=[1,2,3]
hold('on')
target/=norm(target,2)
xInitial=[1,0,0];
phi=atan2(target(3), norm(target(1:2),2))
theta=pi/2
psi=atan2(target(2),target(1));
plot3([0 1], [0 0], [0 0], "-", "color", "green")
plot3([0 0], [0 1], [0 0], "-", "color", "magenta")
plot3([0 0], [0 0], [0 1], "-", "color", "black")
plot3([0 target(1)], [0 target(2)], [0 target(3)], "-", "color", "red")
R_phi=[
cos(phi) -sin(phi) 0;
sin(phi) cos(phi) 0;
0 0 1
];
x2=R_phi*xInitial';
plot3([0 x2(1)], [0 x2(2)], [0 x2(3)], "-")
R_theta=[
1 0 0;
0 cos(theta) -sin(theta);
0 sin(theta) cos(theta);
];
R_psi=[
cos(psi) -sin(psi) 0
sin(psi) cos(psi) 0
0 0 1
];
R=R_psi*R_theta*R_phi
hold('off')
%on sattend a trouver target, est le cas, au moins pour [1,2,3]
R*xInitial'-target'
Dlzlogic a écrit:En d'autres termes, le calcul matriciel est utile sur le papier, au tableau noir, mais quand au calcul final, il n'y a forcément plus que des opérations arithmétiques.
Juste un point de détail, le calcul matriciel est un outil, et pas plus. Ce type de calcul se fait très bien sans calcul matriciel. En d'autres termes, le calcul matriciel est utile sur le papier, au tableau noir, mais quand au calcul final, il n'y a forcément plus que des opérations arithmétiques.
Oui, je suppose que c'est vrai, amis il me parait difficile, voire dangereux d'utiliser un logiciel si on ne sait pas exactement ce qu'il fait, en d'autres termes si on ne saurait pas le faire à la main.Sylviel a écrit:Remarquons toutefois qu'il existe de nombreuses librairies (Lapack par exemple) de calculs matriciel efficace, et des langages de calculs scientifiques entièrement orientés matriciel (matlab ou scilab par exemple).
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité
Tu pars déja ?
Identification
Pas encore inscrit ?
Ou identifiez-vous :