Tải bản đầy đủ (.pdf) (125 trang)

Kỹ thuật tính toán trong công nghệ hóa học

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.28 MB, 125 trang )

Kỹ thuật tính tốn ừong cơng nghệ hóa học

Mục Lục
Lời nói đầu............................................................................................................................... 3
Phần I: Cơ sở về Matlab..........................................................................................................4
Chương I:Bắt đầu VỔ4 Matlab................................................................................................ 5
1.1 Nhập dữ liệu qua dòng lệnh............................................................................................. 5
1.2 Sử dụng help trực tuyến....................................................................................................6
1.3 Đường dẫn.........................................................................................................................7
1.4 Lưu và tải dữ liệu............................................................................................................. 7
Chương 2: Các cấu trúc cơ bản và biến................................................................................ 8
2.1 tính tốn với Matlab......................................................................................................... 8
2.2 Giới thiệu dạng dữ liệu.....................................................................................................9
Chương 3: Tính tốn vói ma trận và vec tơ .......................................................................10
3.1 Vec tơ............................... ............................................................................................... 10
3.1.2 Vec tơ cột và sự chuyển vị................................................................................. 12
3.1.3 Nhăn, chia và mũ của vec tơ .............................................................................12
3.2 M aừ ận............................................................................................................................ 14
3.2.1 Các ma frận đặc biệt..........................................................................................15
3.2.2 Xây dựng ma ừận và cách trích các phần tử của ma trận............................. 16
3.2.3 Các phép toán với ma trận................................................................................19
Chương 4: Đồ họa...................................................................................................................22
4.1 Đồ thị đơn giản............................................................................................................... 22
4.2 Vẽ đường........................................................................................................................ 23
4.3 Vẽ mặt............................................................................................................................. 26
Chương 5: Các luồng điều khiển..........................................................................................30
5.1 Các toán tử logic............................................................................................................ 30
5.2 Lệnh find......................................................................................................................... 30
5.3 Cậu lệnh if.......................................................................................................................32
5.4 Cấu trúc lặp.....................................................................................................................34
Chương 6: Phương pháp sổ...................................................................................................35


6.1 Đường cong hồi quy....................................................................................................... 35
6.2 Phép nội suy....................................................................................................................35
6.3 Giá trị của hàm số........................................................................................................... 36
6.3.1 Hàm 'inline'....................................................................................................... 37
6.4 Phép tính tích phân vạ tích phân....................................................................................38
6.5 Tính tốn số học và cấu trúc điều khiển........................................................................38
Chương 7: Viết chương trình trong Matlab.......................................................................39
7.1 Kịch bản và hàm m-fĩle................................................................................................. 39
7.2 Hàm m-file......................................................................................................................39
7.2.1 Những biến đặc biệt của hàm s ố ......................................................................40
7.2.2 Biến địa phương và biến toàn cục.................................................................... 41
7.2.3 Tính giá trị hàm số cách gián tiếp.................................................................... 41
1


Kỹ thuật tính tốn ừong cơng nghệ hóa học

Chương 8: Văn bân.................................................................................................................43
8.1 Chuỗi kí tự ...................................................................................................................... 43
8.2 Vào - ra dữ liệu .............................................................................................................. 44
8.2.1 Vào ra dữ ỉiệu từ bàn p h ím ..............................................................................44
8.2.2 Đưa dữ ỉiệu ra màn hình.................................................................................. 44
8.2.3 Xứ lífile văn bản...............................................................................................46
Phần II: ứng dụng của Matlab............................................................................................ 51
trong cơng nghệ hóa học........................................................................................................ 51
Chương 1: Dẩn nhiệt và đối lưu........................................................................................... 52
1.1. Dẩn nhiệt................ ....................................................................................................... 52
1.1.1. Tóm tắt lí thuyết.............................................................................................. 52
1.1.2. Vỉ dụ................................................................................................................. 53
1.2. Đối lưu.......................................................................................................................... 56

1.2.1. Tóm tắt lí thuyết............................................................................................... 56
ỉ.2.2. Vỉ dụ.................................................................................................................. 59
Chương 2: Bức xạ nhiệt và truyền nhiệt............................................................................. 64
2.1. Trao đổi nhiệt bức xạ giữa các vật............................................................................... 64
2.1.1. Tóm tắt lí thuyết............................................................................................... 64
2.1.2. V ỉđụ.................................................................................................................64
2.2. Truyền nhiệt và thiết bị trao đổi nhiệt..........................................................................67
2.2.1 Tóm tắt ỉí thuyết................................................................................................ 67
2.2.2. Vỉ d ụ ................................................................................................................. 68
Chương 3: Kỹ thuật tách chất.............................................................................................. 74
3.1 Cân bằng lỏng h ơ i.......................................................................................................... 74
3.1.1 Tóm tắt lỷ thuyết............................................................................................... 74
3.1.2 Ví dụ.... ..............................................................................................................75
3.1.3. Bài tập.............................................................................................................. 79
3.2 Phương pháp McCabe Thiele........................................................................................ 80
3.2.1 Tóm tắt lý thuyết............................................................................................... 80
3.2.2 Vỉ dụ.... ..............................................................................................................83
Chương 4: Kỹ thuật phản ứng............................................................................................. 89
4.1 Nhiệt động học................................................................................................................89
4.1.1 Tóm tắt ỉỷ thuyết............................................................................................... 89
4.1.2 Vi dụ.... ..............................................................................................................91
4.2 Các kỹ thuật tiến hành phản ứng....................................................................................94
4.2.1 Tóm tắt lý thuyết............................................................................................... 94
4.2.2 Vỉ dụ .... ..............................................................................................................95
4.2.3BỊÌ tập................................................................................................................ 99
Phụ lục.................................................................................................................................... 100
Tài liệu tham khảo................................................................................................................125

2



Kỹ thuật tính tốn ừong cơng nghệ hóa học

Lời nói đầu
Các bài tốn cơng nghệ hóa học trong thực tế là rất phức tạp, chúng ta cần có
cơng cụ hỗ ừợ để giải nó. Thực tế có rất nhiều phần mền, tuy nhiên, ừong cuốn sách
này, chúng tôi muốn giới thiệu đến các sinh viên nghành cơng nghệ hóa một cơng cụ
rất mạnh, đó là matlab .
Mat lab là một cơng cụ tốn học rất mạnh, ngồi ra nó cịn hỗ trợ ngơn ngữ lập
trình bậc 4 vói cấu trúc đơn giản, gần gũi, dễ tiếp cận, có thể lỉnh hoạt giải quyết các
bài toán thực tế để đạt được yêu cầu mong muốn. Do đó, việc sử dụng nó làm cơng cụ
để giải quyết các bài tốn kĩ thuật là rất tố t.
Nội dung cuốn sách bao gồm:


Phần I: Cơ sở về Matlab nhằm giới thiệu cho bạn đọc sơ lược về Matlab



Phần II: ứ n g dụng Matlab ừong cơng nghệ hóa học gồm có các chương:
Dẩn nhiệt và đối lưu; bức xạ và truyền nhiệt; kỹ thuật tách chất; kỹ thuật
phản ứ n g .

Trong từng chương có tóm tắt cơ sở lí thuyết, kèm theo mỗi chương đó thì có các
ví dụ và bài tập liên quan đi kèm, mỗi một ví dụ minh họa được giải bằng tay sau đó
được giải lại bằng matlab một cách sinh động và dễ hiểu, có tính tổng qt cao .
Đưa matlab vào cơng nghệ hóa là mục đích của chúng tôi. Tuy nhiên, do được
biên soạn lần đầu nên khơng thể ừánh được những sai sót, rất mong nhận được đóng
góp của bạn đọc để cuốn sách trở lên gần gũi hơn với các sinh viên công nghệ hóa
cũng như những người quan tâm đến lmh vực n à y .


3


Kỹ thuật tính tốn ừong cơng nghệ hóa học

Phần I: Cơ sở về Matlab
Matlab là cơng cụ tốn học, trước hết là các phép tính khoa học, ngồi ra nó cịn
cho phép vẽ các đồ thị, tính tốn ma trận, làm việc với các đa thức và các hàm tích
phân. Đồng thời,chúng ta có thể lập trình các chương trình tính tốn một cách linh hoạt
theo nhu cầu của mình. Đặc biệt Matlab tỏ ra rất manh mẽ trong việc thiết kế và tính
tốn vector và ma trận.
Khi khởi chạy Matlab thì xuất hiện một hoặc nhiều cửa sổ trên màn hình, trong đó
quan trọng nhất là Command window, nó cho phép nhập lệnh và hiển thị kết quả.

4


Kỹ thuật tính tốn ừong cơng nghệ hóa học

Chương I:Bắt đầu với Matỉab
1.1 Nhập dữ liệu qua dòng lệnh
*) Các lệnh sẽ được thực hiện ngay sau khi ấn phún Enter. Ket quả sẽ được hiển
thị trên màn hình nếu muốn. Tuy nhiên, nó chỉ thực hiện khi các dịng lệnh là hợp lệ.
Có thể tìm hiểu thêm từ menu Help.
Ví d ụ :
»

3 + 7.5


»

18/4

» 3 * 7
Chú ý : các dấu cách không quan ừọng trong Matlab
*) Kết quả tính tốn sê được tự động lưu vào biến ans
Ví d ụ :
»

14/4

ans =
3.5000
»

ansA(-6)

ans 5.4399e-04
Chúng ta có thể định nghĩa biến cho riêng mình. Ví dụ:
» a = 14/4
a
3.5000
» b = aA(-6)
b=
5.4399e-04
Dữ liệu sẽ được lưu vào biến a và b.
*) Khi kết thúc dòng lệnh kết thúc bằng dấu
thì sẽ khơng hiển thị kết quả ra
màn hỉnh, có thể kiểm chứng bằng hai biểu thức sau :

» 3 + 7.5
» 3 + 7.5;
*) Có thể thực thi nhiều lệnh cùng một lúc, các câu lệnh ngăn cách nhau bởi dấu
phẩy hoặc dấu chấm phẩy.
>> sìnịpì/4'), cos(pi); sin(O)
5


Kỹ thuật tính tốn ừong cơng nghệ hóa học

ans
0.707ì
ans
0
Chú ý : cos(pi) không được in ra màn hỉnh
*) Mặc định Matlab chỉ hiển thị 5 chữ số. Do đó, muốn có kết quả chính xác hơn
thì ta dùng lệnh form at long thì có thể hiển thị được tới 15 chữ số
»

312/56

ans =
5.5714
» format long
»

312/56

ans
5.57142857142857

Có thể tìm hiểu thêm:
>> help format
*) Khi dịng q dài có thể dùng dấu

để nối câu xuống dòng sau

>> sin(l) + sin(2) - sin(3) + sin(4) - sin(5) + sin(6) - ...
sin(8) + sin(9) - sin(10) + sin (ll) - sin(12)
ans
1.0357
*) Dịng kí tự đặt sau dấu “%” chỉ có tác dụng làm dịng chú thích
>> sin(pi) % dùng để tính giá trị của sin (pi)

1.2 Sử dụng help trực tuyến
Chúng ta có thể dùng cấu trúc
>> help <cầu ỉệnh>
Vd: help ops
Hoặc
>> lookfor <câu ỉệnh>
Vd : lookfor inverse

6


Kỹ thuật tính tốn ừong cơng nghệ hóa học

1.3 Đường dẫn
Trong Matlab, các lệnh hay các chương trình được chứa trong m-file, cái mà được
biên soạn từ file văn bản nhưng khi lưu vói đi mở rộng là “.m”. M-file chi chạy
được kbi nó nằm ở thư mục current working directory

1.4 Lưu và tải dữ liệu
Rất dễ dàng lưu hoặc gọi 1 biến nào đó, ta chỉ can click vào File- menu sau đó
chọn Save Workspace as... hoặc Load Workspace...
V d : khi save
>> s i = sin(pi/4);
»

c l = cos(pi/4); c2 = COS(pi/2);

»

str= ’hello world’;

»

save

»

save data

»

save numdata si, cl

»

save strdata sfr

% đây là 1 chuỗi

% lưu toàn bộ biến với định dạng matlab.mat
% lĩtu các biến với đpth dạng nhị phân data.mat
% lưu các biến số sl và c l tới numdata.mat
% hru biển chuỗi Sừ vào strdata.mat

» save allcos.dat c* -ascii
allcos.dat

% saves cl,c2 in 8-digit ascii format to

Còn khi load
»

load

»

load data s i cl

»

load Sừ- data

% tải tẩt cả các biến từfile matlab.mat
% chi tải riêng từng biển trong file data.mat
% tải tất cả các biến từ file strdata.mat

7



Kỹ thuật tính tốn ừong cơng nghệ hóa học

Chương 2: Các cấu trúc cơ bản và biến
2.1

Tính tốn với Matlab

Có 3 loại biến số học: số nguyên, số thực, số phức. Matlab cịn hỗ trợ thêm
những loại khơng phải là số: Inf (giá trị vơ cực, ví dụ : 1/0 sẽ cho kết quả như vậy)
hoặc NaN (không phải là số, là kết quả của các phép tính như 0/0 hoặc vơ cùng - vơ
cùng)
Chúng ta có thể viết các biểu thức trên dòng lệnh của Matlab :
»

(23*17)/7

Kết quả sẽ là :
ans
55.857!
Matlab có 6 tốn tử cơ bản là

\ , /(chia phải hoặc ừái) và A(hàm mũ)

Chú ý sự khác nhau của toán tử chia trái và chia phải :
>> 19/3

% thực hiện phép chia: 19/3

ans
6.3333

»

19\3, 3/19

% thực hiện phép chia: 3/19

ans =
0.1579
ans
0.1579
Những hàm cơ bản về lượng giác, mũ ... có thể tìm hiểu
>> help elfim
Bài tập:
Xác định giá trị các biểu thức dưới đây bằng tay và bằng Matlab để so sánh. Chú
ý tới sự khác nhau giữa chia trái và phải, và dùng lệnh help để tìm hiểu về các hàm:
round, floor, ce il...
•2/2-3
• 8 - 5\4
• 8 - (5\4)
• 7 - 5 -4\9
• 6 - 2/5 + 7A2 - 1
8


Kỹ thuật tính tốn ừong cơng nghệ hóa học

• 10/2\5 - 3 + 2 - 4
• 3A2/4
• 3A2A3
• 2 + round (6/9 + 3 - 2)12

• 2 + floor (6/9 + 3 - 2)/2
• 2 + ceil (6/9 + 3 - 2)12
• X = pi/3, x = x - l , x = x + 5, x = abs(x)/x
2.2 Giới thiệu dạng dữ liệu
Mặc dù tất cả các tính tốn số trong Matlab đều được tính tốn với độ chính xác
kép (double precision), nhưng khuôn dạng của dữ liệu đưa ra có thể địnhdạng lại nhờ
các lệnh định dạng của Matlab. Các biến ngầm định cũng nhưcác biến của người sử
dụng định nghĩa đều có thể đưa ra nhiều định dạng khác nhau. Đinh dạng được chọn
nhờ sử dụng lệnh form at tiếp đến là chỉ định long hay short và cuối cùng có thể là
dạng biểu diễn của dữ liệu, cụ thể là e đối với dạng hàm mũ, f đối dạng dấu phẩy
động(ngầm định là f). Một khuôn dạng ít dùng hơn là rat để đưa dữ liệu ra dưới dạng
phân số (chính xác hoặc gần đúng ).
Ví dụ:
>> 4*atan(l)
ans =
3.1416
» format longe
»

ans

ans =
3.141592653589793e+000
» format lo n g f
»

ans

ans
3.14159265358979

» format short e
»

ans

ans
3.1416c ■000
» format rat
»

ans

ans
355/113
9


Kỹ thuật tính tốn ừong cơng nghệ hóa học

Chương 3: Tính tốn vói matrận và vec tơ
Nên tảng của Matlab chính là ma trận (hay mảng).Trường họp đặc biệt:
1 ma trận 1X1: là 1 số vô hướng;
1 ma trận chỉ có 1 dịng hoặc 1 cột: là 1 vec tơ
3.1 Vec tơ
Vec tơ hàng là 1 danh sách các số được ngăn cách nhau bởi dấu cách hoặc dấu
phẩy. Số lượng phần tử của 1 vec tơ được gọi là length của vec tơ. Các phần tử nhập
vào phải đặt ừong dấu “[ ]”. Vd:
>> V = [-1 sm(3) 7]
V=
-1.0000 0.1411 7.0000

»

length(v)

ans
3
Một số phép tốn có thể thực hiện với vec tơ như nhân vô hướng, cộng hoặc trừ
từ các vec tơ khác có số phần tử tương tự, hoặc giữa 1 số với vec tơ. Mọi phép toán
đều được thực hiện trcn từng phần tử. Các vec tơ cũng có thể được xây dựng từ các
phần tử hữu hạn.
»

V = [-1 2 7J; w = [2 3 4];

»

z - V+ w

% cộng từng phần tử

1 511
»

vv = V + 2

% cộng 2 vào tất cả các phần tử vào vec tơ

vv =
149
»


t = [2*v, -wj

ans -2

4

14

-2

-3

-4

Đồng thời 1 phần tử có thể được trích dẫn ra, hoặc chinh sửa:
»

v(2) = -1

% sửa phần tử thứ 2 của V

-1 -1 7
»

w(2)

% hiển thị phần tử thứ 2 của w
10



Kỹ thuật tính tốn ừong cơng nghệ hóa học

ans 3

3.1.1 Kỉ tự hai chẩm và ừích các phần tử của vec tơ
Dấu hai chấm là phím tắt quan ừọng dùng để tạo ra vec tơ hàng:
»

2:5

ans =
2

3

»

-2:3

4

5

0

1 2

ans
2


ì

3

Dạng tổng quát “first:step:last”, khởi tạo vec tơ dòng bắt đầu từ phần tử first, kết
thúc tại phần tử last và với độ dài bước là step. Nếu khơng chỉ ra step, thì giá trị mặc
định nó là bằng một.
»

0.2:0.5:2.4

ans
0.2000
»

0.7000

1.2000

1.7000

2.2000

-3:3:10

ans =
-3
»


0

3

6

1.5:-0.5:-0.5

9
% cũng có thể dùng bước nhảy âm

% -1:2:6 => -1

»

r(3:6)

1 3

5

% lẩy ra các phần từ của r cổ vị tri từ 3 đến 6

ans
3
»

5

2


3

r(l:2:5)

%lấy ra các phần tử của r có vị trí 1,3 và 5

ans =
- 1 3

2

11


Kỹ thuật tính tốn ừong cơng nghệ hóa học

>> r(5:-l:2) % chuyện gì sẽ xảy ra với trường hợp này?
3.1.2 Vec tơ cột và sự chuyầĩ vị
Để tạo 1 vec tơ cột, chúng ta phải tách các phần tử bởi phím ‘enter’ hoặc dấu
chấm phẩy:
» z = [1
7
7];
z=
1
7
7
» u = [-1; 3; 5]
u=

-1
3
5
Các phép toán cũng được thực hiện 1 cách tuơng tự, và cũng có thể chuyển dạng
thành vec tơ hàng:
»

u ’ % u là vec tơ hàng cỏn u ’ là vec tơ cột

ans =
- 1 3

5

3.1.3 Nhân, chia và mũ của vec tơ
Chúng ta có thể tính tích vơ hướng của 2 vec tơ có cùng độ dài:
»

u = [-1; 3; 5]

»

V = [-1; 2; 7]

» u * v

% 1 vec tơ cột
% 1 vec tơ cột
% chúng ta không thể nhân vec tơ cột với vecto cột


??? Error using ——> *
Inner maừix dimensions must agree.
»

u’*V

% đây mới là tích vơ hướng

ans =
Một cách khác để tính tích vơ hướng là sử dụng dấu
>> u .* V

%nhân từng phần tử cho nhau

1
12


Kỹ thuật tính tốn ừong cơng nghệ hóa học

6
35
»

sum(u. *v)

% cách lẩy tích vơ hướng

ans
42

»

z = [4 3 1];

% z l à vec tơ hàng

»

sum(u *z)

% tích vơ hướng

ans

Trong tốn học, chứng ta không chia vec tơ cho vec tơ. Tuy nhiên, ừong Matlab
chúng ta có thể chia từng phần tử cho nhau của các vec tơ có cùng kích cỡ và cùng
loại:
>> Jt = 2:2:10
X

2 4 6 8 10
» y - 6:10

y

=

67 8910
»


x./y

ans
0.3333
»

0.5714

0.7500

0.8889

1.0000

z = -1:3

z—
-1 0
»

1

2

3

x./z

% chia 4/0, kết quả ra In f


Warning: Divide by zero.
ans
-2.0000
»

In f

6.0000

z./z

4.0000

3.3333

% chia 0/0, kết quả ra NaN

Warning: Divide by zero.
13
ans
1 NaN
Tốn tử
»

1

1

1


có thể thực hiện bởi 1 đại lượng vô hướng với 1 vector:

x=l:5; 2/x

% không thể thực hiện


Kỹ thuật tính tốn ừong cơng nghệ hóa học

??? Error using ==> /
Matrix dimensions must agree.
»

2./x

% nhimg thế này thì được!

ans
2.0000

1.0000

0.6667

0.5000

0.4000

3.2 M a trận
Một ma trận

'l 2 3Ì
A= 4 5
7 8
Được định nghĩa trong Matlab như sau:
»A = [l

2

3; 4

5

6; 7

8

9]

% nhập theo hàng

A =
1

2

3

4

5


6

7

8

9

Hoặc cũng có thể:
» A 2 = [1:4; -1:2:5]
A2 =
1 2
-1
»

1

3

4

3

5

A3 = [1
-4

3

7]

A3 =
1

3

-4

7

Phép toán chuyển vị ma ừận cũng có thể thực hiện 1 cách dễ dàng:
»A 2
A2 =
1

2

3

4

-1

1

3

5


»

A 2’

% chuyển vị A2

ans =
14


Kỹ thuật tính tốn ừong cơng nghệ hóa học

/

-1

2 1
3

3

45
»

size(A2)

% lấy cỡ của A2

ans
2 4

»

size(A2’)

ans =
4

2

3.2.1 Các ma trận đặc biệt
» E = []

% tạo lập 1 ma trận rỗng!

E =

[]
» size(E)
ans
0
»

0
I = eye(3);

% ma trận đơn vị 3x3

/ =
16
1


0

0

0

1

0

0

0

1

»

X

- [2; -1; 7J; I*x

% I is such thatfor any 3-by-l X holds I*x = X

am 2

-1
7
»


r - [1 3 -2J; R = diag(r)

% tạo lập 1 ma trận chéo với r nằm trên đường

chéo
R =
1

0

0

0

3

0
15


Kỹ thuật tính tốn ừong cơng nghệ hóa học
0

0 - 2

»

A = [1 2 3; 4 5 6; 7 8 9];


»

diag(A)

% ừích dẫn đường chéo của ma trận A

ans
ì
5
9
»

B = ones(3,2)

B =
1

1

1

1

1

1

» c = zeros (size(C‘) )
kích thước bằng ma ừận C ’


% một ma trận toàn phần tử toàn là sổ 0 với

c=
0

0

0

0

0

0

»

D = rand(2,3)

% tạo 1 ma trận với các phần tử là các so ngẫu nhiên

D=
0.0227

0.9101

0.9222

0.0299


0.0640

0.3309

»

V = linspace(l,2,4)

% mộtvec tơ được sử dụng như 1 ma ừận

V=
1.0000

1.3333

1.6667

2.0000

3.2.2 Xây dựng ma trận và cách trích các phần tử của ma trận
Người ta thường xây dựng một ma trận lớn hơn từ những cái nhỏ hơn:
» x = [ 4 ; - l ] , y = [-l 3]
X =

4
-1

y

=


-1 3
»X= [xy7

% Xg ồm có c ộ t x v à y ’
16


Kỹ thuật tính tốn ừong cơng nghệ hóa học

x=
4-1
-1 3
»

T - [-1 3

4; 4

»

T - [T; t]

5

6J;

t

= l:3;


% thêm hàng cho T, hàng đó là vec tơ t

T=
- 1 3

4

4

5

6

1

2

3

»

G = [1 5; 4

»

T2 = [T GJ

5; 0


2];% G là m a trận 2*3
% ghép 2 ma trận

T2 =
-1

3

4

4

5

6 4

5

1

2

3 0

2

»

1


5

T ỉ = [T; Gones(3,ỉ)J

% G l à 3*2, Tlà 3*3

T3 =
- 1 3

4

4

5

6

1

2

3

1

5

1

4


5

1

0

2

1

» T 3 = [T; G ’] ;
»

[G ‘ diag(5:6); ones(3,2) TJ

% chúng ta cso thể nối nhiều ma trận

am
4

0

5

0

5

2


0

6

1

-

1

4

1

1
1

3

4
5

2

6
3

17



Kỹ thuật tính tốn ừong cơng nghệ hóa học

Một phần có thể được trích tù 1 ma trận tương tự như cách lấy của vectơ. Mỗi
phần tử trong ma trận được mang chỉ số bởi vị trí của nó trong hàng và cột. Ví dụ:
» A = [1:3; 4:6; 7:9]
A =
123
4 56
7 89
» Ả (1 ,2 ),A (2 ,3 ),A (3 ,1 )
ans 2

ans 6
arts
7

»

A(4,3) % this is not possible: A is a 3-by-3 matrixl

??? Index exceeds matrix dimensions.
»

A(2,3) - A(2,3) + 2*A(1,1)

% sửa giá trị của phần tửA(2,3)

A =
1


2

3

4

5

8

7

8

9

Ta có thể dễ dàng mở rộng ma trận:
>> A(5,2) = 5

% gán 5 vào vị ừi (5,2);

Á =
1

2

3

4


5

8

7

8

9

0

0

0

0

5

0

»

A(4,:) = [2,1, 2];

% gán vec tơ [2, 1, 2] cho hàng thứ 4 của A

»


A(5,fl,3J) = [4, 4];

% gán : A(5,l) = 4 và A(5,3) = 4

»

A

Lấy các phần tử khác của A:
>> A(3,:)

% ừich ra hàng thứ 3 của A
18


Kỹ thuật tính tốn ừong cơng nghệ hóa học

ans 7
»

8

9

Ả(:,2)

% trích ra cột thứ 2 của A

ans

2

5

8
1
5
»

A(1:2,:)

% trích ra hàng 1 và 2 của A

ans =
1

2

3

4

5

8

»

A([2,5],l:2)


% trích ra các phần của A

ans 4

5

4

5

Khái niệm về ma trận rỗng [] rất hữu ích trong Matlab. 1 số hàng hoặc cột của ma
trận có thể được loại bỏ bằng cách gán nó bằng 1 ma trận rỗng:
» c = [l
»

2

3

4; 5

D = C; D(:,2) = []

6

7

8;1

1


1

1];

% copy c vào D, xóa cột thứ 2 của D
% xóa hàng 1 và hàng 3 của c

3.2.3 Các phép toán với ma trận
Các phép toán thực hiện với ma trận cũng tuơng tự với vec tơ:
>> B = [1

-1

3; 4

0

7]

B =
1

-1

3

4

0


7

»

B2 - [1

2; 5

»

B = B + B2’

1; 5

6];

% cộng 2 ma trận. Tại sao phải thay B2 ’ cho B2?

B =
2

4

8

6

1


13
19


Kỹ thuật tính tốn ừong cơng nghệ hóa học

> > B-2

% ừ ừ các phần tử của B cho 2

ans 0

2

6

4

-1

11

»

ans - B./4

% chia các phần tử của B cho 4

ans
0.5000


1.0000

2.0000

1.5000

0.2500

3.2500

»

4/B

% đây là điầi không thế

??? Error using ==> /
Matrix dimensions must agree.
»

4./B

% nhưng đây lại có thể ; tương đương với: 4. *ones(size(B')) ./ B

ans 2.0000

1.0000

0.5000


0.6667

4.0000

0.3077

» c - [1
»

B .*

-1

4; 7

c

0

-1];

% nhân tùng phần tử

ans
2

-4

32


42

0

-13

»

ans. ^3 - 2

% thực hiện cho tất cả các phần tử

ans 6

-66

327

66

74086

-2

-2199

20

»


a n s ./ B.A2

ans
0.7500

-1.0312

63.9961

342.9907

-2.0000

-1.0009

»

r - [1 3 -2J; r * B2

ans
ù

-7

Khi thực hiện nhân ma ừận:
» b = [13 -2];
»

B = [1 -1 3; 4 0 7]

20


Kỹ thuật tính tốn ừong cơng nghệ hóa học

B =
1

-1

3

4

0

7

»

b *B

% không thể thực hiện: b là ma trận 1*3 và B là 2*3

??? Errorusmg ==> *
Inner matrìx dimensions must agree.
»

b *B’


am
-8

»

-10

B ’ *ones(2,l)

am =

» c = [3 1; 1 -3];
»C *B
ans
7

-3

16

-11

-1

-18

»

C.A3% thực hiện ừên từng phần tử


ans
27

1

1

-27

»

CA3

% tương đương với

c*c*c

ans
30

10

10

-30

»

ones(3,4)./4 * diag(l:4)


ans =
0.2500

0.5000

0.7500

1.0000

0.2500

0.5000

0.7500

1.0000

0.2500

0.5000

0.7500

1.0000

21


Kỹ thuật tính tốn trong cơng nghệ hóa học


Chương 4: Đồ họa

4.1 Đồ thị đom giản
Đơn gỉẳn nhất, đồ thị có thể được vẽ nhờ nối các điểm được đánh dấu trên mặt
phẳng tọa độ Đề các. Ví dụ:
>>

X

= 0:10;

» y = 2.*x;% ta được y = [1 2 4 8 1 6 32 64 128 256 512 1024]
» plot(x,y)
»

% vẽ

semilogy(x,y)

Để đưa nhiều đồ thị lên cùng một cửa sổ ta dùng lệnh subpot, chính xác hơn,
subplot(m,n,i) tạo nan bân vẽ, được sắp xếp ừong mảng với m dòng và n cộ t Lệnh này
cũng bẳt plot tiếp theo phải chuyển đến hệ tọa độ thứ i (đếm 1heo số dịng). Ví dụ:

»

t=(0:J:2*pỉ);

»

subpìot(2,2,l)


» plot(t,sin(t))
»

subpĩot(2,2,2)

» pỉot(t,cos(t))
»

stibpỉot(2,2,3)

» plot(t,exp(t))
»

subpỉot(2,2,4)

» pỉot(t,l./(l+ tM ))

22


Kỹ thuật tính tốn ừong cơng nghệ hóa học

4.2 Vẽ đường
Hàm plot được sử dụng để vẽ dữ liệu trên mặt phẳng. Cho vec tơ X gồm các
hoành độ x l .,,xn và vec tơ y gồm các tung độ y l,...yn, lệnhplot(x,y) sẽ vê các điểm
từ (xl,yl) đến (xn,yn). Theo mặc định, các điểm này sẽ được nối theo thứ tự bởi các
đoạn thẳng.
Câu lệnh tổng quát:
Mâu của dường vẽ


Ký tụ hiên thị

y

yellow

. dâu châm(point)

m

magenta

0

vòng tròn

c

cyan

X

dấu X

dashdot

r

red


+

dấu cộng

dashed

g

green

*

dấu sao

b

blue

s hĩnh vuông

w

white

d kim cương

k

black


A

tam giác chi lên

V

tam giác chỉ xuống

<

tam giác chi sang

>

tam giác chi sang

Nét vẽ
solid
:

dotted

trái
phải
p

ông sao 5 cánh

h


ông sao 6 cánh

Ví dụ:
Lệnh plot(x,y, ’ro: ’) vê đường nối bởi các chấm màu đỏ với điểm dữ liệu là vòng
tròn nhỏ.
Lệnh plot(x,y,’y-’,x,y,’go’) vẽ dữ liệu 2 lần với đường nối liền nét màu vàng và
các điểm dữ liệu là các vòng tròn xanh lá cây.
Để vê tứ giác với các đỉnh (0,0), (1,1), (4,2), và (5,-1) ta có thể dùng lệnh:
»

x=[0 1 4 5 0];

» y = f 0 1 2 - 1 0];
» plot(x,y)
Ta cũng có thể gần đúng đồ thị hàm số bằng cách lấy nhiều điểm. Ví dụ vẽ đồ thị
hàm số y = x 3/ [-2;2]. Trước hết, ta lấy vec tơ dòng với các thành phần biến thiên từ -2
đến 2 với độ dài bước chia là 0.05
»

x=-2:.05:2;


Kỹ thuật tính tốn trong cơng nghệ hóa học

Tiếp đó là xảc định các giả trị của y bằng cách lấy lũy thừa tùng phần tử của X.
»

y=x.A3;


Cuối cùng:
»

Plot(x,y)

Ta đặt tên cho hình vẽ nhờ đánh lệnh
» titỉe(‘D o thi cua ham f(x)=xA3 ’)
Do thi cua ham so ((?:)=X3

Hình J_i ĐỒ thị hàm số f i x ) = X3
Vẽ cảc đường cong tham số cũng tương tự:
r(t) = (2í cosí/(í + l),2í sừư / ự +1)) với t e [0,4#],
»

t=0:J:4*pi;

»

x=2*t. *cos(t)./(t+ỉ);

» y =2 *t. *sin(t)./(t+l);
» pỉot(x,y);
»

titỉe( '(2t COS i/ (t+l)),2tsin t/(t+l)f)

Chủ v: các phép toán nhân chia phải được ihục hiện trên từng phần tử(nghĩa là
./ hoặc .A).
Để có tỷ lệ chính xác ta dùng:
»


axis equal

24


Kỹ thuật tính tốn trong cơng nghệ hóa học

Iỉ

05

Hình 2 : Đồ thị hàm sổ cho bởi phương trình tham số
Để vẽ nhiều đường trên cùng 1 hình ta dùng lệnh “hold ori\
Ví dụ: vẽ 2 đường trịn
trình tham sế:

X1

+ y 1 = 4 và (x -1 )2 + ( y - l ) 1 = 1. Chuyển sang phương

rxự) = (2cos t,2 sin í) và r2(í) = (1+cos t,1+ sin í) với t € [0,2#].

»

t=ồ:pi/20:2 *pi;

» pỉot(2*cos(t),2*sin(t))
»


hoỉd on

» pỉot(ỉ +cos(t),l +sin(t))
»

axỉs equaỉ

»

titỉeCCac dtiong tron xA2+yA2=4 va (x-ỉ)A2+(y-ỉ)/x2 = ĩ')

26

-2

15

-1

-05



0,5

1






25

Hình 3: vẽ đồ thị nhiều hàm trên cùng một hình
Trong khơng gian 3 chiều thì thay lệnh plotbằng plot3. Ví dụ:
Để vẽ đường tham số r(í) = (cos(0»sin(í),í) với t € [0,8^] ta có thể làm như sau:
t=0:.ỉ:8*pi;
» pỉot3(cos(t),sin(t),t)
25


×