Chương 1: Giới thiệu chung Chương 2: Đặc tính kỹ thuật Chương 3: Những đặc điểm của cửa sổ lệnh Chương 4: Script M_files Chương 5: Quản lý tệp Chưong 6: Các phép toán với mảng Chương 7: Các phép tính với mảng Chương 8: Các phép tính logic và quan hệ Chương 9: Văn bản Chương 10: Thời gian Chương 11: Vòng lặp điều khiển Chương 12: Hàm M_file Chương 13: Phân tích dữ liệu Chương 14: Đa thức Chương 15: Phép nội suy và mịn hóa đường cong Chương 16: Phân tích số liệu Chương 17: Đồ học trong hệ tọa độ phẳng Chương 18: Đồ họa trong không gian 3 chiều Chương 19: Mạng tế bào và cấu trúc Chương 20: Biểu tượng của hộp công cụ toán học Chương 21: Hộp công cụ hệ thống điều khiển Chương 22: Hộp dụng cụ xử lý tín hiệu Chương 23: Trợ giúp
Thuviendientu.org Thuviendientu.org Updatesofts.com Ebook Team Matlab toµn tËp cµi đặt MATLAB for WIN Yêu cầu hệ thống ã ã Hệ thống IBM tơng thích 100% với vi xư lÝ 486 Intel céng víi bé ®ång xư lí toán học 487 ( ngoại trừ 486 DX có xử lí bên ), Pentium Pentium Pro Processor Microsoft Window 95 hc Window NT a) ỉ CD ROM - Bộ điều phối đồ hoạ bit card hình ( 256 màu đồng thời ) - Khoảng trống đĩa đủ để cài đặt chạy tuỳ chọn Sự yêu cầu đĩa cứng thay đổi tuỳ theo kích cỡ partition tệp trợ giúp help đợc cài đặt trực tuỳ chọn Quá trình cài đặt thông báo cho bạn biết tỉ mỉ dung lợng đĩa yêu cầu Ví dụ: Partition với liên cung mặt cần 25 MB cho riêng MATLAB 50 MB cho MATLAB HELP Partition với liên cung 64 KB cần 115 MB cho riêng MATLAB 250 MB cho MATLAB HELP b ) Bé nhí Microsoft WIndow 95: MB tèi thiểu 16 MB khuyến nghị Microsoft WIN NT 3.51 4.0: 12 MB tối thiểu 16 MB khuyến nghị Các khuyến nghị ã Bộ nhớ phụ vào (Bộ nhớ bổ sung: additional Memory) ã Vỉ mạch tăng tốc đồ hoạ bổ trợ cho Microsoft Window ã Máy in trợ giúp cho Microsoft Window ã Vỉ mạch âm trợ giúp cho Microsoft Window ã Microsoft Word 7.0 ( bạn có ý định sử dụng MATLAB NoteBook ) ã Trình biên dịch Watcom C, Borland, Microsoft (xây dựng file MEX) ã Netscape Navigator 2.0 version cao Microsoft Internet Explorer 3.0 để chạy MATLAB Help Desk Quá trình cài đặt Đặt đĩa vào ổ CD Trên WIN 95 chơng trình SETUP bắt đầu chạy tự động nh MATLAB cha đợc cài từ trớc Còn không, nhấn đúp vào biểu tợng setup.exe để bắt đầu trình cài đặt Chấp nhận hay bỏ khuyến cáo cấp đăng kí phần mềm hình Nếu chấp nhận bạn bắt đầu trình cài đặt Trên Custumer Information, nhập vào tên bạn, địa bạn Tên không đợc 30 kí tự Nhấn nút NEXT Nhấn vào hộp trống thành phần dấu v nh bạn muốn tuỳ chọn nhấn tiếp bạn có ý định không muốn tuỳ chọn ( thêm vào sau muốn Thuviendientu.org Updatesofts.com Ebook Team ) Trên hình hiển thị C:\MATLAB th mục đích mặc định trình cài đặt Nếu bạn muốn cài đặt vào th mục khác đổi tên th mục bạn lựa chọn Browse MATLAB cho Macintosh MATLAB cho máy Macintosh chạy đợc trên: ã Mọi máy Macintosh có cấu hình đủ mạnh ( power Macintosh ) ã Mọi Macintosh đợc trang bị vi xử lí 68040 ( đồng xử lí toán học bên ) ã Mọi máy Macintosh đợc trang bị vi xử lí 68020 68030 đồng xử lí toán học 68881 68882 Yêu cầu tối thiểu để chạy MATLAB ã Đĩa cứng trống tối thiểu 26 MB, cần thêm 60 MB cho hệ thống tuỳ chon HELP trực tuyến ã 16 MB cho phân vïng bé nhí • ỉ CD ROM • Color Quick Draw -oOo Ch−¬ng1 GIíI THIƯU chung Bâygiờ bạn đà cài đặt xong, hÃy xem MATLAB làm đợc Trong phần trình bày số ứng dụng nó; để trình bày tất øng dơng cđa MATLAB sÏ rÊt dµi vµ tèn thêi gian Nếu bạn đọc hớng dẫn này, bạn thấy MATLAB ngôn ngữ mạnh để giải vấn đề quan trọng khó khăn bạn Nó hữu ích bạn đọc phần hớng dẫn cung cấp cho bạn kiến thức để bạn hiểu rõ MATLAB phát triển đợc khả sau Có lẽ cách dễ để hìng dung MATLAB có đầy đủ đặc điểm máy tính cá nhân: giống nh máy tính bản, làm tất phép tính toán học nh cộng, trừ, nhân, chia; giống nh máy tính kỹ thuật, bao gồm: số phức, thức, số mũ, logarithm, phép toán lợng giác nh sine, cosine, tang; giống nh máy tính có khả lập trình, lu trữ, tìm kiếm lại liệu, tạo, bảo vệ ghi trình tự lệnh để tự động phép toán giải vấn đề, bạn so sánh logic, điều khiển thực hiên lệnh để đảm bảo tính đắn phép toán Giống nh máy tính đại nhất, cho phép bạn biểu diễn liệu dới nhiều dạng nh: biểu diễn thông thờng, ma trân đại số, hàm tổ hợp thao tác với liệu thờng nh ma trËn Trong thùc tÕ MATLAB cßn øng dơng rÊt réng r·i nhiỊu lÜnh vùc vµ nã cịng sư dụng nhiều phép tính toán học Với đặc điểm khả thân thiện với ngời sử dụng nên dễ dàng sử dụng ngôn ngữ khác nh Basic, Pascal, C Nó cung cấp môi trờng phong phú cho biểu diễn liệu, có khả mạnh mẽ đồ hoạ, bạn tạo giao diện riêng cho ngời sử dụng(GUIs) để gải vấn đề riêng cho Thêm vào MATLAB đa công cụ để giải vấn đề đặc biệt, gọi Toolbox (hép c«ng cơ) VÝ dơ Student Edition cđa MATLAB bao gồm Toolbox điều khiển hệ thống, Toolbox xử lí tín hiệu, Toolbox biểu tợng toán học Ngoài bạn tạo Toolbox cho riêng Với khả mạnh mẽ, rộng lớn MATLAB nên cần thiết cho bạn phần Sau nghiên cứu phần, sách giúp Thuviendientu.org Updatesofts.com Ebook Team bạn hiểu đợc chúng Trớc tiên, cách đơn giản quan niệm nh máy tính bản, nh máy tính kỹ thuật nh máy tính lập trình đợc, cuối nh máy tính đại Bằng cách quan niệm bạn dễ dàng hiểu đựơc cách mà MATLAB giải vấn đề thông thờng xem MATLAB giải vấn đề số phức mềm dẻo nh Tuỳ thuộc vào kiến thức bạn, bạn tìm thấy phần sách hớng dẫn hứng thú hay buồn tẻ Khi bạn chạy chơng trình MATLAB, tạo nhiều cửa sổ hình bạn, cửa sổ lệnh (command) cửa sổ để bạn giao tiếp với MATLAB, cửa sổ xuất nh hình dới Các kí tự EDU>> dấu nhắc MATLAB student MATLAB Trong version khác MATLAB, dấu nhắc đơn giản ‘>>‘ Khi cưa sỉ lƯnh xt hiƯn, lµ cưa sỉ hoạt động, trỏ xuất bên phải dấu nhắc nh hình dới Con trỏ dấu nhắc MATLAB báo MATLAB đợi để thực lƯnh H×nh 1.1 Cưa sỉ lƯnh cđa Student MATLAB 1.1 Các phép toán đơn giản Giống nh máy tính đơn giản thông thờng, MATLAB thực phép toán đơn giản, nh ví dụ dới đây: Mary đến cửa hàng văn phòng phẩm mua cục tÈy, 25 xu mét côc, tËp vë, 52 xu tập, hai cuộn băng đài, 99 xu cuộn HÃy tính xem Mary mua vật, tổng số tiền bao nhiêu? Nếu dùng máy tính thông thờng, ta vào số: + + = 12 ( vËt) 4x25 + 6x52 + 2x99 = 610 (xu) H×nh 1.2 Cưa sỉ lƯnh cđa MATLAB version 5.2 Trong MATLAB chóng ta cã thĨ gi¶i qut vÊn đề theo nhiều cách Trớc tiên giống nh máy tÝnh ë trªn, chóng ta cã thĨ tÝnh: >> + + ans= 12 >> 4*25 + 6*52 + 2*99 ans= 610 Chó ý r»ng MATLAB kh«ng chó ý đến khoảng trống, cho tất phần, phép nhân có mức độ u tiên cao phép cộng Và ý khác MATLAB gọi kết ans (viết tắt answer) cho hai phép tính Nh đà nói trên, vấn đề giải cách chứa thông tin vµo biÕn cđa MATLAB: >> erasers = erasers= Thuviendientu.org Updatesofts.com Ebook Team >> pads = pads= >> tape = 2; >> iterms = erases + pads + tape iterms= 12 >> cost = erases*25 + pads*52 + tape*99 cost= 610 tạo biến MATLAB: erases, pads, tape để chứa số lợng loại vật Sau vào giá trị cho biến này, MATLAB hiển thị kết hình, trừ trờng hợp biến tape Dấu hai chấm đằng sau câu lệnh >> tape = 2; thông báo cho MATLAB nhận giá trị gán nhng không hiển thị hình Cuối khác với gọi kết ans, yêu cầu MATLAB gọi kết tổng số vật iterms, tổng số tiền cost Tại bớc MATLAB đa thông tin Vì có lu giữ biến nên yêu cầu MATLAB tính giá trị trung bình cho vật: >> everage_cost = cost/iterms everage_cost= 50.8333 Bởi everage cost có hai từ, mà MATLAB yêu cầu biến có từ, nên dùng dấu gạch dới để nối hai từ thành từ Ngoài phép tính trên, MATLAB có số phép tính khác nh bảng dới đây: Phép tính PhÐp céng, a + b PhÐp trõ, a - b PhÐp nh©n, a.b PhÐp chia, ab PhÐp luü thõa, ab Biểu tợng + * / \ ^ Ví dụ 5+3 7-4 18*24 56/8 = 8\ 56 5^2 Trong c¸c phép toán có mức độ u tiên khác nhau, tính từ trái sang phải dòng gồm nhiều lệnh phép toán luỹ thừa có mức độ u tiên cao nhất, phép nhân phép chia có mức độ u tiên cuối cïng lµ phÐp céng vµ phÐp trõ cịng cã møc độ u tiên 1.2 Không gian làm việc MATLAB Cũng nh bạn làm việc với cửa sổ Lệnh, MATLAB nhớ lệnh bạn gõ vào nh giá trị bạn gán cho nó đợc tạo lên Những lệnh biến đợc gọi lu giữ không gian làm việc MATLAB, đợc gọi lại bạn muốn Ví dụ, để kiểm tra giá trị biến tape, tất bạn phải làm yêu cầu MATLAB cho biết cách đánh vào tên biến dấu nhắc: >> tape Thuviendientu.org Updatesofts.com Ebook Team tape= NÕu bạn không nhớ tên biến, bạn yêu cầu MATLAB cho danh s¸ch c¸c biÕn b»ng c¸ch d¸nh lƯnh who tõ dÊu nh¾c lƯnh: >> who Your variables are: ans cost iterms average_cost erasers pads tape Chó ý r»ng MATLAB không đa giá trị tất biến, bạn muốn biết giá trị, bạn đánh vào tên biến dấu nhắc lệnh MATLAB Để gọi lại lệnh bạn đà dùng, MATLAB dùng phím mũi tên ( ) bàn phím bạn Ví dụ để gọi lại lệnh bạn gõ vào lúc gần nhất, bạn nhấn phím mũi tên , tiếp tục nhấn phím này, lại gọi tiếp lệnh trớc đó, Nếu bạn dùng phím mũi tên gọi lại lệnh từ lệnh lệnh gần Các phím mũi tên dùng để thay đổi vị trí trỏ dòng lệnh dấu nhắc MATLAB, nh− vËy chóng ta cã thĨ sưa dßng lƯnh, thêm nữa, dùng chuột với nhớ đệm để cắt, copy, dán, sửa văn dấu nhắc dòng lệnh 1.3 Biến Giống nh ngôn ngữ lập trình khác, MATLAB có quy định riêng tên biến Trớc tiên tên biến phải từ, không chứa dấu cách, tên biến phải có quy tuân thủ quy tắc sau: Quy định tên biến Tên biến có phân biƯt ch÷ hoa ch÷ th−êng VÝ dơ: Iterms, iterms, itErms, ITERMS biến khác Tên biến chứa nhiều 31 kí tự, kí tự sau kí tự thứ 31 bị lờ Ví dụ: howaboutthisveriablename Tên biến bắt đầu phải chữ cái, chữ số, số gạch dới Ví dụ: how_about_this_veriable_name, X51483 a_b_c_d_e Kí tự chấm câu không đợc phép dùng có ý nghĩa đặc biệt Cùng với quy định trên, MATLAB có biến đặc biệt bảng sau: Các biến đặc biệt ans pi = 3.1415 Eps flops inf NaN hc nan i (và) j nargin narout realmin realmax Giá trị Tên biến mặc định dùng để trả kết Số nhỏ nhất, nh dùng cộng với để đợcsố nhỏ lớn Số phép toán số thực Để số vô nh kết 1/0 Dùng để số không xác định nh kết 0/0 i=j= Số đối số đa vào hàm đợc sử dụng Số đối số hàm đa Số nhỏ đợc số thực Số lớn đợc số thực Thuviendientu.org Updatesofts.com Ebook Team Nh− b¹n cã thĨ t¹o mét biến MATLAB, bạn gán lại giá trị cho nhiều biến Ví dụ: >> erases = 4; >> pads = 6; >> tape = 2; >> iterms = eases + pads + tape iterms= 12 >> erases = erases= >> iterms iterms= 12 sử dụng lại ví dụ trên, tìm đợc số vật mà Mary đà mua sau ®ã chóng ta thay ®ỉi sè cơc tÈy lên 6, giá trị đè lên giá trị trớc Khi bạn làm nh vậy, giá trị iterms không thay đổi, MATLAB không tính lại iterms với giá trị erases Khi MATLAB thùc hiƯn mét phÐp tÝnh, nã lÊy gi¸ trị biến thời, nên bạn muốn tính giá trị iterms, cost, average_cost, bạn gọi lại lệnh tính giá trị Đối với biến đặc biệt trên, có sẵn giá trị, nh bạn khởi động MATLAB; bạn thay đổi giá trị giá trị đặc biệt ban đầu bị bạn xoá biến khởi động lại MATLAB Do bạn không nên thay đổi giá trị biến đặc biệt, trừ thực cần thiết Các biến không gian làm việc MATLAB bị xoá không điều kiện cách dùng lệnh clear VÝ dơ: >> clear erases chØ xo¸ mét biÕn erases >> clear cost iterms xoá hai biến cost iterms >> clear cl* dấu * để xoá tất biến bắt đầu hai kí tự cl >> clear xoá tất biến không gian làm việc! Bạn không đợc hỏi để xác nhận câu lệnh tất biến đà bị xoá khôi phục lại Có thể nãi r»ng dïng lƯnh clear rÊt nguy hiĨm, v× vËy dùng lệnh bạn nên dùng vị trí 1.4 Câu giải thích (comment) chấm câu Tất văn đằng sau kí hiệu phần trăm (%) câu giải thích Ví dụ: >> erases = erases= % Sè côc tÈy Thuviendientu.org Updatesofts.com Ebook Team Biến erases đợc gán giá trị 4, tất kí hiệu phần trăm văn đằng sau bị lờ Đặc điểm giúp cho dễ theo dõi công việc làm Nhiều lệnh đặt hàng, chúng cách dấu phẩy hc dÊu chÊm phÈy, nh−: >> erases = 4, pads = 6; tape = erases= tape= dÊu phẩy để yêu cầu MATLAB hiển thị kết hình; dấu chấm phẩy không hiển thị kết hình >> average_cost = cost/ iterms average_cost= 50.83333 Nh− vÝ dơ trªn, ta cã thĨ dùng dấu ba chấm ( ) để câu lệnh đợc tiếp tục hàng dới, phép tính thực đợc dấu ba chấm ngăn cách toán tử biến, nghĩa tên biến không bị ngăn cách hai hàng: >> average_cost = cost/ it erms ??? age_cost = cost/iterms Missing operator, coma, or semicolon gièng nh vậy, trạng thái lời giải thích tiÕp tôc: >> % Comments cannot be continued >> either ??? Undefined function or variable either B¹n cã thĨ dừng chơng trình cách nhấn đồng thời Ctrl C 1.5 Số phức Một đặc điểm mạnh mÏ nhÊt cđa MATLAB lµ lµm viƯc víi sè phøc Số phức MATLAB đợc định nghĩa theo nhiều cách, vÝ dô nh− sau: >> c1 = - 2i % Chèn thêm kí tự i vào phần ảo c1= 1.0000 - 2.0000i >> c1 = - 2j % j tơng tự nh i c1= 1.0000 - 2.0000i >> c2 = 3*(2-sqrt(-1)*3) c2= Thuviendientu.org Updatesofts.com Ebook Team 6.0000 - 9.0000i >> c3 = sqrt(-2) c3= + 1.4142i >> c4 = + sin(.5)*i c4= 6.0000 + 0.4794i >> c5 = + sin(.5)*j c5= 6.0000 + 0.4794i Trong hai vÝ dô cuèi, MATLAB mặc định giá trị i = j = dùng cho phần ảo Nhân với i j đợc yêu cầu trờng hợp này, sin(.5)i sin(.5)j ý nghĩa MATLAB Cuối với kí tù i vµ j, nh− ë hai vÝ dơ đầu làm việc với số cố định, không làm việc đợc với biểu thức Một số ngôn ngữ yêu cầu điều khiển đặc biệt cho số phức xuất hiện, MATLAB không cầu nh Tất phép tính toán học thao tác đợc nh số thực thông thờng: >> c6 = (c1 + c2)/c3 c6= -7.7782 - 4.9497i >> check_it_out = i^2 check_it_out= -1.0000 + 0.0000i % Tõ liệu % Bình phơng i phải -1 ví dụ lại phần thực, phần ảo không Chúng ta dùng hàm real imag để kiểm tra phần thực ảo Chúng ta biểu diễn số phức dạng độ lớn góc (dạng cực): M M.ej = a+bi số phức đợc biểu diễn độ lớn M góc , quan hệ đại lợng phần thực, phần ảo số phức biểu diễn dới dạng đại số là: M= = tan-1(b/ a) a = Mcos b = Msin Trong MATLAB, ®Ĩ chun tõ d¹ng cùc sang d¹ng ®¹i sè, dïng hàm real, imag, angle: >> c1 c1= 1.0000 - 2.0000i >> M_c1 = abs(c1) M_c1= 2.2361 >> angle_c1 = angle(c1) angle_c1= % Gäi l¹i c1 % TÝnh argument cña sè phøc % TÝnh gãc cña sè phøc theo radian Thuviendientu.org Updatesofts.com Ebook Team -1.1071 >> deg_c1 = angle_c1*180/ pi -63.4349 >> real_c1 = real(c1) real_c1= >> imag_c1 = imag(c1) imag_c1= -2 % ChuyÓn tõ radian sang độ % Tính phần thực % Tính phần ảo -oOo Chơng2 CáC ĐặC tính Kĩ THUậT Giống nh hầu hết máy tính kỹ thuật, MATLAB đa nhiều hàm toán học, kĩ thuật thông dụng, MATLAB cung cấp hàng trăm hàm đặc biệt thuật toán, hữu ích để giải vấn đề khoa học Tất hàm đợc liệt kê online help, đề cập đến hàm thông dụng thờng 2.1 Các hàm toán học thông thờng Các hàm toán học MATLAB đợc liệt kê bảng dới đây, chúng có chung cách gọi hàm nh ví dụ dới đây: >> x = sqrt(2)/2 x= 0.7071 >> y = sin(x) y= 0.7854 >> y_deg = y*180/pi y_deg= 45.0000 Nh÷ng lƯnh để tìm góc (tính độ) biết giá trị hàm sin / Tất hàm liên quan đến góc MATLAB làm việc với radian Bảng hàm: Các hàm thông thờng Thuviendientu.org Ebook Team 200 Updatesofts.com Trang đồ hoạ plot loglog semilogx semilogy polar mesh contour meshdom bar errorbar title xlabel ylabel grid text gtext ginput §iỊu khiĨn cưa sỉ đồ hoạ axis zoom hold shg clg subplot Đồ thị tuyến tính X-Y Đồ thị loglog X-Y Đồ thị semi-log X-Y Đồ thị semi-log X-Y Đồ thị toạ độ cực Mặt lới không gian chiều Đồ thị đờng bao Miền đồ thị lới Biểu đồ hình chữ nhật Thêm vào errorbars Tiêu đề đồ thị NhÃn trục x NhÃn trục y Kẻ đờng lới đồ thị Văn vị trí Văn vị trí trỏ Nhập đồ hoạ Cân chỉnh trục toạ độ hình dạng Co vào dÃn đồ thị Giữ đồ thị hình Hiển thị đồ thị nên hình Xoá đồ thị hình Tách cửa sổ đồ hoạ đồ hoạ TRONG KHÔNG GIAN chiều thờng Lệnh đồ hoạ thông thờng plot3 mesh surf fill3 Cân chỉnh màu colormap caxis shading hidden brighten ChiÕu s¸ng surfl lighting material specular VÏ đờng thẳng điểm không gian chiều Bề mặt không gian chiều Tô màu bề mặt không gian chiều Điền đầy đa giác chiều Tra cứa bảng màu Sự phân chia bảng màu giả Chế độ làm bóng Chế độ dấu nét Bảng tra cứu màu tối sáng Làm bóng bề mặt không gian chiều chiếu sáng Chế độ chiếu sáng Chế độ phản chiếu tự nhiên Sự phản chiếu Thuviendientu.org Ebook Team 201 Updatesofts.com diffuse surfnorm Bảng màu hsv hot gray pink white bone §iỊu chØnh trơc axis zoom grid box hold axes Sự phản chiếu khuếch tán Bề mặt thông thờng Bảng giá trị màu bÃo hoà Bảng màu đen- trắng- đỏ - vàng Bảng màu chia theo độ xám tuyến tính Màu hồng Màu trắng Màu xám pha lẫn xanh da trời Điều chỉnh hình dáng độ phân chia Co vào dÃn đồ thị Đờng kẻ lới Hộp chứa trục toạ độ Lu đồ thị Xây dựng trục vị trí Chú thích đồ hoạ title xlabel ylabel zlabel colorbar text gtext Tiêu đề đồ hoạ NhÃn trục x NhÃn trục y NhÃn trục z Hiển thị màu Chú thích văn Di văn đến vị trí chuột chuỗi kí tự Khái quát chung char double cellstr blanks deblank eval Tạo chuỗi kí tự Chuyển chuỗi sang mà số kí tự Tạo mảng chuỗi tế bào từ mảng kí tự Xâu rỗng Di chuyển xâu rỗng Thực xâu với biểu thức MATLAB chuỗi Kiểm tra chuỗi schar iscellstr isletter isspace True True True True Các phép toán với chuỗi strcat strvcat strcmp chuỗi kí tự ( xâu ) mảng chuỗi tế bào chữ hoa bảng chữ kí tự rỗng Kết nối xâu Kết nối dọc xâu So sánh chuỗi Thuviendientu.org Ebook Team 202 Updatesofts.com strncmp findstr strjust strrep strtok upper lower Chuỗi văn abs num2str int2str settr sprintf hex2num So sánh N kí tự chuỗi Tìm xâu bên xâu khác Mảng kí tự đồng Thay chuỗi chuỗi khác Tìm thẻ chuỗi Chuyển chuỗi sang chữ hoa Chuyển chuỗi sang kí tự thông thờng Chuyển đổi từ chuỗi sang giá trị ASCII Đổi từ số thành chuỗi Đổi số nguyên sang chuỗi Thiết lập cờ để ma trận chuỗi Đổi số sang chuỗi Chuyển đổi chuỗi từ hệ 16 sang dạng số file input/output Mở đóng file fopen fclose File nhị phân i/o fread fwrite File i/o định dạng fscanf fprintf fgetl fgets input Vị trí file ferror feof fseek ftell frewind file Các hàm xuất nhËp file load save dlmread dlmwrite XuÊt nhËp file ¶o imread Mở file Đóng file Đọc liệu nhị phân từ file Viết liệu nhị phân lên file Đọc liệu đà định dạng từ file Ghi liệu đà định dạng lên file Đọc dòng lênh từ file, thay dòng Đọc dòng lênh từ file, giữ nguyên dòng Hiển thị để ngời dùng nhập vào Kiểm trạng thái file Kiểm tra xem đà kết thóc file hay cha ThiÕt lËp bé chØ thÞ vÞ chÝ file NhËn tõ bé chØ thÞ vÞ trÝ file Rewind file Nạp không gian làm việc từ file-MAT Lu giữ không gian làm việc vào file - MAT Đọc file phân định ASCCI Ghi file phân định ASCCI Đọc phần ảo từ file đồ hoạ Thuviendientu.org Ebook Team 203 Updatesofts.com imwrite imfinfo XuÊt nhËp file audio auwrite auread wavwrite wavread Cưa sỉ lƯnh I / O clc home disp input pause Ghi phần ảo lên file đồ hoạ Trả lại thông tin file đồ hoạ Ghi file âm NEXT/ SUN ( ‘ au ‘ ) Ghi file ©m NEXT/ SUN ( ‘ au ‘ ) Ghi file Microsoft WAVE ( ‘ wav ‘ ) §äc file Microsoft WAVE ( ‘ wav ‘ ) Xo¸ cửa sổ lệnh Đa trỏ đầu văn Hiển thị mảng Thông báo cho ngời sử dụng nhập vào Đợi từ ngời sử dụng trả lời thời gian ngày Giờ ngày now date clock Các hàm datenum datestr datevec Hàm ngày tháng calendar weekday eomday datetick Hàm đếm cputime tic, toc etime pause Giờ ngày hiển thị dạng số Giờ ngày hiển thị dạng chuỗi Giờ ngày hiển thị dạng vector Số ngày nối tiếp Chuỗi thay ngày Thành phần ngày tháng Lịch Ngày tuần Kết thúc tháng Dấu tick định dạng cho ngày tháng Thời gian cpu tính theo đơn vị giây Bộ đếm ngừng hoạt động Thời gian thiết lập Dừng giây kiểu liệu cấu trúc Kiểu liệu double sparse char Chuyển đổi thành double Ttạo ma trận không liên tục Xây dựng m¶ng kÝ tù Thuviendientu.org Ebook Team 204 Updatesofts.com cell struct uint8 inline Hàm mảng nhiều chiều cat ndims ndgrid permute ipermute shiftdim Hàm Hàm mảng tế bào cell celldisp cellplot num2cell deal cell2struct struct2cell iscell Hµm cÊu tróc struct fieldsnames getfield setields isfield istruct Tạo mảng tế bào Xây dựng chuyển đổi thành mảng cấu trúc Chuyển đổi thành số nguyên không dấu bit Xây dựng đối tợng INLINE Mảng kết nối Số chiều Tạo thành mảng cho hàm N-D phép nôi suy Phép nội suy số chiều mảng Nghịch đảo phép nội suy số chiều mảng Chuyển dịch số chiều Tạo mảng tế bào Hiển thị nội dung mảng tế bào Hiển thị thuật hoạ mảng tế bào Chuyển đổi mảng số thành mảng tế bào Phân phát đầu vào đến đầu Chuyển đổi mảng tế bào thành mảng cấu trúc Chuyển đổi mảng cấu trúc thành mảng tế bào True mảng tế bào Tạo chuyển đổi thành mảng cấu trúc Nhận tên trờng cấu trúc NhËn l¹i néi dung cđa tr−êng cÊu tróc ThiÕt lËp n«i dung tr−êng cÊu tróc True nÕu tr−êng ë mảng cấu trúc True mảng tế bào chuyển đổi liệu động Hàm tớ DDE ddeadv ddeexec ddeinit ddereq ddeterm ddeunadv Thiết lập giám sát liên kết Đa xâu để thực Khởi tạo giao tiếp DDE Yêu cầu liệu từ ứng dụng KÕt thóc sù giao tiÕp DDE Cëi bá bé gi¸m sát liên kết Ví dụ thể MATLAB/matrận intro inverter matmanip Giới thiệu phép toán ma rận MATLAB Giải thích ma trận đảo Giới thiệu phÐp nh©n ma trËn Thuviendientu.org Ebook Team 205 Updatesofts.com Cưa sỉ lƯnh clc home format disp fprintf echo General hlep demo who what size lengh clear computer ^C quit exit Xoá cửa sổ lệnh Đa trỏ đầu dòng Thiết lập dạng hiển thị kết Hiển thị ma trận văn In số đợc định dạng Cho phép gọi lại câu lệnh Phơng tiện trợ giúp Chạy chơng trình mẫu Danh sách biến nhớ Danh sách M-file đĩa Số chiều hàng cột Độ dài vector Xoá không gian làm việc Loại máy tính Huỷ biến địa phơng Lết thúc chơng trình Tơng tự nh quit file(Lập trình )Programming file-M input NhËp sè tõ bµn phÝm keyboard Gäi bµn phím nh M-file error Hiển thị thông báo lỗi function Định nghĩa hàm eval Văn đợc giải thích biến feval Hàm định giá đợc gọi chuỗi echo Cho phép gọi lại câu lệnh exist Kiểm tra xem có biến tồn hay không casesen Thiết lập độ nhạy case global Định nghĩa biến toàn cục startup Khởi tạo M-file getenv Nhận chuỗi môi tr−êng menu Lùa chän tõ b¶ng chän etime Elapsed time (không kể đến thời gian) Các file đĩa chdir delete diary dir load save type what fprintf pack §ỉi th mục Xoá file Ghi mục Th mục file đĩa Nạp biến từ file Lu biến nên file Liệt kê hàm file Hiển thị M-file đĩa Viết vào file Nén nhí qua save Thuviendientu.org Ebook Team 206 Updatesofts.com §a thøc poly roots roots1 polyval polyvalm conv deconv residue polyfit §a thức đặc trng Nghiệm đa thức- phơng pháp ma trận bầu bạn Nghiệm đa thức- phơng pháp Laguerre Ước lợng đa thức Ước lợng đa thức ma trận Phép nhân PhÐp chia Khai triĨn ®a thøc Sù diỊu chØnh ®é chênh lệch đa thức Các hàm ma trận đại sè tuyÕn tÝnh Ph©n tÝch ma trËn norm normest rank det trace null orth rref subspace PhÐp to¸n tuyÕn tÝnh \ / inv cond condest lu luinc Chỉ tiêu ma trận vector Định giá ma trận hai tiêu Hạng ma trận Định thức Tổng phần tử đờng chéo Không gian trống Tính trực giao Rút gọn hàng theo hình bậc thang Góc hai số âm Lời giải phép toán tuyến tính; sử dụng help slash Ma trận đảo Số điều kiện ma trận đảo Định giá số điều kiện tiêu Sự tìm thừa số LU Tim thừa số LU không hoàn thành Giá trị svd svds poly polyeig condeig qz schur Sự phân tích giá trị Một số giá trị Đa thức đặc tr−ng VÊn ®Ị cđa ®a thøc Sè ®iỊu kiƯn víi hy vọng Sự tìm thừa số cho hàm suy rộng Sự phân tích chuỗi Hàm ma trận expm logm sqrtm funm Ma trËn theo hµm mị Ma trËn logarithm Ma ttrận bậc hai Định giá chung hàm ma trận Thuviendientu.org Ebook Team 207 Updatesofts.com Tìm thừa số tiêu chuẩn qrdelete qrinsert rsf2csf balance Xoá bỏ th mục từ tìm th mụcQR Gài vào th mục tìm thừa sè QR MÉu ®−êng chÐo thùc tíi mÉu ®−êng chÐo phức tạp Cân để tăng độ xác Biến đổi fourier phân tích liệu Phép toán b¶n max mean median std sum prod hist trapz cumsum cumprod cumtrapz Thành phần lớn Thành phần nhỏ Giá trị trung bình Giá trị trung tuyến Độ lệch góc chuấn Tổng số hạng Kết phần tử Biểu đồ Hình thang số nguyên Tổng tích lũycủa phần tử Kêt tích luỹcủa phần tử Số nguyên tích luỹ bậc thang Sai phân có hạn diff gradient del2 Sai phân đạo hàm xấp xỉ Gradient xấp xỉ Laplacien rời rạc Filtering and convolution ( nÕp, cuén ) filter Bé läc sè mét chiÒu filter2 Bé läc sè chiÒu conv PhÐp nhân đa thức nén lại conv2 Nén chiều convn Nén n chiều deconv Giải nén chia ®a thøc BiÕn ®æi fourier fft fft2 fftn ifft ifft2 ifftn Biến đổi fourier rời rạc Biến đổi fourier rời rạc chiều Biến đổi fourier rời rạc n chiều Biến đổi fourier rời rạc ngợc Biến đổi fourier rời rạc hai chiều Biến đổi fourier rời rạc n chiều §a thøc vµ phÐp néi suy Thuviendientu.org Ebook Team 208 Updatesofts.com PhÐp néi suy interpl interplq interpft interp2 interp3 interpn griddata PhÐp néi suy mét chiỊu ( tra b¶ng ) PhÐp néi suy tuyÕn tÝnh mét chiÒu nhanh PhÐp néi suy chiều sử dụng phơng pháp FFT Phép nội suy hai chiỊu ( tra b¶ng ) PhÐp néi suy ba chiỊu ( tra b¶ng ) PhÐp néi suy n chiều ( tra bảng ) Điều chỉnh bề mặt lới liệu hàm giải pháp ODE Optimization and Root Finding fmin fmins fzero Tèi thiĨu hµm mét biÕn Tối thiểu hàm vài biến Tìm hàm biến không Numaric Integration quad quad8 dblquad Tích phân định giá số lợng, phơng pháp trật tự thấp Tích phân định giá số lợng, phơng pháp trật tự cao Tích phân hai lần định giá số lợng Đối tợng hàm inline Đối tợng inline argnames formula char Xây dựng đối tợng INLINE Tên đối số Thể thức hàm Chuyên đổi đối tợng INLINE thành mảng kí tự ma trận rời rạc Các ma trận không liên tục speye Ma trận đồng thức không liên tục sprand Ma trận ngẫu nhiên phân chia cách không liên tục đồng sprandn Ma trận ngẫu nhiên phân chia cách không liên tục thông thờng sprandsy Ma trận đối xứng ngẫu nhiên không liên tục spdiags Ma trận không liên tục đợc tậo thành từ đờng chéo Full to Sparse Conversion sparse full find spconvert T¹o ma trận không liên tục Chuyển đổi ma trận không liên tục thành ma trận đầy đủ Tìm số phần tử khác không Nhập vào từ định dạng ma trận không liên tục bên Thuviendientu.org Updatesofts.com Ebook Team 209 mơc lơc Matlab toµn tËp cài đặt 1 MATLAB for WIN a) æ CD ROM‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘.1 b ) Bé nhí‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘1 ch−¬ng 1: GIíI THIƯU chung gi¶n 1.1 Các phép toán đơn giản 1.2 Không gian làm việc MATLAB 1.3 BiÕn c©u 1.4 Câu giải thích (comment) chấm câu 1.5 Số phức chơng 2: CáC ĐặC tính Kĩ THUậT th−êng ng .9 2.1 Các hàm toán học thông thờng chơng 3: NHữNG ĐặC ĐIểM CủA CửA Sổ LệNH 15 MATLAB 15 3.1 Quản lí không gian làm việc MATLAB 3.2 Ghi phục hồi liÖu 16 3.3 Khuôn dạng hiển thị số 17 ch−¬ng 4: Script M_files 18 ch−¬ng 5: QU¶N Lý TƯp 21 5.1 MATLAB khëi ®éng 24 chơng 6: phép toán với MảNg 25 đơn 25 6.1 Mảng đơn 6.2 Địa mảng 25 6.3 CÊu tróc cđa m¶ng 26 6.4 Vector hµng vµ vector cét .28 33 6.5 Mảng có phần tử 6.6 Thao tác mảng 34 6.7 Tìm kiếm mảng 38 6.8 So sánh mảng 39 6.9 KÝch cì cđa m¶ng 42 6.10 M¶ng nhiỊu chiỊu 43 chơng phép tính với mảng 48 7.1 Tạo phơng trình tuyến tính .48 7.2 Các hàm ma trËn 50 7.3 Ma trận đặc biÖt 51 chơng phép tính LOGIC Vµ QUAN HƯ .55 hÖ 55 8.1 To¸n tư quan hƯ Logic 57 8.2 To¸n tư Logic 8.3 Các hàm logic hàm quan hệ 57 ch−¬ng V¡N B¶n 58 tù 59 9.1 X©u kÝ tù x©u .61 9.2 Chuyển đổi xâu xâu 62 9.3 Các hàm xâu 9.4 Ma trận tế bào xâu 63 ch−¬ng 10 thêi gian 65 10.1 Ngày 65 10.2 Sù chuyÓn đổi kiểu 65 ngµy .67 10.3 C¸c hàm ngày Thuviendientu.org Updatesofts.com Ebook Team 210 10.4 Các hµm vỊ thêi gian 68 10.5 Vẽ đồ thị víi hµm ngµy vµ thêi gian .70 chơng 11 VòNG LặP ĐIềU KHIÓN .74 11.1 Vòng lặp for 74 11.2 Vòng lặp while .76 if-else11.3 CÊu tróc if-else-end .77 switch11.4 CÊu tróc switch-case 78 ch−¬ng 12 HµM M_FILE 82 12.1 Các quy luật thuéc tÝnh 83 chơng 13 PHÂN TíCH Dữ LIệU 88 13.1 Các hàm phân tích liệu 95 ch−¬ng 14 §A THøC .96 14.1 Các nghiệm đa thøc .96 14.2 Nhân đa thức .96 thøc .97 14.3 PhÐp céng ®a thøc thøc 98 14.4 Chia hai đa thức 14.5 Đạo hàm 98 14.6 Tính giá trị đa thøc 98 tØ 99 14.7 Phân thức hữu tỉ chơng 15 phép nội suy mịn hoá đờng cong 101 15.1 Mịn hoá đờng cong 101 15.2 Nèi ®iĨm mét chiÒu 104 15.3 XÊp xØ ho¸ hai chiỊu 109 chơng 16 phân tích số liệu 111 16.1 Vẽ đồ thị .112 hµm 114 16.2 Cực trị hàm 16.3 Tìm giá trị kh«ng 116 16.4 PhÐp lÊy tÝch ph©n .116 16.5 PhÐp lÊy vi ph©n 117 16.6 Phơng trình vi phân 119 phân chơng 17 đồ hoạ hệ toạ độ phẳng 121 17.1 Sư dơng lƯnh Plot .121 mµu 123 17.2 Kiểu đờng, dấu màu thÞ 124 17.3 Kiểu đồ thị lời 17.4 Đồ thị lới, hộp chứa trục, nhÃn, lời giải 124 độ .127 17.5 Kiến tạo hệ trục toạ độ hình 130 17.6 In hình 17.7 thị 131 17.7 Thao tác với đồ thị 17.8 Một số đặc điểm khác đồ thị hệ toạ độ phẳng 133 chơng 18 đồ hoạtrong không gian chiÒu 137 18.1 Đồ thị đờng thẳng .137 18.2 Đồ thị bề mặt lới 138 18.3 18.3 Thao tác với đồ thị 141 18.4 Các đặc điểm khác đồ thị không gian chiều 143 chiều 18.5 Bảng màu 144 18.6 Sử dụng bảng màu 145 tin .146 18.7 Sử dụng màu để thêm thông tin màu .147 18.8 Hiển thị bảng màu màu 148 18.9 ThiÕt lËp thay đổi bảng màu Thuviendientu.org Updatesofts.com Ebook Team 211 chơng 19 Mảng tế bào cấu trúc 150 bµo .150 19.1 Mảng tế bào 19.2 Xây dựng hiển thị mảng tế bào .150 19.3 Tổ hợp khôi phục mảng tế bào .151 bµo .152 19.4 Truy nhập vào mảng tế bµo tù .153 19.5 Mảng tế bào chuỗi kí tự 19.6 19.6 CÊu tróc 153 tróc 153 19.7 Xây dựng mảng cấu trúc 19.8 Truy nhập vào c¸c tr−êng cÊu tróc .154 19.9 Sự nghịch đảo hàm kiểm tra .156 chơng 20 Biểu tợng hộp công cụ toán học 156 c¸c tr−ng 156 20.1 Biểu thức đối tợng đặc trng trng 157 20.2 Tạo sử dụng đối tợng đặc trng 20.3 Sự biểu diễn biểu thức đặc trng MATLAB 158 tr−ng 160 20.4 BiÕn ®Ỉc tr−ng tr−ng 161 20.5 Phép toán biểu thức đặc trng 20.6 sè 161 20.6 Tách tử số mẫu số 20.7 Phép toán đại số tiêu chuẩn 162 cao 163 20.8 Các phép toán nâng cao đảo .164 20.9 Hàm nghịch đảo 20.10 Sự thay biến số 165 20.11 PhÐp lÊy vi ph©n .166 ph©n .166 20.12 Phép tích phân 20.13 Vẽ đồ thị biểu thức đặc trng 169 20.14 Định dạng đơn giản hoá biÓu thøc 170 kh¸c 171 20.15 Tóm tắt số đặc điểm khác làm .172 20.16 Tự làm 20.17 Giải phơng tr×nh .172 20.18 Giải phơng trình đại số đơn gi¶n 172 20.19 Một vài phép toán đại số 173 sè ph©n 173 20.20 Phép toán vi phân phân 174 20.21 Mét vài phép toán tích phân tính 174 20.22 Ma trËn vµ đại số tuyến tính 20.23 Phép toán đại số tuyến tÝnh .175 xung 176 20.24 Hµm b−íc vµ xung 20.25 BiÕn ®ỉi Laplace .176 20.26 BiÕn ®ỉi Fourier 176 chơng 21 hộp công cụ hệ thống điều khiÓn .177 21.1 Sự biểu diễn đồ thị .177 21.2 Đối tợng LTI 177 21.3 Khôi phục liệu 179 LTI .180 21.4 Sự nghịch đảo đối tợng LTI LTI 180 21.5 Thuật toán đối tợng LTI thống 181 21.6 Ph©n tÝch hƯ thèng khiĨn 183 21.7 Danh sách hàm hộp công cụ hệ thống điều khiển Sự hình thành kiểu LTI 183 Phân tách liệu 183 Đặc tính loại 184 Sù nghÞch ®¶o .184 Thuviendientu.org Updatesofts.com Ebook Team 212 C¸c phÐp to¸n 184 §éng häc 184 Đáp ứng thời gian 184 Đáp ứng tần số 185 Liªn kÕt hƯ thèng .185 Dông cô thiÕt kÕ cỉ ®iĨn 185 C«ng thiÕt kÕ LQG 185 Giải phép toán ma trận 186 Sù biĨu diƠn 186 ch−¬ng 22 Hép dơng xư lÝ tÝn hiƯu 186 22.1 Ph©n tÝch tÝn hiÖu .186 chơng 23 trợ giúp .189 gióp 189 23.1 Cưa sỉ lƯnh trỵ gióp 23.1.1 LÖnh help 189 23.1.2 LÖnh lookfor 190 23.1.3 LƯnh whatsnew vµ info 191 23.2 Cưa sỉ trỵ gióp 191 c¸c M- File cña Student Edition 192 HELP Topic 192 Mục đích chung câu lệnh .192 Th«ng tin chung 192 Quản lí không gian làm viÖc 192 Quản lí đờng dẫn .192 Quản lí hàm lệnh 192 C©u lƯnh ®iỊu khiĨn 192 Hoạt động lệnh hệ thèng 193 M-file rèi 193 Các toán tử kí tự đặc biệt 193 C¸c to¸n tư 194 To¸n tư quan hÖ 194 To¸n tư logic .194 C¸c to¸n tư Bitwise .194 ThiÕt lËp c¸c kÝ tù 194 C¸c kí tự đặc biệt .195 Câu lệnh điều khiÓn 195 Thi hành định giá 195 Script, hàm, biến 196 Thao tác với đối số .196 Hiển thị thông b¸o .196 Đầu vào tơng hỗ 196 Ma trận Thao tác với ma trËn 196 Ma trận 196 Th«ng tin mảng sở 197 Thao t¸c víi ma trËn 197 Hằng biến đặc biÖt 197 Các biến đặc biệt 197 Các loại ma trận đặc biệt 198 C¸c hàm toán học thông thờng 198 Các hàm lợng giác 198 Thuviendientu.org Updatesofts.com Ebook Team 213 Các hàm to¸n häc .199 Các hàm đặc biệt 199 Hµm lÝ thuyÕt sè häc 199 Đồ hoạ 199 Trang ®å ho¹ .200 §iỊu khiĨn cưa sỉ ®å ho¹ 200 đồ hoạ TRONG KHÔNG GIAN chiÒu 200 Lệnh đồ hoạ thông thờng 200 C©n chØnh mµu 200 ChiÕu s¸ng 200 Bảng màu 201 §iỊu chØnh trôc 201 Chú thích đồ hoạ 201 chuỗi kí tự .201 Kh¸i qu¸t chung 201 KiÓm tra chuỗi .201 C¸c phÐp to¸n víi chuỗi 201 Chuỗi văn 202 file input/output .202 Mở đóng file 202 File nhị phân i/o 202 File i/o định dạng .202 VÞ trÝ file .202 Các hàm xuÊt nhËp file .202 XuÊt nhËp file ¶o 202 XuÊt nhËp file audio 203 Cưa sỉ lƯnh I / O 203 thêi gian vµ ngµy 203 Giê vµ ngày 203 Các hàm 203 Hàm ngày tháng 203 Hàm đếm 203 kiĨu d÷ liƯu vµ cÊu tróc 203 KiĨu d÷ liƯu 203 Hàm mảng nhiều chiều 204 Hàm mảng tế bào .204 Hµm cÊu tróc .204 chuyển đổi liệu ®éng 204 Hµm tí DDE 204 VÝ dơ vµ sù thĨ hiƯn 204 MATLAB/matrËn 204 Cưa sỉ lƯnh 205 General .205 (Lập trình )Programming file-M .205 Các file đĩa 205 §a thøc 206 Các hàm ma trận đại số tuyến tính 206 Ph©n tÝch ma trËn 206 PhÐp to¸n tuyÕn tÝnh 206 Thuviendientu.org Updatesofts.com Ebook Team 214 Gi¸ trÞ nhÊt 206 Hµm ma trËn .206 Tìm thừa số tiêu chuẩn 207 Biến đổi fourier phân tích liệu .207 PhÐp toán 207 Sai ph©n cã h¹n 207 Filtering and convolution ( nÕp, cuén ) 207 BiÕn ®ỉi fourier 207 §a thøc vµ phÐp néi suy .207 PhÐp néi suy .208 hàm giải pháp ODE 208 Optimization and Root Finding 208 Numaric Integration 208 Đối tợng hàm inline 208 ma trËn rêi r¹c 208 C¸c ma trận không liên tục 208 Full to Sparse Conversion 208 môc lôc 209 ... test what which test Ebook Team 22 Trả đờng dẫn th mục cho chơng trình thực MATLAB Hiển thị sửa đờng dẫn MATLAB (MATLABpath) Hàm M_file, nơi mà mmatlabpath Chia đờng dẫn cho matlabpath Giống nh... browser MATLAB 5.2 Cửa sổ path browser MATLAB 5.0 không khác so với MATLAB 5.2, chủ yếu nút thay đổi đờng dẫn MATLAB 5.2 đặt đỉnh MATLAB 5.0 đợc đặt bên phải Để ghi lại thay đổi đờng dẫn MATLAB. .. Thuviendientu.org Updatesofts.com Ebook Team 24 H×nh 5.2 path browser MATLAB to Student khëi 5.1 MATLAB khởi động Khi khởi động MATLAB, tạo hai script M_file matlabrc.m startup.m, atlabrc.m MATLAB, nhìn chung