Chương 1

Giới thiệu tổng quan

1.1 Khái niệm tính toán hình thức

 Trong toán học và khoa học máy tính, đại số máy

tính (computer algebra), còn được gọi là tính toán

hình thức (symbolic computation) hay tính toán đại

số (algebraic computation) là một lĩnh vực khoa

học đề cập đến việc nghiên cứu và phát triển của

các thuật toán và phần mềm cho các thao tác các

biểu thức toán học và các đối tượng toán học khác.

15/04/2013 Lập trình tính toán 2

1.1 Khái niệm tính toán hình thức (tt.)

 Đại số máy tính nhấn mạnh vào tính toán chính

xác với các biểu thức chứa biến không được gán giá

trị nhất định, do đó được gọi là tính toán hình thức.

(Theo Wikipedia)

15/04/2013 Lập trình tính toán 3

1.1 Khái niệm tính toán hình thức (tt.)

 Các yêu cầu tính toán hình thức:

– Tính toán số chính xác và gần đúng:

Tính toán số học: N, Z, Q, R, C

>>2*(3+1/3)/(5/3-4/5)

A = (sqrt(2)^2+sqrt(3)^3)^2

15/04/2013 Lập trình tính toán 4

1.1 Khái niệm tính toán hình thức (tt.)

 Các yêu cầu tính toán hình thức (tt.):

– Tính toán hình thức:

>>A = (1+x)^2*(3-2*x)^2

khaitrien=expand(A)

thugon=factor(A)

15/04/2013 Lập trình tính toán 5

1.1 Khái niệm tính toán hình thức (tt.)

 Các ví dụ khác:

– Tính đạo hàm:

>>diff(sin(5*x))

>>g=exp(x)*cos(x)

diff(g)

>>diff(sym(‘5’))

15/04/2013 Lập trình tính toán 6

1.1 Khái niệm tính toán hình thức (tt.)

 Các ví dụ khác (tt.):

– Tính tổng vô hạn:

>>symsum(x^2)

>>symsum(1/x^2,1,inf)

− Đơn giản biểu thức:

>>simplify(cos(x)^5+sin(x)^4+2*cos(x)^2-2*sin(x)^2-

cos(2*x))

15/04/2013 Lập trình tính toán 7

1.1 Khái niệm tính toán hình thức (tt.)

 Các ví dụ khác (tt.):

– Khai triển Maclaurin:

>>taylor(sin(x),’order’,10)

− Giải phương trình, hệ phương trình:

>>solve(x^2+2*x+1)

>>syms m

solve(x^2+2*x+m)

15/04/2013 Lập trình tính toán 8

1.2 Các hệ đại số máy tính

 Các đặc trưng của các hệ đại số máy tính

(Computer

Algebra

Systems,

Symbolic

Computation Systems):

– Khả năng tính toán hình thức: tính toán gần đúng,

chính xác, ký hiệu (symbolic);

− Có thư viện tính toán mạnh, và có thể bổ sung;

− Ngoài sự tương tác, còn hỗ trợ lập trình.

15/04/2013 Lập trình tính toán 9

1.2 Các hệ đại số máy tính (tt.)

 Phân loại:

– Các hệ thống chuyên dùng cho từng lĩnh vực đặc

biệt:

• Group Theory: GAP, Lie, ...

• Cơ học: Cartan, FeynCalc, ...

• Hình học đại số: CASA, GANITH

• ...

15/04/2013 Lập trình tính toán 10

1.2 Các hệ đại số máy tính (tt.)

 Phân loại (tt.):

– Các hệ tổng quát:

• Matlab

• Mathematica

• Maple

• ...

15/04/2013 Lập trình tính toán 11

1.3 Giới thiệu Matlab

 Giới thiệu chung:

Matlab là một ngôn ngữ lập trình cấp cao được sử dụng rộng rãi trong môi trường học thuật và công nghệ.

Matlab có khả năng hỗ trợ tối ưu cho việc nghiên cứu cũng như dạy học đối với các môn toán học, kỹ thuật và khoa học.

Matlab được viết tắt từ MATrix LABoratory.

Phiên bản mới nhất: 2013a

15/04/2013 Lập trình tính toán 12

1.3 Giới thiệu Matlab (tt.)  Giới thiệu chung (tt.):

15/04/2013 Lập trình tính toán 13

1.3 Giới thiệu Matlab (tt.)

 Giới thiệu chung (tt.):

Current directory: thể hiện thư mục đang làm việc. Khi muốn thực thi một tập tin .m nào đó, người dùng phải chắc chắn rằng tập tin .m phải được nhìn thấy trong tab này.

Workspace: chứa danh sách các biến được khai báo và sử dụng trong chương trình. Ở tab này, người dùng có thể đọc được tên biến, giá trị, kích thước của biến, ...

15/04/2013 Lập trình tính toán 14

1.3 Giới thiệu Matlab (tt.)

 Giới thiệu chung (tt.):

Command history: chứa danh sách các câu lệnh được thực thi trong cửa sổ dòng lệnh (command window). Người dùng có thể nhấp đôi vào một lệnh bất kỳ để chương trình thực hiện lại lệnh đó. Hoặc người dùng có thể dùng phím mũi tên lên (↑), xuống (↓) trong cửa sổ dòng lệnh để tìm lại các lệnh mà chương trình đã thực thi.

15/04/2013 Lập trình tính toán 15

1.3 Giới thiệu Matlab (tt.)

 Toolbox trong Matlab:

Toolbox là các thư viện hàm sẵn có để hỗ trợ cho các

lĩnh vực tính toán cụ thể.

Các toolbox thông dụng: Matlab, Fuzzy Logic, Image Processing, Neural Network, Signal Processing, Simulink, Symbolic Math, ...

15/04/2013 Lập trình tính toán 16

1.3 Giới thiệu Matlab (tt.)

 Khởi động, thoát chương trình Matlab:

Khởi động

– Nhấp đúp trái chuột vào biểu tượng Matlab trên Desktop.

– Start\Programs\Matlab

– …

15/04/2013 Lập trình tính toán 17

1.3 Giới thiệu Matlab (tt.)

 Khởi động, thoát chương trình Matlab (tt.):

Thoát

– File\Exit

– Crtl + Q

– >> exit

– >> quit

Thực thi lệnh

>> 2+3 Enter

Chú thích: ghi dấu “%” trước nội dung cần chú thích

15/04/2013 Lập trình tính toán 18

1.3 Giới thiệu Matlab (tt.)

 Các phím điều khiển:

Phím

Chức năng

Enter

Thi hành lệnh

ESC

Xóa dòng lệnh hiện hành

Gọi lại lệnh thực hiện trước đó

↑, ↓

Di chuyển qua lại các ký tự

→,←

Chuyển con trỏ sang trái 1 từ

Ctrl + →

Chuyển con trỏ sang phải 1 từ

Ctrl + ←

15/04/2013 Lập trình tính toán 19

1.3 Giới thiệu Matlab (tt.)

 Các phím điều khiển (tt.):

Phím

Chức năng

Backspace, Delete

Xóa ký tự trước, sau

Ctrl + k

Xóa cho đến cuối dòng

Home, End

Về đầu, cuối dòng lệnh

15/04/2013 Lập trình tính toán 20

1.3 Giới thiệu Matlab (tt.)

 Các lệnh hệ thống:

Lệnh

Chức năng

clc

Xóa cửa sổ dòng lệnh

clf

Xóa cửa sổ đồ họa

computer

Cho biết loại máy tính

demo

Xem các chương trình mẫu

exit, quit

Thoát khỏi Matlab

Ctrl + c (Ctrl + break)

Dừng chương trình đang chạy

15/04/2013 Lập trình tính toán 21

1.3 Giới thiệu Matlab (tt.)

 Các lệnh hệ thống (tt.):

Lệnh

Chức năng

help

Xem phần trợ giúp một số các lệnh được sử dụng trong Matlab

input

Nhập dữ liệu từ bàn phím

load

Tải các biến đã được lưu trong 1 file đưa vào vùng làm việc

pause

Tạm thời ngừng chương trình

save

Lưu giữ các biến vào file Matlab.mat

15/04/2013 Lập trình tính toán 22

1.3 Giới thiệu Matlab (tt.)

 Hệ thống trợ giúp “Help”:

− Xem cách sử dụng một hàm:

>> help

− Sử dụng menu Help

15/04/2013 Lập trình tính toán 23

1.3 Giới thiệu Matlab (tt.)

 Tài liệu tham khảo:

Introduction

(2006),

to

− Steven T. Karris simulink with engineering applications, Orchard.

− www.mathworks.com

15/04/2013 Lập trình tính toán 24