buoi1_bai1

Màu nền
Font chữ
Font size
Chiều cao dòng

MỞ ĐẦU

1. Giới thiệu về nguồn gốc Matlab

Matlab lần đầu tiên được trường Đại học New Mexico Standfort viết vào cuối thập kỷ 70. Thuật ngữ Matlab là viết tắt của từ Matrix Laboratory tạm hiểu là "Phòng thí nghiệm toán học".

Với ý nghĩa đó, ban đầu Matlab được sử dụng với mục đích giảng dạy lý thuyết ma trận, đại số tuyến tính và giải tích số. Hiện nay, Matlab đã vượt ra khỏi khuôn khổ đó và trở thành một công cụ lập trình và tính toán các bài toán khoa học kỹ thuật. Nó cung cấp các đặc tính quen thuộc với các giải pháp ứng dụng đặc biệt.

2. Khả năng của Matlab

Matlab có khả năng rất to lớn. Tuy nhiên, trong giới hạn của việc học tập nghiên cứu tại trường Đại học và giải quyết các bài toán chuyên ngành. Chúng ta sẽ tiếp cận khả năng của phần mềm này ở một phạm vi hẹp hơn mà không làm mất tính phong phú, đa dạng và hiệu quả của nó.

Để dễ tiếp cận, trước hết ta hãy coi Matlab như một máy tính toàn năng, có thể đóng các vai trò dưới đây:

- Máy tính thông thường: Có thể thực hiện được các phép toán thông thường như : cộng, trừ, nhân, chia,...

- Máy tính khoa học: Có thể thực hiện các phép tính phức tạp hơn các phép tính trên, ví dụ: lấy luỹ thừa, khai căn, lấy logarit, lấy các hàm lượng giác như sin, cos, tang, cotang,...

- Máy tính tay lập trình: Nó cho phép tạo ra, chạy các lệnh; lưu trữ và gọi lại dữ liệu nhằm tự đông hoá quá trình tính toán những bài toán quan trọng mà đòi hỏi khối lượng tính toán lớn và độ phức tạp cao.

Một trong những thế mạnh cảu Matlab là trong đó đã có các hàm, các thủ được xây dựng sẵn. Bên cạnh đó là việc lấy kết quả tính toán ở các dạng khác nhau rất dễ dàng và thuận tiện. Ngoài ra, ta có thể khảo sát các hệ động học nhờ các khối chức năng sẵn có trong thư viện Simulink.

Để hiểu tốt và sử dụng có hiệu quả phần mềm Matlab, trước hết hãy hình dung nó ở cấp độ đơn giản. Sau đó, chúng ta sẽ dần dầm tiếp cận các công năng cao hơn của Matlab một cách vững chắc.

Hiện nay, trong giới sinh viên thường tồn tại một số phiên bản của Matlab: 5.3, 6.1, 6.5

BÀI 1. CÁC TÍNH CHẤT CƠ BẢN CỦA MATLAB

Khi khởi động Matlab, trên màn hình có thể xuất hiện các cửa sổ khác nhau, có một số cửa số chính như:

Command Window, Work space, Command History, Current directory,... Nội dung của các cửa sổ này như sau:

- Command Window: Cửa sổ lệnh - là nơi căn bản nhất để người dùng tương tác với Matlab.

- Work space: Không gian làm việc - nơi lưu trữ tất cả các giá trị của các biến, các hàm hiện hành.

- Command History: Lịch sử các lệnh - nơi hiển thị các lệnh đã được tạo ra theo thời gian, ...

Trong quá trình làm việc với Matlab chúng ta có thể chỉ cần hiển thị một số cửa sổ cần thiết. Để hiển thị các cửa sổ cần thiết ta vào mục View và kích dấu kiểm (check: ۷) vào mục (tương ứng với cửa sổ cần mở) đó. Để tắt các cửa sổ không cần thiết ta cũng vào View và kích chuột vào mục tương ứng để bỏ dấu kiểm.

Đối với các đối tượng mới bắt đầu làm quen với Matlab, chủ yếu chỉ làm việc với cửa sổ Command Window.

Trong cửa sổ lệnh này, bao giờ cũng có điểm dấu, điểm dấu đối với phiên bản Matlab 6.5 là >>. Các lệnh được viết ngay sau điểm dấu này.

1.1. Các ví dụ ban dầu

* Trước hết, chúng ta quan sát các phép tính đơn giản như máy tính thông thường. Trong Matlab, các phép tính đó được thực hiện và cho kết quả như sau:

Ví dụ:

- Để thực hiện phép tính sau: 15 + 7 - 3, trong Matlab, ta có:

>> 15 + 7 - 3

ans =

19

- Để thực hiện phép tính 5 x 3 + 6:2, ta có:

>> 5*3 + 6/2

ans =

18

* Các phép toán của máy tính khoa học, ví dụ:

- Để tính sin(π/2), ta có:

>> sin(pi/2)

ans =

1

- Để tính 52, ta có:

>> 5^2

ans =

25

* Các phép toán của máy tính tay lập trình, ví dụ:

- Bài toán: Nam mua 7 quả cam, mối quả 2000 đ; 3 quả xoài, mỗi quả 3000 đ. Hỏi Nam đã mua hết bao nhiêu tiền.

Trong Matlab, ta làm như sau;

>> cam = 7

ans =

7

>> xoai = 3;

>> giacam = 2000;

>> giaxoai = 3000;

>> tongsotien = cam*giacam + xoai*giaxoai

tongsotien = 23000

Khi bạn cần gọi lại để xem bao nhiêu quả xoài thì bạn gõ:

>> xoai

xoai =

3

Ở ví dụ trên, chúng ta đã tạo ra (khai báo) các biến: cam, xoai, giacam, giaxoai, để miêu tả số lượng và giá cả của từng loại quả. Nếu khi khai báo các biến mà cuối dòng không có dấu chấm phẩy " ; " thì sau khi Enter Matlab sẽ hiển thị giá trị của các biến vừa khai báo bằng " ans ". Nếu khi khai báo các biến mà cuối dòng có dấu chấm phẩy " ; " thì sau khi Enter Matlab sẽ không hiển thị giá trị của biến đó nhưng không nó đã đánh giá (ghi nhận) giá trị vừa khai báo.

Có thể khai báo (định nghĩa) các biến theo các cách khác nhau. Hoặc là giá trị cụ thể, hoặc cũng có thể định nghĩa thông qua các biến đã có. Ở ví dụ trên, ta định nghĩa biến tongsotien thông qua các biến đã có là cam, giacam, xoai, giaxoai.

1.2. Không gian làm việc của Matlab

Sau khi ta khai báo các biến và thực hiện các phép tính. Matlab đã ghi nhận các giá trị đó. Có thể sau một quá trình dài thao tác trên cửa sổ lệnh, chúng ta không thể nhớ nổi giá trị các biến là bao nhiêu nữa thì ta lại gọi lại biến đó bằng cách nhập tên biến vào điểm dấu. Điều đó có nghĩa là các biến cùng với giá trị của nó luôn tồn tại trong không gian làm việc (nếu ta chưa xoá nó bằng lệnh xoá biến)

VD: >> cam

ans =

7

Nếu như ngay cả tên của các biến ta cũng không nhớ nổi (vì quá nhiều) thì ta "yêu cầu" Matlab tìm lại tên các biến bằng lệnh who. Khi thực hiện lệnh who thì Matlab sẽ liệt kê cho ta danh sách các biến đang tồn tại trong không gian làm việc (hiện hành).

VD: >> who

Your variables are: (các biến của bạn là)

cam giacam xoai giaxoai tongsotien

Để gọi các lệnh trước gần nhất, ta dùng phím ↑, còn để tìm lệnh sau gần nhau ta dùng phím ↓. Để chuyển giữa nội dung của một câu lệnh, ta dùng phím ← hoặc →.

Để xoá các biến trong không gian làm việc (khi đó có thể tên biến và giá trị của nó đang hiển thị trong cửa sổ lệnh nhưng Matlab không biết giá trị của nó bằng bao nhiêu nữa, sự hiển thị đó chỉ là hiển thị ở dạng text mà thôi).

Để xoá biến X ta dùng cú pháp: clear X.

Để xoá tất cả các biến trong không gian làm việc ta dùng cú pháp: clear

1.3. Lưu và gọi lại dữ liệu

Trong quá trình giải bài toán, có khi chúng ta cần phải lưu giá trị các biến để lần sau còn sử dụng lại nó. Khi sử dụng lại các biến đã lưu lần trước, ta phải tải các biến đó về không gian làm việc. Việc lưu và gọi lại (tải) dữ liệu được thực hiện bằng cách sau:

Để lưu các biến vừa tạo ra cùng với giá trị của nó. Ta vào mục File. chọn mục Save Workspace as. Một hộp thoại sẽ hiện ra, yêu cầu bạn phải nhập tên File chứa các biến đó, các File này sẽ có đuôi là .mat. Ví dụ: Khi bạn đặt tên File là vidu1 thì tên đầy đủ của File sẽ là vidu1.mat

Khi cần tải các biến (đã được lưu trong File), ta vào mục File chọn Open, sau đó chọn File đã lưu rồi bấm Open. Lúc này các biến đã lưu sẽ được tải về không gian làm việc. Khi cần hiển thị nó thì ta lại gọi ở trên cửa sổ lệnh.

Chú ý: Khi trong không gian làm việc đang có một biến (chẳng hạn tên là a). Khi đó nếu ta khai lại giá trị của biến đó, thì giá trị của nó là giá trị khai gần nhất (sau cùng). Hoặc khi ta tải từ File (đã lưu trước đó) về không gian làm việc một biến có tên trùng với biến đang tồn tại trong không gian làm việc thì giá trị của biến sau cùng (vừa tải về) sẽ được chấp nhận, còn giá trị của biến này trước đó sẽ bị loại bỏ.

1.4. Tạo các file M để viết các câu lệnh ở dạng text

Matlab cung cấp một loại file có đuôi là .m. Khi chúng ta muốn lưu quá trình viết các lệnh để lần sau sử dụng lại và có thể sửa chữa thì ta vào mục File chọn New sau đó chọn M-file (hoặc ấn Ctrl-N). Một cửa sổ soạn thảo sẽ xuất hiện. Thay cho việc nhập các lệnh từ của sổ lệnh, thì các bạn nhập các lệnh dưới dạng text vào trong cửa sổ soạn thảo. Sau khi thao tác xong quá trình, bạn bấm vào File chon Save, một hộp thoại xuất hiện yêu cầu bạn nhập tên (đặt tên) file bạn cần lưu. Sau đó bấm nút Save trên hộp thoại, Matlab sẽ lưu file của bạn với tên đã chọn và đuôi .m.

Trong các lần sử dụng sau này, nếu cần sử dụng đến file này thì trên của sổ lệnh, ta chỉ cần gõ tên file đã lưu (không cần gõ đuôi .m) và ấn Enter. Tất cả các lệnh đã được viết trong file .m sẽ được thực hiện. Nếu cần sửa nọi dung trong các file m thì bạn vào mục File chọn Open, một hộp thoại xuất hiện. Kích chuột vào file cần chỉnh sửa và bấm Open trên hộp thoại đó, sau đó trong cửa sổ soạn thảo, ta có thể chỉnh sửa nội dung của file đó, sau đó lưu lại.

1.5. Các quy định cơ bản trong Matlab

a. Phép tính đơn giản

Phép tính Ký hiệu trong Matlab Ví dụ

Cộng (x + y) + 3 + 5

Trừ (x - y) - 6 - 2

Nhân (x x y) * 15 * 43

Chia (x:y) / hoặc \ 18/3=3\18 (=6)

Luỹ thừa (xy) ^ 3^2 (=9)

b. Thứ tự ưu tiên trong phép tính

Trong một biểu thức:

- Được tính từ trái sang phải với ưu tiên cao nhất cho phép luỹ thừa → nhân, chia → cộng, trừ

- Dấu ngoặc đơn có thể dùng để thay đổi thứ tự. Việc tính toán khi đó bắt đầu từ trong dấu ngoặc.

VD: 3^2-5-6/3*2=0

3^2-5-6/(3*2)=3

4*3^2+1=37

(4*3)^2+1=145

c. Các dạng hiển thị số liệu

Khi hiển thị các kết quả bằng số, ở chế độ mặc định thì Matlab sẽ mặc định hiển thị nó dưới dạng có 4 chữ số xấp xỉ sau dấu chấm cách thập phân. Ngoài ra để hiển thị theo yêu cầu khác nhau, ta dùng lệnh format. Lệnh format dùng cho các cách hiển thị được cho trong bảng sau

Câu lệnh Giá trị của biến Nghĩa của lệnh

format long 35.83333333333334 16 chữ sô

format short e 3.5833e+001 5 chữ số + số mũ

format long e 3.58333333333334e+001 16 chữ số + số mũ

format hex 4041eaaaaaaaaab Hệ thập lục phân

format bank 35.8 2 chữ số thập phân

format + + +, - hoặc 0

format rat 215/6 xáp xỉ hữu tỷ

format short 35.8333 dạng mặc định

Chú ý: Bản thân giá trị thực của biến không bao giờ thay đổi, ở đây chỉ thay đổi cách hiển thị mà thôi.

d. Tên các biến

- Các biến phải bắt đầu bằng chữ, sau đó là chữ, số hoặc ghạch ngang dưới

- Các biến không chứa khoảng trống

- Các biến phân biệt chữ thường và chữ in

- Các biến chứa tối đa là 19 ký tự

- Khi đặt các biến không được trùng với các biến mặc định (đã được định nghĩa) của Matlab

Các biến mặc định:

ans Tên biến dùng để gọi kết quả

pi Số π

Inf Số vô cùng 1/0

NaN Vô định dạng 0/0

i và j i = j =

realmin Số thực dương nhỏ nhất có thể dùng được

realmax Số thực dương nhỏ nhất có thể dùng được

eps Số nhỏ nhất mà khi cộng với 1 thì tạo nên số với dấu phẩy động lớn hơn 1 trong máy tính

1.6. Các hàm toán học trong Matlab

abs (x) Giá trị tuyệt đối của biên độ số phức

acos (x) arccos

asin (x) arcsin

atan (x) arctg

ceil (x) Làm tròn về phía +

cos (x) cos

exp (x) Hàm mũ ex

fix Làm tròn về 0

floor (x) Làm tròn về -

log (x) Lôgarít cơ sở tự nhiên

log10 (x) Lôgarit thường

rem (x,y) Số dư còn lại sau phép chia (x:y)

round (x) Làm tròn về số nguyên gần nhất

sign (x) Hàm dấu: Cho dấu của đối số

sin (x) sin

sqrt (x) Khai căn bậc hai

tan (x) tg

imag (x) Phần ảo của số phức

real (x) Phần thực của số phức

angle (x) Góc của số phức

1.7. Một số lệnh sơ đẳng trong Matlab

a) Lệnh linspace

Ý nghĩa: Tạo một véc tơ (tạo bộ số liệu cách đều nhau)

Cú pháp:

- Linspace (n1,n2) sẽ tạo ra một véc tơ gồm có 100 phần tử cách đều nhau, phần tử đầu là n1, phần tử cuối là n2.

- Linspace (n1,n2,x) sẽ tạo ra một véc tơ gồm có x phần tử cách đều nhau, phần tử đầu là n1, phần tử cuối là n2. Nếu x < 2 thì Matlab sẽ cho kết quả ans = n2.

b. Lệnh plot

Ý nghĩa: Vẽ đồ thị hai chiều bằng phương pháp nội suy tuyến tính qua hai điểm liền kề nhau (nối các điểm bằng đường thẳng)

Cú pháp:

plot (x,y) - Vẽ một đồ thị

plot (x,y1,x,y2,x,y3) - Vẽ nhiều đồ thị (ở đây là 3 đồ thị)

Bài tập:

1. Viết chương trình giải phương trình bậc hai ax2 + bx + c = 0 (bao gồm cả nghiệm phức), nhập các hệ số a, b, c từ cửa sổ lệnh.

2. Viết chương trình giải hệ phương trình bậc nhất hai ẩn

a1.x + b1.y = c1

a2.x + b2.y = c2

Trong đó a1, a2, b1, b2, c1, c2 nhập từ cửa sổ lệnh

3. Tính giá trị ex tại 11 điểm từ 0 đến 20 và vẽ đồ thị hàm số y = ex trong khoảng đó.

Bạn đang đọc truyện trên: Truyen2U.Pro

#matlab