MATLAB – Wikipedia tiếng Việt

MATLAB là phần mềm cung cấp môi trường tính toán số và lập trình, do công ty MathWorks thiết kế. MATLAB cho phép tính toán số với ma trận, vẽ đồ thị hàm số hay biểu đồ thông tin, thực hiện thuật toán, tạo các giao diện người dùng và liên kết với những chương trình máy tính viết trên nhiều ngôn ngữ lập trình khác.

Với thư viện Toolbox, MATLAB được cho phép mô phỏng giám sát, thực nghiệm nhiều quy mô trong trong thực tiễn và kỹ thuật .
Matlab là viết tắt từ ” MATrix LABoratory “, được Cleve Moler ý tưởng vào cuối thập niên 1970, và sau đó là chủ nhiệm khoa máy tính tại Đại học New Mexico .

MATLAB, nguyên sơ được viết bởi ngôn ngữ Fortran, cho đến 1980 nó vẫn chỉ là một bộ phận được dùng nội bộ của Đại học Stanford.

Năm 1983, Jack Little, một người đã học ở MIT và Stanford, đã viết lại MATLAB bằng ngôn ngữ C và nó được xây dựng thêm các thư viện phục vụ cho thiết kế hệ thống điều khiển, hệ thống hộp công cụ (tool box), mô phỏng… Jack xây dựng MATLAB trở thành mô hình ngôn ngữ lập trình trên cơ sở ma trận (matrix-based programming language).

Steve Bangert là người đã viết trình thông dịch cho MATLAB. Công việc này lê dài gần 1 ½ năm. Sau này, Jack Little phối hợp với Moler và Steve Bangert quyết định hành động đưa MATLAB thành dự án Bất Động Sản thương mại – công ty The MathWorks sinh ra thời hạn này – năm 1984 .

Phiên bản đầu tiên MATLAB 1.0 ra dời năm 1984 viết bằng C cho MS-DOS PC được phát hành đầu tiên tại IEEE Conference on Design and Control (Hội nghị IEEE về thiết kế và điều khiển) tại Las Vegas, Nevada. Ban đầu Matlab được phát triển để hỗ trợ sinh viên sử dụng hai thư viện  LINPACK và EISPACK dùng cho đại số tuyến tính (viết bằng Fortran) mà không cần biết lập trình Fortran.

Năm 1986, MATLAB 2 sinh ra trong đó tương hỗ UNIX .Năm 1987, MATLAB 3 phát hành .Năm 1990 Simulink 1.0 được phát hành gói chung với MATLAB .

Năm 1992 MATLAB 4 thêm vào hỗ trợ 2-D và 3-D đồ họa màu và các ma trận truy tìm. Năm này cũng cho phát hành phiên bản MATLAB Student Edition (MATLAB ấn bản cho học sinh).

Năm 1993 MATLAB cho MS Windows sinh ra. Đồng thời công ty này có website là www.mathworks.comNăm 1995 MATLAB cho Linux sinh ra. Trình dịch MATLAB có năng lực vận động và di chuyển từ ngôn từ MATLAB sang ngôn từ C cũng được phát hành trong dịp này .

Năm 1996 MATLAB 5 bao gồm thêm các kiểu dữ liệu, hình ảnh hóa, bộ truy sửa lỗi (debugger), và bộ tạo dựng GUI.

Năm 2000 MATLAB 6 cho thay đổi môi trường tự nhiên thao tác MATLAB, thay thế sửa chữa LINPACK và EISPACK bằng LAPACK và BLAS. [ 2 ]

Năm 2002 MATLAB 6.5 phát hành đã cải thiện tốc độ tính toán, sử dụng phương pháp dịch JIT (Just in Time) và tái hỗ trợ MAC.

Năm 2004 MATLAB 7 phát hành, có năng lực đúng mực đơn và kiểu nguyên, tương hỗ hàm lồng nhau, công cụ vẽ điểm, và có thiên nhiên và môi trường phân tích số liệu tương tác .Đến tháng 12, 2008, phiên bản 7.7 được phát hành với SP3 cải tổ Simulink cùng với hơn 75 loại sản phẩm khác .Năm 2009 cho sinh ra 2 phiên bản 7.8 ( R2009a ) và 7.9 ( R2009b ) .Năm 2010 phiên bản 7.10 ( R2010a ) cũng đã được phát hành .Matlab được dùng thoáng rộng trong giáo dục, thông dụng nhất là giải những bài toán số trị ( cả đại số tuyến tính lẫn giải tích ) trong nhiều nghành kĩ thuật .

Ngôn ngữ lập trình[sửa|sửa mã nguồn]

Ngôn ngữ lập trình dùng trong hệ tính toán số cũng có tên gọi là MATLAB. Nó thuộc kiểu lập trình thủ tục (với một số đặc điểm của lập trình hướng đối tượng mới được bổ sung trong các phiên bản gần đây.

Các kiểu tài liệu[sửa|sửa mã nguồn]

MatLab có đầy đủ các kiểu dữ liệu đơn giản như: số nguyên, số thực, ký tự, logic (boolean).

Chuỗi ký tự được đặt trong dấu nháy đơn hoặc nháy kép, chẳng hạn "Viet Nam".

Kiểu dãy (sequence) có dạng dau:buoc:cuoi bao gồm một véc-tơ gồm các phần tử bắt đầu từ số dau tăng dần theo từng buoc cho đến bằng (không vượt quá) số cuoi. Kết quả cho ra một véc-tơ hàng:

1.2:0.2:1.7% chú thích : tương tự với [ 1.2 1.4 1.6 ]
1.2:0.2:1.8% chú thích : tương tự với [ 1.2 1.4 1.6 1.8 ]

Kiểu ma trận đóng vai trò TT trong MatLab. Ví dụ một ma trận hai hàng ba cột như sau ( hết một hàng cần dấu chấm phẩy để phân tách, nhưng không nhất thiết xuống dòng ) :

[-345.2;
2.1-87.6]

MatLab còn có một số kiểu dữ liệu khác cao cấp hơn: kiểu cell, kiểu struct (bản ghi).

Các phép tính với ma trận[sửa|sửa mã nguồn]

Các phép cộng trừ hai ma trận cùng kích thước được thực hiện bình thường. Đặc biệt với phép nhân, MatLab phân biệt hai toán tử: * dành cho phép nhân ma trận và .* dành cho nhân từng cặp phần tử tương ứng của hai ma trận.

>>a=[23;24 ]
23
24

>>a*a% chính là bình phương ma trận A
1018
1222

>>a. *a% chỉ là bình phương TỪNG PHẦN TỬ của A
49
416

Với phép tính lũy thừa cũng tương tự. Chẳng hạn, với ví dụ trên ta có thể viết lần lượt là a^2a.^2.

Trước đây MatLab không phân biệt chữ in, chữ thường ( giống như Fortran ). Các phiên hơn gần đây lại có sự phân biệt này ( theo ngôn từ C ). Các từ khóa đều viết chữ thường .

  • Lệnh gán có dạng giống như nhiều ngôn ngữ lập trình khác: tên_biến = giá_trị_biểu thức. Thông thường máy sẽ in ra kết quả của biến sau khi gán, nếu ta không kết thúc lệnh gán bởi dấu ;

Ví dụ

t=2*3% hiện thị t = 6
t=t+1;% t có giá trị bằng 7 nhưng không hiển thị lên màn hình hiển thị .
  • Khai báo hàm số (ví dụ như hàm bình phương tên tham số vào là x, tên tham số ra là y:
functiony=

binhPhuong

(x) y=x*x; end
  • Cấu trúc rẽ nhánh, lặp:
fori=1:3% quan tâm rằng vòng lặp theo dạng dãy
disp(1/i)
end

i=0
whilei<4
i=i+1;% không cho hiển thị ra màn hình hiển thị
disp(i)% hiển thị giá trị i
end

Cú pháp đặc biệt quan trọng ( syntactic sugar )[sửa|sửa mã nguồn]

Để tăng tốc độ lập trình, nhất là thao tác từ dấu nhắc lệnh, MatLab cho phép nhiều kiểu cú pháp viết tắt. Chẳng hạn để xem hướng dẫn về lệnh plot thì hai câu lệnh sau là tương đương:

doc(' plot ')
docplot% chú thích : cách viết gọn, đồng thời bỏ dấu ngoặc tròn và dấu nháy

Một ví dụ nữa là những số trong một véc-tơ hàng không cần có dấu phẩy ngăn cách

v1=[2,3,4]
v2=[567]% cũng hợp lệ !

Và ngay cả cách gọi file lệnh từ dấu nhắc cũng là một dạng rút gọn đặc biệt. Chẳng hạn ta cần chạy file tinhtong.m trong thư mục hiện hành:

>>tinhtong

Tính năng vẽ đồ thị[sửa|sửa mã nguồn]

Vẽ đồ thị là một tính năng được trau chuốt trong MatLab; với rất nhiều kiểu đồ thị khác nhau như biểu đồ dạng đường, biểu đồ chấm điểm, các lớp màu (patch) hai chiều, đường đồng mức và các đường cong, mặt cong ba chiều. Ngoài ra MatLab còn cung cấp giao diện để người dùng trực tiếp biên tập hình vẽ, điền vào các ghi chú theo ý muốn.

Vẽ đồ thị dạng đường

Giả sử có dãy số liệu V đo theo thời gian t. Trong MatLab, Vt đều có dạng vec tơ có cùng độ dài. Khi đó lệnh vẽ đồ thị với trục hoành là t và trục tung là V có dạng:

plot(t,V)
xlabel(' t ( s ) ')% viết tiêu đề những trục
ylabel(' V ( m / s ) ')
Vẽ đồ thị dạng lớp màu

Một cách hiệu quả để biểu thị các trường vật lý trong không gian hai chiều là dùng lớp màu. Chẳng hạn T là một ma trận 2 chiều lưu giữ giá trị nhiệt độ của một tấm kim loại hình chữ nhật, thì việc hiển thị phân phối nhiệt độ bằng một lớp màu được thực hiện dễ dàng:

pcolor(T)
Vẽ trường vec tơ

Cũng như đồ thị lớp màu, việc hiển thị trường vec tơ rất cần thiết trong các ngành khoa học - vật lý. Để vẽ trường véc-tơ hai chiều của các ma trận uv, dùng lệnh:

quiver(u

,

v)
  • The MathWorks News & Note. Magazine for MATLAB and Simulink. tháng 1 năm 2006
  • Octave, dự án GNU tạo ra môi trường tính toán số tự do tương tự như MATLAB.
  • Scilab, môi trường tính toán số tự do khác tương tự như MATLAB.
  • Maple, phần mềm tương tự có bản quyền
  • Mathematica, phần mềm tương tự có bản quyền

Liên kết ngoài[sửa|sửa mã nguồn]

Rate this post