Wstęp do algebry 
Zajęcia nr 1

Rozwiązywanie równań

Równania w mathematice zapisujemy przy uzyciu znaku ==

Np. równanie kwadratowe:
 x^2 - 2 x- 5 == 0

Chcemy znaleźć zbiór x spełniających to równanie.

?Solve

Solve[x^2-2 x-5==0,x]

Rozwiązanie w postaci liczby zmiennoprzecinkowej:

N[%]

NSolve[x^2-2 x-5==0,x]

Rozwiązanie graficzne

?Plot

Rozwiazania to miejsca przeciecia z osia Ox :

Plot[x^2-2 x-5,{x,-2,4}]

Solve[Cos[x]==1/2,x]

Plot[Cos[x]-1/2,{x,-4 Pi,4 Pi}]

Układ równań

Jedna zmienna:

x^2 - 1 = 0
x^2 - 3 x + 2 = 0

Solve[{x^2-1==0,x^2-3 x+2==0},x]

Dwie zmienne

x-y = 0
x^2+y^2 = 1

Solve[{x-y==0,x^2+y^2==2}, {x,y}]

Rozwiązanie graficzne ukladu równań 2 zmiennych - ContourPlot

?ContourPlot

Rozwiazania to punkty przecięcia krzywych

ContourPlot[{x-y==0,x^2+y^2==2},{x,-2,2},{y,-2,2}]

Reduce

Wynik jest wyrażeniem logicznym

?Reduce

Reduce[x^3-3 x==0,x]

Reduce[{x-y==0,x^2+y^2==2},{x,y}]

FindRoot

Znajduje numerycznie rozwiązanie równania leżące najbliżej podanego punktu (Subscript[x, 0])

?FindRoot

Solve[3 Cos[x]==Log[x],x]

FindRoot[3 Cos[x]==Log[x],{x,1}]

FindRoot[3 Cos[x]==Log[x],{x,6}]

Plot[3 Cos[x]-Log[x],{x,0,30}]

Równania liniowe

Zadanie

Rozwiązać układy równanań liniowych 2 zmiennych:

a)
2x+y=4
x-y=2

b)
x-y=1
-2x+2y=5

1) Przy pomocy Solve lub Reduce

2) Graficznie przy pomocy  ContourPlot

Wektory i macierze

Wektory

{x,y,z}	  wektor o współrzędnych x,y,z

v={x,y,z}

Działania na wektorach:

p v + q

Iloczyn skalarny

{x,y}.{s,t}

Norma

Norm[v]

Współrzedne wektora

v[[1]]

v[[2]]

v[[3]]

MatrixForm[v]

Macierze

M={{A1,B1, C1},{A2,B2,C2},{A3,B3,C3}}

MatrixForm[M]

pierwszy wiersz macierzy

M[[1]]

Pierwszy wiersz, druga kolumna

M[[1,2]]

Transpozycja

Transpose[M]

MatrixForm[Transpose[M]]

S={{1,2},{4,3}}

Wyznacznik macierzy

Det[S]

Rząd macierzy

MatrixRank[S]

Działanie macierzy na wektor

M.v

Macierz układu równań

Układ równań liniowych jednorodnych:

5x+5y-z=0
10x+5y+2z=0
5x+15y-9z=0

Macierz układu równań a
a.v=0

a={{5,5,-1},{10,5,2},{5,15,-9}}

a // MatrixForm

a.v=={0,0,0}

Thread - tworzy liste rownań

Thread[a.v=={0,0,0}]

MatrixForm[%]

Metoda eliminacji Gaussa

Wykonujemy operacje elementarne na wierszach macierzy, aby otrzymac macierz górnotrójkątną

Dzielimy wiersze przez współczynniki x-ów

a[[1]]=a[[1]]/a[[1,1]]
a[[2]]=a[[2]]/a[[2,1]]
a[[3]]=a[[3]]/a[[3,1]]

Otrzymujemy jedynki w pierwszej kolumnie

a //MatrixForm

Odejmujemy od 2. i 3. wiersza wiersz 1.

a[[2]]=a[[2]]-a[[1]]
a[[3]]=a[[3]]-a[[1]]

a  //MatrixForm

Dzielimy wiersze przez współczynniki y-ów

a[[2]]=a[[2]]/a[[2,2]]
a[[3]]=a[[3]]/a[[3,2]]

a //MatrixForm

Odejmujemy od 3. wiersza wiersz 2.

a[[3]]=a[[3]]-a[[2]]

Otrzymaliśmy macierz górnotrójkątną

a //MatrixForm

Odejmujemy jeszcze od 1. wiersza wiersz 2. aby x i y były wyrażone przez z

a[[1]]=a[[1]]-a[[2]]

a  //MatrixForm

Thread[a.v=={0,0,0}]

Rozwiązanie: x=-((3 z)/5),y=((4 z)/5)

Solve[{5x+5y-z ==0,10x+5y+2z==0,5x+15y-9z==0},{x,y}]

Zadanie

Rozwiązać układ równań  
2x+y=0
4x+y-z=0
8x+y-3z=0

a) Przy użyciu funkcji Solve lub Reduce

b) Metodą eliminacji Gaussa