?? ch4_7.htm
字號:
<html>
<head>
<title> 矩陣運算函數 </title>
<meta NAME="GENERATOR" CONTENT="Microsoft FrontPage 3.0">
</head>
<body BACKGROUND="../img1/bg0000.gif" tppabs="http://webclass.ncu.edu.tw/~junwu/img/bg0000.gif">
<script language="JAVASCRIPT">
<!--
if (navigator.onLine){
document.write("<!-- Spidersoft WebZIP Ad Banner Insert -->");
document.write("<TABLE width=100% border=0 cellpadding=0 cellspacing=0>");
document.write("<TR>");
document.write("<TD>");
document.write("<ILAYER id=ad1 visibility=hidden height=60></ILAYER>");
document.write("<NOLAYER>");
document.write("<IFRAME SRC='http://www.spidersoft.com/ads/bwz468_60.htm' width=100% height=60 marginwidth=0 marginheight=0 hspace=0 vspace=0 frameborder=0 scrolling=no></IFRAME>");
document.write("</NOLAYER>");
document.write("</TD>");
document.write("</TR>");
document.write("</TABLE>");
document.write("<!-- End of Spidersoft WebZIP Ad Banner Insert-->");
}
//-->
</script>
<!-- Spidersoft WebZIP Ad Banner Insert -->
<!-- End of Spidersoft WebZIP Ad Banner Insert-->
<h1><font SIZE="6" COLOR="#0000FF">4.7 矩陣運算函數 </font></h1>
<hr>
<p>先介紹幾個與矩陣轉角有關的函數:<font COLOR="#FF0000">rot90</font>,<font COLOR="#FF0000"> fliplr</font>, <font COLOR="#FF0000">flipud</font>,它們的用法及說明請參考以下的例子。
</p>
<p><font COLOR="#FF0000">>> A=[2 1 0; -2 5 -1; 3 4 6];</font> </p>
<p><font COLOR="#FF0000">>> B=rot90(A) % 將A矩陣逆時針轉90度</font> </p>
<p><font COLOR="#FF0000">B =</font> </p>
<p><font COLOR="#FF0000">0 -1 6</font> </p>
<p><font COLOR="#FF0000">1 5 4</font> </p>
<p><font COLOR="#FF0000">2 -2 3<br>
</font></p>
<p><font COLOR="#FF0000">>> A=[1 2; 4 8; -2 0];</font> </p>
<p><font COLOR="#FF0000">>> B=fliplr(A); % 將A矩陣從左向右翻</font> </p>
<p><font COLOR="#FF0000">>> C=flipud(A); % 將A矩陣從上向下翻</font> </p>
<p><font COLOR="#FF0000">>> B, C<br>
</font></p>
<p><font COLOR="#FF0000">B =</font> </p>
<p><font COLOR="#FF0000">2 1</font> </p>
<p><font COLOR="#FF0000">8 4</font> </p>
<p><font COLOR="#FF0000">0 -2</font> </p>
<p><font COLOR="#FF0000">C =</font> </p>
<p><font COLOR="#FF0000">-2 0</font> </p>
<p><font COLOR="#FF0000">4 8</font> </p>
<p><font COLOR="#FF0000">1 2<br>
</font></p>
<p>另外函數 <font COLOR="#FF0000">reshape</font>
則是用來調整矩陣改形,即是在矩陣的元素總數不變下,改變其列及行的大小。見以下范例。
</p>
<p><font COLOR="#FF0000">>> A=[2 5 6 -1; 3 -2 10 0];</font> </p>
<p><font COLOR="#FF0000">>> B=reshape(A,4,2); % 將A矩陣改成 4x2 的矩陣</font>
</p>
<p><font COLOR="#FF0000">>> C=reshape(A,1,8); % 將A矩陣改成 8x1 的矩陣</font>
</p>
<p><font COLOR="#FF0000">>> B, C</font> </p>
<p><font COLOR="#FF0000">B =</font> </p>
<p><font COLOR="#FF0000">2 6</font> </p>
<p><font COLOR="#FF0000">3 10</font> </p>
<p><font COLOR="#FF0000">5 -1</font> </p>
<p><font COLOR="#FF0000">-2 0<br>
C =</font> </p>
<p><font COLOR="#FF0000">2 5</font> </p>
<p><font COLOR="#FF0000">6 1</font> </p>
<p><font COLOR="#FF0000">3 -2</font> </p>
<p><font COLOR="#FF0000">10 0</font> </p>
<p>我們如果要將矩陣內的特定元素讀取出來,或是將特定元素以其它值取代,以下的函數<font COLOR="#FF0000">diag</font>, <font COLOR="#FF0000">triu</font>, <font COLOR="#FF0000">tril</font>
提供了這方面的功能。<font COLOR="#FF0000">diag</font>是只保留原矩陣的主對角線
(main diagonal) 的元素,其余的元素以零取代。<font COLOR="#FF0000">triu</font>,
<font COLOR="#FF0000">tril</font>
則是分別產生上三角形及下三角形矩陣,其余的元素也以零取代。以下的例子詳細的說明這三個函數的用法:
</p>
<p><font COLOR="#FF0000">>> V=[1 2 3];</font> </p>
<p><font COLOR="#FF0000">>> A=diag(V)</font> </p>
<p><font COLOR="#FF0000">A =</font> </p>
<p><font COLOR="#FF0000">1 0 0</font> </p>
<p><font COLOR="#FF0000">0 2 0</font> </p>
<p><font COLOR="#FF0000">0 0 3<br>
</font></p>
<p><font COLOR="#FF0000">>> A=[1:2:7; 3:3:12; 4:-1:1; 1:4]</font> </p>
<p><font COLOR="#FF0000">A =</font> </p>
<p><font COLOR="#FF0000">1 3 5 7</font> </p>
<p><font COLOR="#FF0000">3 6 9 12</font> </p>
<p><font COLOR="#FF0000">4 3 2 1</font> </p>
<p><font COLOR="#FF0000">1 2 3 4</font> </p>
<p><font COLOR="#FF0000">>> B=triu(A)</font> </p>
<p><font COLOR="#FF0000">B =</font> </p>
<p><font COLOR="#FF0000">1 3 5 7</font> </p>
<p><font COLOR="#FF0000">0 6 9 12</font> </p>
<p><font COLOR="#FF0000">0 0 2 1</font> </p>
<p><font COLOR="#FF0000">0 0 0 4</font> </p>
<p><font COLOR="#FF0000">>> C=triu(A,-1)</font> </p>
<p><font COLOR="#FF0000">C =</font> </p>
<p><font COLOR="#FF0000">1 3 5 7</font> </p>
<p><font COLOR="#FF0000">3 6 9 12</font> </p>
<p><font COLOR="#FF0000">0 3 2 1</font> </p>
<p><font COLOR="#FF0000">0 0 3 4</font> </p>
<p><font COLOR="#FF0000">>> D=triu(A,3)</font> </p>
<p><font COLOR="#FF0000">D =</font> </p>
<p><font COLOR="#FF0000">0 0 0 7</font> </p>
<p><font COLOR="#FF0000">0 0 0 0</font> </p>
<p><font COLOR="#FF0000">0 0 0 0</font> </p>
<p><font COLOR="#FF0000">0 0 0 0<br>
</font></p>
<p><font COLOR="#FF0000">>> B=tril(A)</font> </p>
<p><font COLOR="#FF0000">B =</font> </p>
<p><font COLOR="#FF0000">1 0 0 0</font> </p>
<p><font COLOR="#FF0000">3 6 0 0</font> </p>
<p><font COLOR="#FF0000">4 3 2 0</font> </p>
<p><font COLOR="#FF0000">1 2 3 4</font> </p>
<p><font COLOR="#FF0000">>> C=triu(A,-1)</font> </p>
<p><font COLOR="#FF0000">C =</font> </p>
<p><font COLOR="#FF0000">0 0 0 0</font> </p>
<p><font COLOR="#FF0000">3 0 0 0</font> </p>
<p><font COLOR="#FF0000">4 3 0 0</font> </p>
<p><font COLOR="#FF0000">1 2 3 0</font> </p>
<p><font COLOR="#FF0000">>> D=triu(A,3)</font> </p>
<p><font COLOR="#FF0000">D =</font> </p>
<p><font COLOR="#FF0000">1 3 5 7</font> </p>
<p><font COLOR="#FF0000">3 6 9 12</font> </p>
<p><font COLOR="#FF0000">4 3 2 1</font> </p>
<p><font COLOR="#FF0000">1 2 3 4<br>
</font></p>
<hr>
<p><a HREF="ch4_6_2.htm" tppabs="http://webclass.ncu.edu.tw/~junwu/ch4_6_2.htm"><img SRC="../img1/lastpage.gif" tppabs="http://webclass.ncu.edu.tw/~junwu/img/lastpage.gif" BORDER="0" WIDTH="42" HEIGHT="42"></a> <a HREF="ch4_8.htm" tppabs="http://webclass.ncu.edu.tw/~junwu/ch4_8.htm"><img SRC="../img1/nextpage.gif" tppabs="http://webclass.ncu.edu.tw/~junwu/img/nextpage.gif" BORDER="0" HSPACE="10" WIDTH="42" HEIGHT="42"></a> <a HREF="../index.html" tppabs="http://webclass.ncu.edu.tw/~junwu/index.html"><img SRC="../img1/outline.gif" tppabs="http://webclass.ncu.edu.tw/~junwu/img/outline.gif" BORDER="0" HSPACE="6" WIDTH="42" HEIGHT="42"></a> <br>
<font SIZE="2" COLOR="#FF00FF">上一頁 下一頁 講義大綱 </font><layer src="http://www.spidersoft.com/ads/bwz468_60.htm" visibility="hidden" id="a1" width="600" onload="moveToAbsolute(ad1.pageX,ad1.pageY); a1.clip.height=60;visibility='show';"></layer> </p>
</body>
</html>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -