Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 105 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
105
Dung lượng
1,03 MB
Nội dung
Toán ứng dụng i ĐẠI HỌC THÁI NGUYÊN CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM TRƯỜNG ĐẠI HỌC KTCN Độc lập - Tự do - Hạnh phúc CHƯƠNG TRÌNH GIÁO DỤC ĐẠI HỌC Ngành đào tạo: Nhóm ngành kỹ thuật Chuyên ngành: Các chuyên ngành ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN 1. Tên học phần: Toán 4 (Toán ứng dụng) Mã số: 70003 2. Số tín chỉ: 03 3. Trình độ: Sinh viên năm thứ hai. 4. Phân bổ thời gian: 36 tiết lý thuyết + 18 tiết thảo luận. 5. Các học phần tiên quyết: Toán 1, Toán 2, Toán 3. 6. Học phần thay thế hoặc tương đương: Không 7. Mục tiêu của học phần − Cung cấp các phương pháp toán học, phát triển tư duy sáng tạo và rèn luyện kỹ năng tính toán cho sinh viên. − Sử dụng M ATLAB để giải quyết các bài toán thường gặp trong kỹ thuật: tìm nghiệm gần đúng của phương trình đại số và phương trình siêu việt, giải hệ phương trình đại số tuyến tính, xấp xỉ hàm bởi đa thức nội suy, tính đạo hàm số và tích phân số, giải gần đúng phương trình và hệ phương trình vi phân. 8. Mô tả vắn tắt nội dung học phần: − Đại cương về Matlap. − Số xấp xỉ và phương pháp đánh giá sai số. − Tính gần đúng nghiệm thực của phương trình đại số và siêu việt. − Giải hệ thống phương trình đại số tuyến tính. − Xây dựng đa thức nội suy và xây dựng công thức thực nghiệm bằng phương pháp bình phương tối thiểu. − Tính gần đúng đạo hàm và tích phân bằng phương pháp số. − Giải gần đúng phương trình vi phân cấp 1 bằng phương pháp số. − Giải gần đúng hệ phương trình vi phân cấp 1 bằng phương pháp số. 9. Nhiệm vụ của sinh viên − Tham dự trên 80 % tổng số thời lượng của học phần. − Tham gia thảo luận và hoàn thành các yêu cầu được giao. 10. Tài liệu học tập * Sách, giáo trình chính: [1] Toán ứng dụng (Toán 4), bộ môn Toán trường ĐH Kỹ thuật Công nghiệp, 2009. * Sách tham khảo: [2] Dương Thuỷ Vỹ, Giáo trình phương pháp tính, NXB Khoa học và kỹ thuật, 2006. Toán ứng dụng ii [3] Glyn James, Advanced Modern Engineering Mathematics, Pearson [4] Laurene V. Applied Numerical Analyis Using M ATLAB , Fausett Univesity of South Carolina Aiken, 1999. [5] http://www.mathworks.com/access/helpdesk/help/helpdesk.shtml. 11. Tiêu chuẩn đánh giá sinh viên và thang điểm * Tiêu chuẩn đánh giá − Thảo luận, bài tập, chuyên cần. − Kiểm tra giữa học phần. − Thi kết thúc học phần. * Thang điểm: − Thang điểm 10 và làm tròn đến một chữ số thập phân. − Điểm học phần là điểm trung bình chung của các điểm thành phần sau: o Điểm thảo luận, bài tập, chuyên cần hệ số 0.2 o Điểm kiểm tra giữa học phần hệ số 0.3. o Điểm thi kết thúc học phần hệ số 0.5. 12. Nội dung chi tiết học phần: Người biên soạn: GVC. Ths Ôn Ngũ Minh, Ths Phạm Thị Thu Hằng. Chương 1. ĐẠI CƯƠNG VỀ M ATLAB Số tiết: 10 lý thuyết + 05 bài tập, thảo luận 1.1. Giới thiệu 1.2. Ma trận và mảng 1.3. Lập trình 1.4. Một số hàm cơ bản Chương 2. SỐ XẤP XỈ VÀ SAI SỐ Số tiết: 02 lý thuyết + 01 bài tập, thảo luận 2.1. Số xấp xỉ, sai số tuyệt đối và sai số tương đối 2.2. Cách viết số xấp xỉ 2.3. Sự quy tròn và sai số quy tròn 2.4. Xác định sai số của hàm số khi biết sai số của các đối số 2.5 Hàm tính sai số Chương 3. TÍNH GẦN ĐÚNG NGHIỆM THỰC CỦA PHƯƠNG TRÌNH ĐẠI SỐ VÀ SIÊU VIỆT Số tiết: 06 lý thuyết + 03 bài tập, thảo luận 3.1. Đặt vấn đề 3.2. Khoảng phân ly nghiệm 3.3. Phương pháp chia đôi 3.4. Phương pháp lặp 3.5. Phương pháp dây cung 3.6. Phương pháp tiếp tuyến Toán ứng dụng iii Chương 4. GIẢI HỆ PHƯƠNG TRÌNH ĐẠI SỐ TUYẾN TÍNH Số tiết: 04 lý thuyết + 02 bài tập, thảo luận 4.1. Một số ví dụ trong thực tế 4.2. Hệ phương trình đại số tuyến tính có số ẩn bằng số phương trình 4.3. Các phương pháp lặp 4.4. Hệ phương trình đại số tuyến tính không tương thích Chương 5. ĐA THỨC NỘI SUY VÀ PHƯƠNG PHÁP BÌNH PHƯƠNG TỐI THIỂU Số tiết: 05 lý thuyết + 03 bài tập, thảo luận 5.1. Đa thức nội suy 5.2. Sơ đồ horner tính giá trị của đa thức 5.3. Đa thức nội suy Lagrange 5.4. Đa thức nội suy Newton 5.5. Phương pháp bình phương tối thiểu Chương 6. TÍNH GẦN ĐÚNG ĐẠO HÀM VÀ TÍCH PHÂN Số tiết: 05 lý thuyết + 02 bài tập, thảo luận 6.1. Tính gần đúng đạo hàm 6.2. Tính gần đúng tích phân xác định Chương 7. GIẢI GẦN ĐÚNG PHƯƠNG TRÌNH VI PHÂN THƯỜNG Số tiết: 04 lý thuyết + 02 bài tập, thảo luận 7.1. Phương pháp Euler 7.2. Phương pháp Euler cải tiến 7.3. Phương pháp Runge–Kutta Lịch trình giảng dạy được thiết kế trong 15 tuần học. Tuần Nội dung giảng dạy, thảo luận Tài liệu 1 Chương 1. Đại cương về MATLAB 1.1. Giới thiệu 1.2. Ma trận và mảng 1.2.1. Ma trận và các hình vuông thần bí 1.2.2. Biểu thức 1.2.3. Làm việc với các ma trận 1.2.4. Nói thêm về ma trận và mảng [1], [5] 2 1.3. Lập trình 1.3.1. Điều khiển luồng lệnh 1.3.2. Cấu trúc dữ liệu khác 1.3.3. Thủ tục và hàm 1.4. Một số hàm cơ bản 1.4.1. Các hàm toán học [1], [5] Toán ứng dụng iv 1.4.2. Các hàm chuyển đổi 1.4.3. Các hàm định giá 1.4.4. Một số hàm khác 1.4.5. Các hàm chức năng 3 Thảo luận chương 1 [1], [5] 4 Chương 2. Số xấp xỉ và sai số 2.1. Số xấp xỉ, sai số tuyệt đối và sai số tương đối 2.1.1. Số xấp xỉ 2.1.2. Sai số tuyệt đối 2.1.3. Sai số tương đối 2.2. Cách viết số xấp xỉ 2.3. Sự quy tròn và sai số quy tròn 2.4. Xác định sai số của hàm số khi biết sai số của các đối số 2.5. Hàm tính sai số [1], [2], [3], [4] 5 Thảo luận chương 1 và 2 [1], [2], [3], [4] 6 Chương 3. Tính gần đúng nghiệm thực 3.1. Đặt vấn đề 3.2. Khoảng phân ly nghiệm 3.3. Phương pháp chia đôi 3.3.1. Nội dung phương pháp 3.3.2. Sự hội tụ của phương pháp 3.3.3. Đánh giá sai số 3.3.4. Điều kiện dừng bước lặp 3.3.5. Sử dụng MATLAB 3.4. Phương pháp lặp 3.4.1. Nội dung phương pháp 3.4.2. Sự hội tụ 3.4.3. Đánh giá sai số 3.4.4. Điều kiện dừng bước lặp 3.4.5. Sử dụng MATLAB [1], [2], [3], [4] 7 3.5. Phương pháp dây cung 3.5.1. Nội dung phương pháp 3.5.2. Sự hội tụ của phương pháp 3.5.3. Đánh giá sai số 3.5.4. Sử dụng MATLAB 3.6. Phương pháp tiếp tuyến 3.6.1. Nội dung phương pháp [1], [2], [3], [4] Toán ứng dụng v 3.6.2. Sự hội tụ 3.6.3. Đánh giá sai số 3.6.4. Sử dụng MATLAB 8 Chương 4. Giải hệ phương trình đại số 4.1. Một số ví dụ trong thực tế 4.2. Hệ phương trình đại số tuyến tính có số ẩn bằng số phương trình 4.3. Các phương pháp lặp 4.3.1. Phương pháp lặp Jacobi 4.3.2. Phương pháp lặp Gauss - Seidel 4.3.3. Sử dụng MATLAB [1], [2] [3], [4] 9 Chương 5. Đa thức nội suy và phương pháp bình phương tối thiểu 5.1. Đa thức nội suy 5.2. Sơ đồ horner tính giá trị của đa thức 5.3. Đa thức nội suy Lagrange 5.3.1. Thành lập đa thức nội suy Lagrange 5.3.2. Xây dựng đa thức nội suy Lagrange trong MATLAB 5.4. Đa thức nội suy Newton 5.4.1. Đa thức nội suy Newton với các nút không cách đều [1], [2] [3], [4] 10 Thảo luận chương 3, 4 và 5 11 5.4.2. Đa thức nội suy Newton với các nút cách đều 5.4.3. Đánh giá sai số 5.4.4. Xây dựng đa thức nội suy cho hàm f(x) trên [a, b] 5.4.5. Xây dựng đa thức nội suy Newton trong MATLAB 5.5. Phương pháp bình phương tối thiểu 5.5.1. Nội dung phương pháp 5.5.2. Sử dụng MATLAB [1], [2] [3], [4] 12 Chương 6. Tính gần đúng đạo hàm và tích phân 6.1. Tính gần đúng đạo hàm 6.1.1. Đặt vấn đề 6.1.2. Tính gần đúng đạo hàm cấp một 6.1.3. Tính gần đúng bằng MATLAB 6.2. Tính gần đúng tích phân xác định 6.2.1. Công thức hình thang 6.2.2. Công thức hình thang tổng quát [1], [2] [3], [4] 13 6.2.3. Công thức Simson 6.2.4. Công thức Simson tổng quát 6.2.5. Sử dụng MATLAB [1], [2] [3], [4] Toán ứng dụng vi Chương 7. Giải gần đúng phương trình vi phân thường 7.1. Phương pháp Euler 7.1.1. Nội dung phương pháp 7.1.2. Sử dụng MATLAB 14 7.2. Phương pháp Euler cải tiến 7.2.1. Nội dung phương pháp 7.2.2. Sử dụng MATLAB 7.3. Phương pháp Runge–Kutta 7.3.1. Nội dung phương pháp 7.3.2. Sử dụng MATLAB [1], [2] [3], [4] 15 Thảo luận chương 5, 6 và 7 Đại cương về M ATLAB 1 Ch−¬ng 1. ĐẠI CƯƠNG VỀ M ATLAB • Yêu cầu cơ bản đối với người học − Sử dụng thành thạo các phép toán trong M ATLAB . − Sử dụng thành thạo các câu lệnh điều khiển luồng lệnh. − Phân biệt được các loại hàm và định nghĩa được chúng. − Sử dụng thành thạo các hàm toán học cơ bản. − Sử dụng thành thạo các hàm vẽ đồ thị. − Tính đạo hàm, đạo hàm riêng. − Tìm nguyên hàm, tính tích phân xác định, tích phân kép. 1.1. Giới thiệu • M ATLAB là gì M ATLAB là ngôn ngữ bậc cao rất hiệu quả đối với kỹ thuật tính toán. Nó hoà nhập sự tính toán, sự trực quan và lập trình vào một môi trường dễ sử dụng, ở đó các vấn đề và giải pháp được biểu thị bởi các ký hiệu toán học quen thuộc. M ATLAB là hệ thống tương tác mà ở đó phần tử dữ liệu cơ sở là mảng, nhưng không đòi hỏi kích thước. Điều đó cho phép bạn giải quyết nhiều vấn đề về kỹ thuật tính toán, đặc biệt là các công thức liên quan đến véc tơ và ma trận. M ATLAB là viết tắt của matrix laboratory. Khởi đầu M ATLAB được viết dành cho sự truy cập dễ dàng tới phần mềm ma trận được phát triển bởi các đề án LINPACK và EISPACK. M ATLAB có chứa một họ các ứng dụng đặc biệt, gọi là công cụ (toolboxes). Các công cụ này cho phép bạn học và áp dụng các kỹ thuật đặc biệt, bao trùm các lĩnh vực như xử lý tín hiệu, điều khiển hệ thống, mạng nơron, logic mờ, sóng, mô phỏng và rất nhiều lĩnh vực khác. • Hệ thống của M ATLAB Có thể tạm coi hệ thống của M ATLAB gồm năm phần chính. o Môi trường phát triển: Đó là tập các công cụ và tiện ích giúp bạn sử dụng các hàm và các tệp. Đa số trong chúng thuộc về giao diện người dùng, bao gồm nền M ATLAB (M ATLAB desktop), cửa sổ lệnh (command window), cửa sổ quá trình (command history), trình soạn thảo (editor), trình gỡ rối (debugger), trình duyệt (browser) để xem trợ giúp (viewing help), duyệt không gian làm việc (workspace), duyệt các tệp và tìm thư mục. o Thư viện các hàm toán học: Đó là tập mênh mông các giải thuật tính toán, từ các hàm cơ bản như tổng, tích, sine, cosine, các phép toán số học về số thực và số phức, đến các hàm phức tạp như ma trận ngược, trị riêng của ma trận, các hàm Bessel và phép biến đổi Fourier nhanh. o Ngôn ngữ M ATLAB : Đó là ngôn ngữ bậc cao về ma trận và mảng với các câu lệnh điều khiển, các hàm, cấu trúc dữ liệu, nhập/xuất dữ liệu và các đặc trưng của ngôn ngữ lập trình hướng đối tượng (object–oriented programming). Nó cho phép xây dựng các chương trình nhỏ lẫn các ứng dụng hoàn thiện. Đại cương về M ATLAB 2 o Đồ hoạ: Đồ hoạ trong M ATLAB quả là tuyệt vời để hiển thị các ma trận, các véc tơ, vẽ và in đồ thị, chú giải trên đồ thị. Nó bao gồm các hàm ở mức cao để có thể biểu diễn dữ liệu trong không gian hai và ba chiều. o Tương tác với bên ngoài: Đó là thư viện mà bạn có thể viết chương trình bằng các ngôn ngữ C hoặc Fortran để tương tác với M ATLAB . Nó bao gồm các tiện ích để gọi các thủ tục từ M ATLAB kiểu liên kết động (dynamic linking), gọi M ATLAB như là gọi một máy tính toán, cũng như các tiện ích để đọc và viết các tệp kiểu MAT–files. • Khởi động và thoát khỏi M ATLAB o Khởi động: Trên nền Windows, kích đúp vào biểu tượng của M ATLAB . Bạn có thể tuỳ biến sự khởi động của M ATLAB . Ví dụ, bạn có thể thay đổi thư mục mặc định khi khởi động và thực thi các câu lệnh một cách tự động bằng cách thay đổi tệp kịch bản (scrript file) có tên là startup.m. o Thoát khỏi M ATLAB : Để kết thúc phiên làm việc, chọn File/Exit M ATLAB trên menu hoặc gõ lệnh quit tại cửa sổ lệnh. Bạn cũng có thể cho thực thi tệp kịch bản có tên la finish.m mỗi khi thoát khỏi M ATLAB , ví dụ như thực hiện chức năng ghi workspace, hoặc hiển thị hộp thoại (dialog box) để nhắc nhở. 1.2. Ma trận và mảng 1.2.1. Ma trận và các hình vuông thần bí (Matrices and Magic Squares) Trong M ATLAB , ma trận là bảng chữ nhật các con số. Các đại lượng vô hướng được xem là ma trận 1–1. Các ma trận chỉ có một hàng (row) hoặc một cột (column) được gọi là véc tơ. M ATLAB có nhiều cách để lưu dữ liệu kiểu số và phi số, nhưng trước hết nó luôn xem bất cứ cái gì cũng là ma trận. Các hành động trong M ATLAB được thiết kế theo hướng tự nhiên và có thể. Đại cương về M ATLAB 3 • Nhập ma trận (Entering Matrices) Cách tốt nhất để bạn bắt đầu với M ATLAB là học cách sử dụng ma trận. Bạn có thể nhập ma trận bằng vài cách khác nhau: o Nhập trực tiếp: các số cách nhau ít nhất một ký tự trắng (blank) hoặc dấu ',' (comma). Tại cửa sổ lệnh bạn gõ như sau, (chú ý dấu [], square brackets) >> A = [1 2 3; 4, 5,6; 7 8,9] A = 1 2 3 4 5 6 7 8 9 Dấu ';' giữa các con số biểu thị sự kết thúc hàng. Cuối câu lệnh mà có dấu ';' thì không hiển thị dữ liệu ra cửa sổ Command. Để hiển thị dữ liệu của biến nào, ta chỉ việc gõ tên biến đó rồi nhấn phím ENTER. Lệnh b =[1 2 3] tạo ra véc tơ hàng và lệnh c = [1;2;3] tạo ra véc tơ cột. Lệnh B =[1:4; 5:8] tạo ra ma trận 2 hàng (các số kề nhau sai khác nhau 1) và 4 cột. Lệnh C =[1:0.2:2;3:0.4:5] tạo ra ma trận hai hàng sáu cột, các phần tử kề nhau thuộc hàng thứ nhất chênh nhau 0.2, còn các phần tử kề nhau thuộc hàng thứ hai chênh nhau 0.4. Nếu phát hiện số phần tử ở hàng nào đó không khớp với số phần tử ở hàng ngay trên nó thì M ATLAB phát sinh lỗi: ??? Error using ==> vertcat All rows in the bracketed expression must have the same number of columns. o Tải ma trận từ tệp dữ liệu ngoài: Để hiểu rõ, hãy thực hiện các lệnh sau. >> A = [1, 2, 3; 4, 5, 6; 7, 8, 9]; % phát sinh ma trận A >> save ('ab.m', 'A','-ascii'); % ghi ma trận A vào tệp ab.m >> load ab.m; % tải dữ liệu từ tệp ab.m >> ab % hiển thị ma trận ab, chính là A lúc ghi vào. Tham số '-ascii' chỉ định việc ghi ở dạng văn bản. Bạn hãy tìm tệp ab.m trong thư mục hiện thời (Current Directory) rồi mở nó bằng cách double–click. Nếu không thấy hiển thị cửa sổ này, nhấp chuột vào trình đơn desktop trên menubar của cửa sổ M ATLAB rồi trỏ tới Current Directory và đánh dấu check on. Bạn sẽ thấy dữ liệu được ghi dưới dạng ma trận vuông cấp 3. Hãy đóng tệp lại bằng cách click vào nút chữ thập đỏ ở góc trên–phải. Câu lệnh load ab.m sẽ tải dữ liệu trong tệp ab.m vào bộ nhớ. Câu lệnh cuối cùng ab là yêu cầu hiển thị ma trận ab. Nhưng sao lại là ab mà không phải là A? Vấn đề là ở chỗ, vì tên biến A không được ghi vào tệp văn bản, mà coi toàn bộ dữ liệu có trong tệp đó đều thuộc về một biến kiểu ma trận, có tên trùng với tên của tệp. Tên biến trong M ATLAB có sự phân biệt chữ hoa với chữ thường. Nếu ta nhập lệnh load AB.m, thì dữ liệu được tải thuộc về ma trận AB chứ không phải là ab nữa. Đại cương về M ATLAB 4 Tất nhiên chúng ta có thể trực tiếp soạn thảo tệp ab.m bằng trình Editor. Hãy thao tác như sau: File/New/M–file (hot key: Ctrl + N). Sau đó soạn thảo trực tiếp, mỗi dòng ứng với một hàng, các cột không cần thẳng. Để ghi lại, chọn File/Save (hot key: Ctrl + S), đặt tên tệp là ab.m (nếu đặt tên ab.txt thì sau đó phải load ab.txt) o Sử dụng các hàm có sẵn (built–in functions) − Hàm magic(n): Trả lại ma trận vuông cấp n được cấu thành từ các số nguyên từ 1 đến n 2 với n ≥ 3. Tổng các phần tử trên mỗi hàng hoặc mỗi cột cũng như trên hai đường chéo chính và chéo phụ đều bằng nhau. >> M = magic(5) M = 17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9 >> sum(M) ans = 65 65 65 65 65 Như ta thấy, hàm magic(5) cho ma trận vuông cấp 5 với tổng theo cột là 65. Bạn đừng mất công làm phép tính cộng, hãy gọi hàm sum(M)để tính tổng các phần tử trên từng cột. Với ma trận kiểu này bạn cũng có thể tính theo công thức: 22 n5 1 2 n n(n 1) 5(25 1) 65 n2 2 = +++ + + ===. Muốn tính tổng theo hàng, hãy tính tổng theo cột của ma trận chuyển vị, sum(M'). Việc tính tổng theo đường chéo chính dành cho lệnh sum(diag(M)). Với M là ma trận magic, người ta chứng minh được rằng: • Nếu n là số lẻ: rank(M) = n, • Nếu n chia hết cho 4: rank(M) = 3, • Nếu n chẵn nhưng không chia hết cho 4: rank(M) = n 2 + 2. − Hàm eye(n): Ma trận đơn vị cấp n. Đây là kiểu chơi chữ vì phát âm của eye gần giống với I là ký tự đầu của Identity (đơn vị). − Hàm eye(m,n) hoặc eye([m n]): Ma trận cỡ m x n với các số 1 trên đường chéo và các số 0 với các phần tử khác. − Hàm eye(size(A)): Ma trận đơn vị cùng cỡ với ma trận A. − Hàm ones(n): Ma trận vuông cấp n toàn các số 1. − Hàm ones(m,n) hoặc ones([m n]): Ma trận cỡ m x n toàn các số 1. [...]... 1 1 2 1 2 2 1 2 Bài 1.5.2 >> A = [4 3 2; 2 3 4] ; B = A - 1; >> A + B ans = 7 5 3 3 5 7 >> A - B ans = 1 1 1 1 1 1 >> A'*B ans = 14 12 10 12 12 12 10 12 14 >> A*B' ans = 20 16 16 20 >> format rat >> A\B ans = 5/6 1/3 -1/6 0 0 0 -1/6 1/3 5/6 >> A.\B ans = 3 /4 2/3 1/2 1/2 2/3 3 /4 >> A/B ans = 5 /4 1 /4 1 /4 5 /4 >> A./B ans = 4/ 3 3/2 2 2 3/2 4/ 3 >> A.^B ans = 64 9 2 2 9 64 >> A(~B) ans = Empty matrix: 0-by-1... 0 .42 36 0.0236 -0.6708 -0.5000 0.0236 0 .42 36 0.6708 -0.5000 0.37 64 -0.8236 0.2236 D = 34. 0000 0 0 0 0 8. 944 3 0 0 0 0 -8. 944 3 0 0 0 0 -0.0000 Cột đầu tiên của V là véc tơ riêng ứng với trị riêng 34, vậy đúng là trị riêng 34 có véc tơ riêng là [1 1 1 1]' Chắc chắn bạn suy ra được ý nghĩa các cột còn lại của V Để nhận được phương trình đặc trưng, ta gọi hàm poly >> poly(a) ans = 1.0e+003 * 0.0010 -0.0 340 ... Riêng phép toán ' chỉ là phép lấy chuyển vị mà không lấy liên hợp phức >> x = 0:1 :4; véc tơ hàng: 0 1 2 3 4 >> y = (0:1 :4) '; véc tơ cột là chuyển vị của x ở trên Câu lệnh 0:1 :4' được hiểu là véc tơ hàng: 0 1 2 3 4' , mà 4' vẫn là 4 >> n = (0:1 :4) '; m = (0:1 :4) ; >> m.^2 ans = 0 1 4 9 16 >> n.^2 ans = 0 1 4 11 Đại cương về MATLAB 9 16 Khi một biến đã nhận giá trị là mảng được một hàm triệu gọi (invoke) hoặc... eig(A) ans = 34. 0000 8. 944 3 -8. 944 3 10 Đại cương về MATLAB -0.0000 Một trị riêng bằng 0 là đương nhiên vì A suy biến Trị riêng lớn nhất bằng 34, chính là giá trị sum của ma trận magic (4) Tại sao lại như vậy, phải chăng một véc tơ riêng ứng với trị riêng 34 là véc tơ cột gồm toàn số 1? Để tìm cả các véc tơ riêng, gọi hàm eig với hai output: >> [V,D] = eig(A) % A*V = V*D V = -0.5000 -0.8236 0.37 64 -0.2236... là: 1 – 34 Vậy thức đặc trưng của magic (4) là • –80 2720 0 4 – 34 3 – 80λ2 + 2720λ Các mảng (Arrays) MATLAB xem mảng là ma trận có một chiều bằng 1 Vì vậy các phép toán trên ma trận cũng đúng cho các mảng Các phép toán số học + – * / \ ^ sẽ được thực hiện trên các mảng cùng cỡ và sẽ cho kết quả là mảng cũng cùng cỡ Riêng phép toán ' chỉ là phép lấy chuyển vị mà không lấy liên hợp phức >> x = 0:1 :4; véc... -x') x = C1*sin(t)+C2*cos(t) y = C1*cos(t)-C2*sin(t) 9 Hệ hai phương trình tuyến tính cấp một, tìm nghiệm tổng quát, output là một biến >> S = dsolve('Df = 3*f +4* g', 'Dg = -4* f+3*g') S = f: [1x1 sym] g: [1x1 sym] Để hiển thị f và g, bạn nhập lệnh: >> f = S.f, g = S.g f = exp(3*t)*(C1*sin (4* t)+C2*cos (4* t)) g = exp(3*t)*(C1*cos (4* t)-C2*sin (4* t)) • Véc tơ hoá (Vectorization) Đó là sự tổ chức dữ liệu hoặc... các hàm, các toán tử trùng tên nhưng hành vi khác nhau lại được tồn tại song song Chỉ có điều khi một lời triệu gọi được phát đi, thì hàm hay toán tử nào có tham số phù hợp với lời triệu gọi đó sẽ được thực thi Trong các ngôn ngữ lập trình hướng đối tượng OOP, các hàm hay các toán tử đều được gọi chung là phương thức (Method) Chúng ta hãy xem xét toán tử cộng và câu lệnh c = a + b; Lúc này toán tử cộng... cuối >> A = [4 3 0; 2 0 5; 4 0 1]; >> B = nonzeros(A)' B = 4 2 4 3 5 1 1 .4. 5 Các hàm chức năng (Function Functions) Đó là lớp (class) các hàm làm việc với các hàm phi tuyến của các biến vô hướng Lớp hàm này được viết dưới dạng M–file và gồm các nhóm chức năng sau: Tìm nghiệm (Zero finding), Tối ưu (Optimization) (ta không bàn đến ở đây), 23 Đại cương về MATLAB Cầu phương (Quadrature), Phương trình vi phân... int(int('x^2+x*y+1','y',0,'1-x'),'x',0,1); ans = 5/8 +∞ dx Ví dụ 1 .4. 2 Tính ∫ 2 a x >> int('1/x^2','a',inf) ans = 1/a 0 dx Ví dụ 1 .4. 3 Tính ∫ 2 −∞ 1 + x >> int('1/(1+x^2)',-inf,0) ans = 1/2*pi o Phương trình vi phân thường Để giải phương trình vi phân thường tuyến tính hoặc phi tuyến, ta sử dụng hàm dsolve Hàm này cho phép giải phương trình hoặc hệ phương trình, ta có thể tìm nghiệm tổng quát hoặc nghiệm riêng,... hướng Ví dụ, nếu A =[1,2,3]; B =[2,3 ,4] thì thì A.*B = [2,6,12], 2.*A = [2 ,4, 6], A.*2 = [2 ,4, 6] o / Phép chia bên phải (Right Division) Xuất phát từ việc giải phương trình ma trận XA = B Gọi là phép chia bên phải bởi vì A là toán hạng bên phải trong biểu thức B/A Các ma trận, A và B phải có cùng số cột – Nếu A là ma trận vuông thì B/A = BA–1, tức nó là nghiệm của phương trình XA = B, nghiệm này được tìm . Tài liệu học tập * Sách, giáo trình chính: [1] Toán ứng dụng (Toán 4) , bộ môn Toán trường ĐH Kỹ thuật Công nghiệp, 2009. * Sách tham khảo: [2] Dương Thuỷ Vỹ, Giáo trình phương pháp tính, NXB. 02 bài tập, thảo luận 4. 1. Một số ví dụ trong thực tế 4. 2. Hệ phương trình đại số tuyến tính có số ẩn bằng số phương trình 4. 3. Các phương pháp lặp 4. 4. Hệ phương trình đại số tuyến tính. số 3.3 .4. Điều kiện dừng bước lặp 3.3.5. Sử dụng MATLAB 3 .4. Phương pháp lặp 3 .4. 1. Nội dung phương pháp 3 .4. 2. Sự hội tụ 3 .4. 3. Đánh giá sai số 3 .4. 4. Điều kiện dừng bước lặp 3 .4. 5. Sử