IX1303 Algebra och geometri  föreläsning 1-2

Jan-Olof Åkerlund, HT 2012

Vektorer

Vektorer i (R^2)

Vektorer representeras i Mathematica som en lista med motsvarande antal element:

vektor1={1,5}
vektor2={2,-1};

Semikolon gör att vektor2 tilldelas ett  resultat, men att resultatet inte skrivs ut

vektor2

Addition av vektorer

vektor1+vektor2

{A1,A2}+{B1,B2}
{A1,A2}-{B1,B2}

Vektorns dimension

Vilken dimension har vektorerna ? Dvs. hur många element är det i listan

Length[vektor1]

Har de samma dimension? (observera: Likhet dvs dubbla likhetstecken)

Length[vektor1]==Length[vektor2]

Vilken dimension har dessa vektorer

v1={1,2,3}; 
v2={-1,-2,-3,-4}; 
v3={a,b,c,d};

Vi undersöker dimensionen

Length[v1]
Length[v2]
Length[v3]

Kan vi addera vektorerna?

v1+v2
v2+v3

Har v1 och v3 samma dimension?

Length[v1]==Length[v3]

Har v1 och v2 samma dimension?

Length[v1]==Length[v2]

plotta vektorer i (R^2)

Vektorn från P1 till P2

p1={3,-3};p2={-1,3};
punkterna=Graphics[{PointSize[Large],Point[p1],Point[p2],Inset["(Subscript[p, 2])=(-1,3 )",{-1.5,3}],Inset["(Subscript[p, 1])=(-3,3 )",{2.5,-3}]},Axes->True]

Definiera vektorn

vektorn=p2-p1

Definiera det grafiska objektet

pilen=Graphics[{Arrow[{p1,p2}],Inset["vektorn v=(-4,6)",{1,1}]}]

Visa punkterna och vektorn i samma figur

Show[punkterna,pilen]

Anpassa plotten genom att specificera plott-intervall

Show[punkterna,pilen,PlotRange->{{-3,3},{-3,3}}]

plotta vektorer i (R^3)

Samma sak i tre dimensioner; kommadona blir lite annorlunda

p3={1,3,5}; p4={6,7,8};
pilen3D=Graphics3D[{Arrow[{p3,p4}]}]

pilen3D=Graphics3D[{Arrow[{p3,p4}]},Boxed->False]

pilen3D=Graphics3D[{Arrow[{p3,p4}]},Boxed->False,Axes->True]

pilen3D=Graphics3D[{Arrow[{p3,p4}]},Boxed->False,Axes->True, AxesLabel->{x,y,z}]

pilen3D=Graphics3D[{Arrow[{p3,p4}]},Boxed->False,Axes->True, AxesLabel->{x,y,z},AxesOrigin->{0,0,0}]

pilen3D=Graphics3D[{Arrow[{p3,p4}]},Axes->True, AxesLabel->{x,y,z},AxesOrigin->{0,0,0}]

Ett exempel på  icke-geometriska vektorer och linjär kombination

Tre grundfärger, röd, grön, blå

{Graphics[{RGBColor[{1,0,0}],Disk[]}],Graphics[{RGBColor[{0,1,0}],Disk[]}],Graphics[{RGBColor[{0,0,1}],Disk[]}]}

Tre vektorer som beskriver  färgerna röd, grön och blå

röd={1,0,0};
grön={0,1,0};
blå={0,0,1};

Färgvektorn blå

Graphics[{RGBColor[blå],Disk[]}]

En linjär kombination av två färgvektorer

.6 röd+.3blå

Graphics[{RGBColor[.6 röd+.3blå],Disk[]}]

En annan linjär kombination

.1 röd+.7 grön+.6 blå
Graphics[{RGBColor[.1 röd+.7 grön+.6 blå],Disk[]}]

Vektorns längd (Norm)

Quit[]

vektorR2={v1,v2};
vektorR3={u1,u2,u3};

Norm[vektorR2]

Simplify[Norm[vektorR2] ,Element[{v1,v2},Reals]]
Simplify[Norm[vektorR3] ,Element[{u1,u2,u3},Reals]]

Två vektorer - likadana?

vektorR5={2,-7,4,-3, .5};
vektorR5A={2,-7,4,-3, 1/2};

vektorR5==vektorR5A

Norm[vektorR5]

Norm[vektorR5A]

N[%]

Enhetsvektor (Unit Vector)

En vektor med längden (normen) 1 .
T.ex. (1,0) , (0,1)
Men även t.ex. ((1/(Sqrt[2])),(1/(Sqrt[2])))

Norm[{(1/(Sqrt[2])),(1/(Sqrt[2]))}]

Några figurer

Graphics[Arrow[{{0,0},{1,0}}]]

vektorE=Graphics[Arrow[{{0,0},{(1/(Sqrt[2])),(1/(Sqrt[2]))}}]]

Show[vektorE, PlotRange->{{-5,5},{-5,5}},Axes->True]

Några enhetsvektorer i (R^2)

Show[Graphics[{Circle[],Thick,Arrow[{{0,0},{1,0}}],Arrow[{{0,0},{-Sin[π/5],-Cos[π/5]}}],Arrow[{{0,0},{-(Sqrt[3])/2,1/2}}],Arrow[{{0,0},{0,1}}],Arrow[{{0,0},{1/(Sqrt[2]),-1/(Sqrt[2])}}]}],PlotRange->{{-2,2},{-2,2}},Axes->True]

En vektor i (R^3) (Normering)

v1={3,2,-1}

Vektorns längd

Norm[v1]

Vi kan normera den

v1Norm=v1/Norm[v1]

Vi testar

Norm[v1Norm]

En vektor i (R^5)

v2={3,2,-1,3.4,6};
Length[v2]
Norm[v2]
v2norm=v2/Norm[v2]
Norm[v2norm]

Avståndet mellan (Subscript[P, 1]) och (Subscript[P, 2])

Vi definierar (Subscript[P, 1]) och (Subscript[P, 2]) och vektorn från (Subscript[P, 1])till (Subscript[P, 2]).
	(OverVector[(Subscript[P, 1])(Subscript[P, 2])]) =(Subscript[P, 2])-(Subscript[P, 1])

P1={3,4};
P2={-4,5};
p1p2=P2-P1

"För hand"

Vi beräknar avståndet genom att bestämma längden av vektorn
	(Sqrt[(7^2)+(1^2)])=(Sqrt[49+1])=(Sqrt[50])=(Sqrt[25·2])= 5(Sqrt[2])

Eller så tar vi normen av vektorn

Norm[p1p2]
N[%]

Skalärprodukt

Skalärprodukten av två vektorer
Skalärprodukten ger en skalär som resultat

{a,b,c}.{x,y,z}

{1,2,3}.{x,y,z}

{a,b,c}.{a,b,c}

Skalärprodukt och Norm

Sqrt[{a,b,c}.{a,b,c}]

v3={3,-3};
(Sqrt[v3.v3])
(Sqrt[v3.v3])==Norm[v3]

(Sqrt[p1p2.p1p2])

Skalärprodukt och vinklar (I (R^2) och (R^3))

För skalärprodukten gäller
	u.v=|u||v| cos ϕ , där ϕ är vinkeln mellan u och v.

Några exempel

{1,0}.{1,0}

{1,0}.{0,1}

{1,0}.{(1/(Sqrt[2])),(1/(Sqrt[2]))}

%==Cos[π/4]

{3,7}.{-9,1}
{8,-3,7}.{-3,-4,-5}

Två vektorer i (R^(3  ))och vinkeln mellan dem

u.v = | u || v | cos ϕ => cos ϕ=((u.v)/(|u||v|))

vekt1={8,-3,7}; vekt2={-3,-4,-5};

vekt1.vekt2

((vekt1.vekt2)/(Norm[vekt1]Norm[vekt2]))
N[%]

Vinkeln

(i radianer)

ArcCos[((vekt1.vekt2)/(Norm[vekt1]Norm[vekt2]))]
N[%]

Vinkeln i grader

%/Degree

Och när vi har kommit så långt kan vi skriva hela formeln på en gång

N[ArcCos[((vekt1.vekt2)/(Norm[vekt1]Norm[vekt2]))]/Degree]

Vektorprodukt (kryssprodukt)

Skalärprodukten av två vektorer
Vektorprodukten ger en vektor som resultat

?Cross

Cross[{1,2,3},{2,1,4}]

vect1={1,2,3};vect2={2,1,4};
vect3=Cross[vect1,vect2]

vect1.vect3
vect2.vect3

Slutsats?

Hitta en vektor som är ortogonal mot två andra

Metod 1: använd kryssprodukten
	Se ovan)
Metod  2: använd skalärprodukten
	Ansätt en vektor (x1,x2,x3)

ekvation1={x1,x2,x3}.{1,2,3}==0

ekvation2={x1,x2,x3}.{2,1,4}==0

{lösning}={x1,x2,x3}/.Solve[{ekvation1,ekvation2}]

lösning