Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function [kreuzproduktx]= Kreuzprodukt(a,b)
- if length(a) == 3 then
- kreuzproduktx(1) = (a(2)*b(3) - a(3)*b(2))
- kreuzproduktx(2) = (a(3)*b(1) - a(1)*b(3))
- kreuzproduktx(3) = (a(1)*b(2) - a(2)*b(1))
- else
- kreuzproduktx = (a(1)*b(2) - a(2)*b(1))
- end
- endfunction
- function [betragx]= Vektorbetrag(a)
- if length(a) == 3 then
- betragx=(a(1)^2+a(2)^2+a(3)^2)^0.5
- else
- betragx=(a(1)^2+a(2)^2)^0.5
- end
- endfunction
- function [skalarx]=Skalarprodukt(a, b)
- if length(a)==3 then
- skalarx=a(1)*b(1)+a(2)*b(2)+a(3)*b(3)
- else
- skalarx=a(1)*b(1)+a(2)*b(2)
- end
- endfunction
- function [winkelx]=Vektorwinkel(a,b)
- winkelx=acosd(Skalarprodukt(a,b)/(Vektorbetrag(a)*Vektorbetrag(b)))
- endfunction
- noch ausstehend:
- Fläche von Dreieck/Parallelogram
- restliche Vektoren bei einem Dreieck oder Parallelogram berechnen lassen
- neuen Punkt berechnen
- Polynomdivision
- //------------------------Vektorberechnungen---------------------------
- //-----------------Winkel zwischen zwei Vektoren-----------------------
- Vektor1=[2 -1 4]
- Vektor2=[-3 -2 1]
- Vektora=Vektor1
- Vektorb=Vektor2
- Vektorc=Vektorb-Vektora
- Winkelab=Vektorwinkel(Vektora, Vektorb)
- Winkelac=Vektorwinkel(-(Vektora), Vektorc)
- Winkelbc=Vektorwinkel(Vektorb, Vektorc)
- Flaeche=(Vektorbetrag(Kreuzprodukt(Vektora,Vektorb)))/2
- //------------------------Lineare Abbildung---------------------------
- //Winkel der Drehung
- alpha=60;
- //Verschiebung um:
- Vx=0;
- Vy=0;
- //Eingabe der Koordinaten Ursprungs-Matrix
- a=[1 1 3]
- start=[2 1 7]
- ende=a+start
- OrtsMatrix=[start;ende]'
- //Berechnungsmatrizen
- //2D
- dM2d=[cosd(a) -sind(a); sind(a) cosd(a)]; //Drehmatrix, Drehung um a (2D)
- OrthProjX=[1 0; 0 0]; //Orthogonale Projektion auf die X Achse
- OrthProjY=[0 0; 0 1]; //Orthogonale Projektion auf die Y Achse
- IdentAbb=[1 0; 0 1]; //Identische Abbildung
- Sx2d=[1 0; 0 -1]; //Spiegelung an der X-Achse
- Sy2d=[-1 0; 0 1]; //Spiegelung an der Y-Achse
- Sk2d=[-1 0; 0 -1]; //Spiegelung am Koordinatenurpsrung
- vM=[1 0 Vx; 0 1 Vy; 0 0 1]; //Verschiebungsmatrix, Verschiebung um Vx/Vy
- //3D
- Sx3d=[1 0 0; 0 -1 0; 0 0 -1]; //Spiegelung an der x-Achse
- Sxy3d=[1 0 0; 0 1 0; 0 0 -1]; //Spiegelung an xy-Ebene
- Syz3d=[-1 0 0; 0 1 0; 0 0 1]; //Spiegelung an yz-Ebene
- Sxz3d=[1 0 0; 0 -1 0; 0 0 1]; //Spiegelung an xz-Ebene
- Sk03d=[-1 0 0; 0 -1 0; 0 0 -1]; //Spiegelung am Koordinatenursprung
- dMx3d=[1 0 0; 0 cosd(alpha) -sind(alpha); 0 sind(alpha) cosd(alpha)]; //Drehung um x-Achse um a
- dMy3d=[cosd(alpha) 0 -sind(alpha); 0 1 0; sind(alpha) 0 cosd(alpha)]; //Drehung um y-Achse um b
- dMz3d=[cosd(alpha) -sind(alpha) 0; sind(alpha) cosd(alpha) 0; 0 0 1]; //Drehung um z-Achse um c
- //Berechnungen
- A=Sxy3d*dMy3d*OrtsMatrix
- //---------------------Determinante bilden----------------------
- GM=[-3 -2 4; -1 0 2; -5 -1 6]
- det(GM)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement