Chủ đề : Sử dụng phần mềm Matlab xây dựng giản đồ lograit nồng độ và tính pH trong dung dịch đa axit, đa bazo
Nội dung
Nội dung
1
Các phương pháp giải bài toán đa axit, bazo
2
Sử dụng phần mềm Matlab
3
Tài liệu tham khảo
I / Các giải các bài toán đa axit, đa bazo 1/ Dung dịch đa axit H3PO4 0,1M a/ Giải bài toán theo phương pháp proton • Các cân bằng trong dung dịch: H2O H+ + OH- KW= 10-14 H3PO4 H+ + H2PO4- (1) pK1 =2,12 => K1= 10-2,12 H2PO4- H+ + HPO42- (2) pK2=7,21 => K2= 10-7,21 HPO42- H+ + PO43- (3) pK3=12,36 => K3= 10-12,36 Có 5 ẩn số cần tìm là: [H+],[OH- ],[H2PO4- ],[HPO42- ], [PO43- ] • Điều kiện proton: [H+] = [OH- ] +[ H2PO4-] +[HPO42- ] + [PO43- ]
4/ Đa bazo Na3PO4 0,1M Tính pH của dung dịch Na3PO---4 0,1 M. Biết pK1= 2,12; pK2= 7,21; pK3=12,36. Phương trình phản ứng: Na3PO4= 3Na+ + PO-43CB= 0,1M • ta có: KW 10−14 = −12,36 = 10−1,64 KB1 = K3 10 KW 10−14 KB2 = = −7,21 = 10−6,79 K2 10 KW 10−14 = −2,12 = 10−11,88 KB3 = K1 10
Như vậy K B1 >> K B2 >> K B3 ta chỉ xét nấc 1 của bazo PO43-.
Lại có: CB.KB=10-2,64 >>KW= 10-14 => có thể bỏ qua OH- do nước phân ly. Xét cân bằng : ⇀ HPO4 2− + OH − PO43− + H 2O ↽
C: 0,1 []: 0,1-x
_ x
_ x
X2 = 101,64 0,1 − X
Hay :
X 2 + X .10−1,64 − 10−2,64 = 0 X 2 + 2, 29 X .10 −2 − 2, 29.10 −3 = 0
Giải được X 1 = 3, 775.10−2 ; X 2 = −6, 07.10−2 <0 (loại)
K B1 = 10 −1,64
đk: 0<x<0,1
Vậy: X 1 = OH − = 3,775.10−2 (M) −14 10 −13 ≈ 2,65.10 => H + = (M) −2 3,775.10
=> pH=12,58.
Kết luận, nhận xét a. Ưu điểm của phương pháp bảo toàn proton • Tính được pH của dung dịch • Đơn giản, ít ẩn số • Tính pH thuận tiện với phương trình bậc cao một ẩn số (n≥2) • Xác định nồng độ các ion trong dung dịch tại điểm cân bằng b. Nhược điểm của phương pháp bảo toàn proton • Cần chú ý chọn mức “O” cho phù hợp • Cồng kềnh, khó giải, mắc sai số trong khi giải
2.Sử dụng phần mềm Matlab 2.1. Giới thiệu chung về Matlab • MATLAB là viết tắt từ "Matrix Laboratory", được phát minh vào cuối thập niên 1970 bởi Cleve Moler 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 • Matlab là một trường toán số về lập trình, được thiết kế bởi công ty MathWorks
MATLAB gồm 5 phần chính
MATLAB
1
Ngôn ngữ MATLAB
2
Môi trường làm việc MATLAB
3
Đồ hình
4
Thư viện hàm toán học MATLAB
5
Trình giao diện ứng dụng MATLAB
2.2: Ứng dụng của MATLAB •
Giống như các máy tính cơ bản, MATLAB làm tất cả các phép tính toán học cơ bản như cộng, trừ, nhân, chia…
•
Giống như máy tính kỹ thuật, MATLAB dùng để tính toán các phương trình bao gồm: số phức, căn thức, số mũ, logarit, …
•
Giống như máy tính MATLAB khả năng lập trình, có thể lưu trữ, tìm kiếm lại dữ liệu, cũng có thể tạo, bảo vệ và ghi trình tự các lệnh để tự động phép toán khi giải quyết các vấn đề
•
MATLAB còn cho phép biểu diễn dữ liệu dưới nhiều dạng như: biểu diễn thông thường, ma trận đại số, các hàm tổ hợp…
•
Ngoài ra MATLAB cung cấp một môi trường phong phú cho biểu diễn dữ liệu, và có khả năng mạnh mẽ về đồ họa, có thể tạo các giao diện riêng cho người sử dụng (GUIs) để giải quyết những vấn đề riêng cho mình
II / Sử dụng phần mềm Matlab tính pH của dung dịch 1/ Dung dich H3PO4 0,1M • >> ka3=10^-11.88; • >> ka2=10^-6.79; • >> ka1=10^-1.64; • >> p=0:1/1:14; • >>ms=ka1*ka2*ka3+ka1*ka2.*10.^-p+ka1.*10.^(-p.*2)+10.^(-p.*3); • >> m1=10.^-p; • >> m2=10.^(p-14); • >> m3=0.1.*ka1*ka1*ka3./ms; • >> m4=0.1.*ka1*ka2.*10.^-p./ms; • >> m5=0.1.*ka1.*10.^(-p.*2)./ms; • >> m6=0.1.*10.^(-p*3)./ms; • >> y1=log(m1); • >> y2=log(m2); • >> y3=log(m3); • >> y4=log(m4);
• • • • • • • • • • • • •
>> y5=log(m5); >> y6=log(m6); >> plot(p,y1,p,y2,p,y3,p,y4,p,y5,p,y6); >>grid on; >>title('GIAN DO LOGARIT NONG DO CAC ION TRONG DUNG DICH H_3PO_4 0,1M'); >>xlabel('pH cua dung dich'); >>ylabel('log[i]'); >>gtext('\leftarrow log[H^+]'); >>gtext('\leftarrow log[OH^-]'); >>gtext('\leftarrow log[H_3PO_4]'); >>gtext('\leftarrow log[H_2PO_4^-]'); >>gtext('\leftarrow log[HPO_4^2^-]'); >>gtext('\leftarrow log[PO_4^3^-]');
Giản đồ logarit của H3PO4
• Kết luận: • Ta thấy tại vị trí lg[H2PO4- ] = lg[H+] thì [OH-], [PO43-] và [HPO42-] nhỏ hơn rất nhiều so với [H2PO4-]. Vì vậy khi tính PH của dung dịch bỏ qua (2) và (3) chỉ cần xét nấc (1) như sau: PTPƯ: H3PO4 H+ + H2PO4- K1=10-2,12 t=0 : 0,01 _ _ [ ] : 0,01-h h h ĐK: 0 < h < 0,01 H + H 2 PO4 − h2 K1 = = = 10 −2,12 0,1 − h [ H 3 PO4 ]
h2 + h.10-2,12 -7,58.10-4 = 0 h1=0,0239 (M) (t/m) và h2= -0,0319 (M) (loại) Vậy pH= -lg [H+] = - lg h1 = -lg (0,0239) = 1,62
2/ dung dịch Na2CO3 0,1M • » ka1=10^-6.35; • » ka2=10^-10.33; • » p=0:1/1:14; • » ms=ka1*ka2+ka1.*10.^-p+10.^(-p.*2); • » m1=10.^-p; • » m2=10.^(p-14); • » m3=0.1.*ka1.*10.^-p./ms; • » m4=0.2*10.^(-p.*2)./ms; • » m5=0.1.*ka1*ka2./ms; • » y1=log10(m1); • » y2=log10(m2); • » y3=log10(m3); • » y4=log10(m4); • » y5=log10(m5); • » plot(p,y1,p,y2,p,y3,p,y4,p,y5); • » grid on; • » title('GIAN DO LOGARIT NONG DO CAC ION TRONG DUNG DICH Na_2CO_3 0,1M'); • » xlabel('pH cua dung dich'); • » ylabel('lg[i]'); • » gtext('\leftarrow lg[H^+]'); • » gtext('\leftarrow lg[OH^-]'); • » gtext('\leftarrow lg(2.[H_2CO_3])'); • » gtext('\leftarrow lg[HCO_3^-]'); • » gtext('\leftarrow lg[CO_3^2^-]');
Giản đồ logarit của Na2CO3
3/ Dung dịch Na3PO4 0,1M • >> ka1=10^-2.12; • >> ka2=10^-7.21; • >> ka3=10^-12.36; • >> p=0:1/1:14; • >>ms=ka1*ka2*ka3+ka1*ka2.*10.^-p+ka1.*10.^(-p.*2)+10.^(-p.*3); • >> m1=10.^-p; • >> m2=10.^(p-14); • >> m3=0.1.*ka1*ka1*ka3./ms; • >> m4=0.1.*ka1*ka2.*10.^-p./ms; • >> m5=0.1.*ka1.*10.^(-p.*2)./ms; • >> m6=0.1.*10.^(-p*3)./ms; • >> y1=log(m1); • >> y2=log(m2); • >> y3=log(m3); • >> y4=log(m4); • >> y5=log(m5); • >> y6=log(m6); • >> plot(p,y1,p,y2,p,y3,p,y4,p,y5,p,y6); • >>grid on; • >>title('GIAN DO LOGARIT NONG DO CAC ION TRONG DUNG DICH Na_3PO_4 0,1M'); • >>xlabel('pH cua dung dich'); • >>ylabel('log[i]'); • >>gtext('\leftarrow log[H^+]'); • >>gtext('\leftarrow log[OH^-]'); • >>gtext('\leftarrow log[Na_3PO_4]'); • >>gtext('\leftarrow log[H_2PO_4^-]'); • >>gtext('\leftarrow log[HPO_4^2^-]'); • >>gtext('\leftarrow log[PO_4^3^-]');
Giản đồ logarit của Na3PO4 0,1M
4/ Dung dịch H2CO3 0,1 M • » ka1=10^-10,33; • » ka2=10^-6,32; • » p=0:1/1:14; • » ms=ka1*ka2+ka1.*10.^-p+10.^(-p.*2); • » m1=10.^-p; • » m2=10.^(p-14); • » m3=0.1.*ka1.*10.^-p./ms; • » m4=0.2*10.^(-p.*2)./ms; • » m5=0.1.*ka1*ka2./ms; • » y1=log10(m1); • » y2=log10(m2); • » y3=log10(m3); • » y4=log10(m4); • » y5=log10(m5); • » plot(p,y1,p,y2,p,y3,p,y4,p,y5); • » grid on; • » title('GIAN DO LOGARIT NONG DO CAC ION TRONG DUNG DICH H_2CO_3 0,1M'); • » xlabel('pH cua dung dich'); • » ylabel('lg[i]'); • » gtext('\leftarrow lg[H^+]'); • » gtext('\leftarrow lg[OH^-]'); • » gtext('\leftarrow lg([H_2CO_3])'); • » gtext('\leftarrow lg[HCO_3^-]'); • » gtext('\leftarrow lg[CO_3^2^-]');
Giản đồ logarit của dung dịch H2CO3 0,1M
TÀI LIỆU THAM KHẢO 1. Hóa phân tích I: Cân bằng ion trong dung dịch – Dương Văn Hiển & Hoàng Thị Tuệ Minh. 2. Hóa phân tích I: Cân bằng ion trong dung dịch – Nguyễn Tinh Dung. 3. MATLAB toàn tập – SinhvienIT.net.