180 likes | 351 Views
矩陣與向量. 舒宇宸. 上次的複習. 一個向量 a =(a 1 ,a 2 ,a 3 ,…,a n ) 輸入它的方法 : a = [a 1 ,a 2 ,a 3 ,…,a n ] 長度 =sqrt(sum(a k ^2)) 電腦上可以用 sqrt(sum(a.^2)) 、 sqrt(sum(a.*a)) 、 sqrt(sum(a*a’)) 、 norm(a) 等指令求出來 單位向量 = a /| a | 電腦上可以用 a./norm(a)… 反正把 a 除上任何一個你能夠求出 a 的長度的方法均可. 要有創意. 上次的複習.
E N D
矩陣與向量 舒宇宸
上次的複習 • 一個向量a=(a1,a2,a3,…,an) • 輸入它的方法: a = [a1,a2,a3,…,an] • 長度=sqrt(sum(ak^2)) • 電腦上可以用sqrt(sum(a.^2))、sqrt(sum(a.*a))、sqrt(sum(a*a’))、norm(a)等指令求出來 • 單位向量=a/|a| • 電腦上可以用a./norm(a)… • 反正把a除上任何一個你能夠求出a的長度的方法均可 要有創意
上次的複習 • 兩個向量a=(a1,a2,…,an),b=(b1,b2,…,bn)要會求它的 • 內積=sum(ak*bk) • 電腦上可以用sum(a.*b)、a*a’等指令求出來 • 線性組合ma+nb • 電腦上可以用m*a+n*b就可以了
上次的複習 • a:d:n • 代表一等差數列, 首項a, 公差d,最後一項小於等於n • 等差數列a, a+d, a+2d, … , a+n*d . • 輸入方法: a + d*(0:n) • 等比數列a, ar, ar2, … , arn . • 輸入方法: a * r.^(0:n)
矩陣 • 當一個要處理的數列有分批的性質時, 我們就會把它改寫成矩陣. • 矩陣: 我們可以把它想成一堆向量的集合 • 矩陣該怎麼跟向量一樣做計算呢? • 該怎麼加減?(完全一樣的矩陣才能加減) • 該怎麼乘上一個數?(矩陣中的每個向量都乘) • 該怎麼線性組合?(上面兩個會了你就會了) • 還有呢?(矩陣乘向量, 矩陣乘矩陣)
矩陣, 為什麼要這樣乘? • Example: (a,b)這個向量代表每個週末所賺的家教費, 如右表就代表我這三週來的成果 • (列\行)=(第幾週\第幾天) • Example: (a,b)這個向量代表在六、日我把錢用掉的比例, • (列\行)=(第幾天\所用的比例) • 這時候, 請看黑板 (沒來上課的就不知道為什麼囉) (如果把兩個矩陣調換過來能相乘嗎)
兩矩陣乘法的限制 • 在矩陣相乘的過程中, 我們可以發現兩件重要的事情 • 前面的矩陣的行數要等於後面矩陣的列數 • 乘完之後的矩陣是列數與前面矩陣的列數相等行數與後面矩陣的行數相等 • 畫個圖大家就知道C=AB有什麼限制了. 我是矩陣A 我是C 我 是 矩 陣 B 我是 跌倒 的矩陣 B
C 矩陣變小了,向量站起來了 • 當我們後面乘的矩陣變成一個小小的矩陣, 從剛剛矩陣乘法的限制, 後面的矩陣列數一定要等於前面矩陣的行數, 所以最多只能變成一個高高瘦瘦矩陣, 所以當一個矩陣乘上一個行數跟它一樣多的向量, 要請向量站起來才能乘. 我們要相乘了 我站起來了 我是矩陣A 我 是 矩 陣 B 我是向量B
行向量與列向量 • 以後我們把(3,4)這種只有一列的向量稱為”列向量” • 而把 這種只有一行的向量稱為”行向量” 3 4
矩陣A乘行向量x的兩種解釋 • b = Ax • 先把矩陣A看成一堆列向量的集合 • 那麼b裡面的每個元素就是A的每一個列向量與x的內積(寫出來的樣子就像線性方程組) • 先把矩陣A看成一堆行向量的集合 • 那麼b就是這些行向量用x中的每個元素來做線性組合(寫出來的樣子就像是向量的線性組合) • x和b是一樣大的向量嗎?
線性方程組: 線性代數重要課題 • 學習線性代數, 最主要的課題有四 • 解線性方程組(當然不會是太小的) • 矩陣的分解 • 特徵值與特徵向量 • 線性變換
怎麼解線性方程組 • 代入消去法(這時候又要看黑板了) • 加減消去法(這時候也要看黑板) • 外積(only for 3x3)(這是老師的絕招,不傳之秘) • 高斯消去法(看黑板)
結論 • 處理分批的向量的問題, 我們會把它寫成矩陣 • 矩陣與矩陣的乘法需要前行後列相同 • 矩陣乘行向量的意義 • 內積版本 • 線性組合版本 • 解線性方程組的三種方法
電腦實做 • 輸入矩陣的方法: 我們用分號 ; 來表示不同的兩個列向量. • 如: A = [1,2,3;1,3,5;2,5,7] • 可不可以這樣輸入呢? • A = [1:3;1:2:5;2,5,7] • A = [1;1;2,2;3;5,3;5;7] • 還有什麼有創意的輸入方式?
把輸入的矩陣儲存/載入 • 儲存: save filename A • Example : save matrix.mat A • 載人: load filename
* 這是給矩陣與矩陣運算用的 • 規則不對, 就不能乘
‘給男人站起來的力量 • a = [2,3,4], a’ 就會 • a = , a’ 就會那a’’呢?這故事告訴我們什麼? UP UP 跌倒 2 3 4 再度站起來 跌倒了, 要有站起來的勇氣