1. Trang chủ
  2. » Giáo án - Bài giảng

Bài tập tin ứng dụng

32 456 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 32
Dung lượng 1,31 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

+ Phần 2: Lập chơng trình tính các thông số nhiệt động của môi chật nhiệt.. Ví dụ một số bài toán sau: - Tính nhiệt thiết bị trao đổi nhiệt - Tính nhiệt thiết bị sấy - Tính nhiệt chu

Trang 1

TIN HọC ứNG DụNG

Bài tập

+ Phần 1: Tập hợp các chơng trình đã thức hiện trên lớp về các nội dung: vào/ra dữ liệu, xử lý mảng, con trỏ, hàm

+ Phần 2: Lập chơng trình tính các thông số nhiệt động của môi chật nhiệt

- Lựa chọn một loại môi chất

- Xây dựng các quan hệ giữa các thông số nhiệt động

+ Phần 3: Lập chơng trình giải một bài toán nhiệt(tính toán chu trình nhiệt hoặc thiết bị nhiệt) Ví dụ một số bài toán sau:

- Tính nhiệt thiết bị trao đổi nhiệt

- Tính nhiệt thiết bị sấy

- Tính nhiệt chu trình máy lạnh nén hơi 1 cấp

- Tính toán cân bằng nhiệt và cân bằng vật chất cháy lò hơi

- Tính nhiệt tầng Tua bin hơi nớc

- Tính nhiệt chu trình Tua bin khí

- Tính nhiệt chu trình Tua bin hơi nớc

-

Trang 2

Thực hiện

1 Phần 1:Tóm tắt lý thuyết của ngôn ngữ lập trình C

a.Vào ra dữ liệu

Hiển thị dữ liệu ra màn hình: printf();

Cú pháp: printf(<chuỗi ký tự>,[danh sách đối]);

VD: Hiển thị giá trị x=20 ra màn hình

int x;

x=20;

printf("Gia tri cua x la:%d",x);

Vào dữ liệu từ bàn phím scanf();

Cú pháp: scanf(<chuỗi ký tự>,{danh sách đối});

- Sử dụng biến trung gian để nhập dữ liệu

VD: Vào dữ liệu cho mảng nguyên x có 10 phần tử:

Trang 3

Cú pháp:<kiểu dữ liệu>*<tên con trỏ>;

VD: Khai báo biến con trỏ thực với tên là px

double *px;

Toán tử &,*

- Toán tử &:

&(tên biến) -> địa chỉ biến

VD: printf("\n Dia chi cua bien x la:&p",&x);

- Toán tử *:

*<Tên con trỏ> -> trả lại nôi dung của ô nhớ(biến) mà con trỏ trỏ tới VD: x=5.7;

px =&x;

printf("Gia tri cua x la:%lf",*px);

- Các phép toán với con trỏ:

* Gán 1 địa chỉ cho 1 con trỏ

Trang 4

Chú ý: con trỏ sẽ trỏ tới ô nhớ có địa chỉ tăng(giảm) 1 số lợng bằng số byte tơng ứng với kiểu dữ liệu của con trỏ

VD: px -> có giá trị ACF1

px+1 -> có giá trị ACF9

- Con trỏ void();

Là kiễu void rỗng, không tơng ứng với bất kỳ ô nhớ nào, có thể nhận đợc

địa chỉ của bất kỳ 1 biến nào

- Liên hệ giữa con trỏ và mảng

Khi khai báo 1 mảng thì đồng thời có 1 hằng con trỏ có tên trùng với tên của mảng trỏ vào phần tủ đầu tiên của mảng

Do đó muốn truy cập phâng tử thứ i của mảng x có nhiều cách

VD: int x[10],*pi,i;

pi=x;

printf("Gia tri phan tu thu %d cua mang la%d",i+1,*(x+i));

printf("Gia tri phan tu thu %d cua mang la%d",i+1,pi[i]);

printf("Gia tri phan tu thu %d cua mang la%d",i+1,*(pi+i));

printf("Gia tri phan tu thu %d cua mang la%d",i+1,x[i]);

Trang 8

printf("\n nhap n=");

scanf("%d",&n); m=0;k=0; a=0;

do{for(i=0;i<=n+a;i++)

Trang 9

p=0;

for(j=0;j<=n;j++)

{l[j]=1;

for(i=0;i<=n;i++)if(i!=j)

l[j]*=(xo-x[i])/(x[j]-x[i]);

p+=y[j]*l[j];

}yo=p;

printf("\n gia tri tai %10.4lf la%10.4lf",xo,yo);

printf("\nkhong muon tiep tuc nhap xo thi an 1 en ter");scanf("%lf",&t);

}while(t!=1);

printf("\n khong muon tiep tuc nhap n thi an 2 enter");

scanf("%lf",&tt);

if(tt!=2){

printf("\n so diem ban muon nhap them la:");

scanf("%d",&k); m=n+1;n=n+k; a=k-n-1;

}}while(tt!=2);

Trang 10

yy=y[i]+(xx-x[i])*(y[i+1]-y[i])/(x[i+1]-x[i]);printf("\n gia tri tai x=%lf la: y=%lf",xx,yy);getch();

}

KÕt qu¶ ch¹y:

Trang 11

for(q=0;q<5;q++){

Trang 12

printf(" ");

for(l=0;l<i+3;l++)

printf("$");}

printf("\n");}

getch();

}

Trang 13

2 Phần 2:Tính nhiệt thông số nhiệt động của hơi b o hoà ẩm ã

a.Mở đầu

Trong các bài toán nhiệt môi chất đợc sử dụng khá nhiều là R12 Do vậy việc tra cứu các thông số của R12 là một quá trình thờng xuyên đợc sử dụng khi giải các bài toán liên quan tới nó Việc có một chơng trinh tra cứu các thông số hơi R12 sẽ đem lại sự thuận tiện và hữu ích cho ngơi sử dụng để giải toán

Trong chơng trình này ta mới dừng lại ở việc tra cứu các thông số của hơi bão hoà ẩm theo thông số nhiệt độ t(oc) hay áp suấp p(bar) và độ khô x

b.Bài toán

Tra cứu thông số của hơi bão hào ẩm theo thông số t(oc)hay p(bar) và độ khô x Trong đó các thông số cần phải tìm là thể tích riêng v(m3/kg), entanpi i(kj/kg), entropi s(kj/kg.k) ,nội năng u(kj/kg)

Trên thực tế đây là một bài toán nhiệt đơn giản, cả về mặt lập trình C lẫn lý thuyết nhiệt

Các giá trị s’,s’’,i’,i’’,v’,v’’ đợc tra từ bảng

Chúng ta chỉ cần có một bảng số liệu và đa chúng vào chơng trình sau đó dựa vào thông số đa vào và một số công thức nhiệt để tra cứu Từ đó ta có thể hoàn thiện một chơng trình tính nhiệt cơ bản của một môi chất đã chọn

Về thuật giải bài toán này là khá đơn giản, vì vậy mà ta không trình bày ở đây Chúng ta có thể tìm hiểu chúng luôn thông qua nội dung bài giải sau

c.Nội dung bài giải:

Chú ý rằng nhiệt độ là số nguyên : t=-80;-79;-78;,,,,,,,,;78;79;80 nên ta không cần nhập vào

main()

Trang 14

{int j,k,index,chon;

float x;

double tt,u,v,i,s,pp,ss1,ss2,hh1,hh2,rr,ff1,ff2;

do

{printf("\n1:Tinh toan thong so nhiet");

printf("\n2:Bang hoi bao hoa cua R12");

printf("\n Ban nhap vao nhiet do t hay ap suat p?");

printf("\n Nhap nhiet do t(oc) thi an 1 enter ,nhap ap suat

p(bar) thi an 2 enter");

scanf("%d",&chon);

if(chon==2)

{printf("\n Ban hay nhap vao ap suat p=");

break;

p[j]);

tt=t[j]+(pp-p[j])*(t[j+1]-t[j])/(p[j+1]-}if(chon==1)

{ printf("\n Ban hay nhap vao nhiet do cua R12 de tra cac thong so!");

printf(" t(oc)=");scanf("%lf",&tt);

}do

{printf("\n Ban hay nhap do kho (0<=x<=1)x=");

Trang 15

if((x<0)||(x>1))

{printf("\n Ban da nhap khong dung gia tri cua do kho x!");

printf("\n Ban hay nhap lai!");}

}while(x<0||x>1);

ss1=s1[j]+(tt-t[j])*(s1[j+1]-s1[j])/(t[j+1]-t[j]);ss2=s2[j]+(tt-t[j])*(s2[j+1]-s2[j])/(t[j+1]-t[j]);printf("\n Ta tra duoc cac thong so :");

printf("\n Nhiet do:%lf (K)",tt+273);

printf("\n Ap suat bao hoa:%lf (bar)",pp);

printf("\n Khoi luong rieng o the long(soi):%lf (kg/dm3)",ff1);

printf("\n Khoi luong rieng hoi bao hoa kho:%lf (kg/m3)",ff2);

printf("\n The tich rieng o the long: %lf (dm3/kg)",1/ff1);

printf("\n The tich rieng hoi bao hoa kho: %lf (m3/kg)",1/ff2);

printf("\n Entanpi o the long(soi): %lf (kj/kg)", hh1);

printf("\n Entanpi hoi bao hoa kho: %lf (kj/kg)",hh2);

Trang 16

printf("\n Voi do kho x=%4.3lf=>cac thong so cua hoi bao hoa am!",x);

for(int j=-80;j<=80;j++)

printf("\n %d %6.4f %6.4lf %5.4lf %5.4lf

%5.1lf %5.2lf %5.4lf

%5.4lf",j,p[j+80],f1[j+80],f2[j+80],1/f1[j+80],1/f2[j+80],h1[j+80],h2[j+80],s1[j+80],s2[j+80]);

break;

}}

while (index!=3);}

Trang 19

3 Phần 3:Bài toán tính nhiệt Tua bin hơi nớc 1 tầng cánh.

i0

ik

nuyoi(ηoi): hiệu suất tơng đối nuyoi = Hi/H0;

Hi: nhiệt giáng sử dụng

H0: nhiệt giáng sử dụng tầng

nuyol(ηol): hiệu suất trên cánh quạt

b.Bài toán

Tính tầng tuabin đơn khi biết các đại lợng đầu vào: Lu lợng hơi G(kg/s), áp suất hơi trớc tầng p0(bar), tốc độ hơi vào tầng C0(m/s), áp suất sau tầng p2(bar), tần số quay n(s−1), đờng kính trung bình d(m)

Ta cần tính toán các thông số của tuabin: tốc độ ra của cánh ống phun, cánh

động, tốc độ vào cánh động(C1t, C1, C2, W1, W2t, W2),diện tích ra dãy ống phun, dãy cánh động, chiều cao ống phun, cánh động các góc trên tam giác tốc độ(ở bài lập trình ta chỉ tính tang của các góc này,F1, F2, l1, l2, tgβ1,tgβ2,sinβ2)

Tam giác tốc độ:

Error: Reference source not found

Trang 20

Trong bài ta chỉ xét đến 2 loại tổn thất chủ yếu là: tổn thất trong dãy ống phun

Hc(kj/kg), tổn thất trong dãy cánh động Hl(kj/kg) và từ đó tính đến năng lợng lý thuyết của tầng E0(kj/kg), nhiệt giáng sử dụng tầng(Hi), công suất trong của tầng

Pi(kW)

Khi tính toán tầng thờng chọn độ phản lực rô=0.1->0.5

Chấp nhận hệ số lu lợng muy = 0.975

Hệ số tốc độ phi ϕ thờng từ 0.96 ->0.98

Hệ số tốc độ psi ψ thờng đợc lấy từ 0.86 ->0.96

Độ chờm khi xác định chiều cao cánh động ∆ lấy bằng 0.0035(m)

Hệ số dùng cho tầng tiếp theo χ χ0, c2 nằm trong khoảng [ ]0,1 lấy trung bình là: 0.75

Bài này ta chỉ quan tâm tới thông số vào ra của tầng đơn

Do đó ta tính những thông số cơ bản nhất mà cha tính toán toàn bộ

Khi tính toán nhiệt tầng tuabin ta phải dựng quá trình trên giản đồ i-s

v1t H20

v2t

khi2.Hc2 i

s H0

p0h

t0h

Điểm quan trọng của bài toán là ta phải lập trình cho máy tính xác định đợc entanpi của hơi nớc tại các điểm đầu ra của dãy ống phun, dãy cánh động và tại

điểm giãn nở của hơi trong cánh động(do bài toán có tính đến độ phản lực ro:ρ)

Tất cả các công việc trên ta thực hiện bằng cách nội suy tuyến tính theo miền Các bớc giải của bài toán đựơc thể hiện nh sau:

Bớc 1:

Trang 21

Thực hiện nội suy tuyến tính:tìm khoảng trong dãy điểm nhập vào(trong bài lập trình là một ma trận 1 chiều)có chứa điểm mà ta cần xác định Bớc này ta tổ chức thành 1 hàm riêng

Bớc 2:

Thực hiện nội suy tuyến tính theo miền:(Thực chất là nội suy tuyến tính theo 2 chiều với ma trận dữ liệu vào là một mảng 2 chiều) Mục đích là tìm entanpi theo p&t và ta cũng làm 1 hàm với 2 tham số hình thức là p&t theo dữ liệu vào là 1 ma trận 2 chiều theo p&t của entanpi hơi quá nhiệt

Kết quả nhận đợc nh sau:

Với bài toán này ta coi là hơi quá nhiệt(không có độ ẩm) là khí lý tởng và xác

định nhiệt độ tại điểm 2(p2,t2) bằng phơng trình sau:

T2/T2 = (p2/p2)(k− 1) /k , với T là nhiệt độ tuyệt đối, k là số mũ đoạn nhiệt

Từ đó ta xác định đợc nhiệt độ t2 và thực hiện nội suy tuyến tính theo miền để tìm entanpi

Để xác định entanpi trong cánh động ta phải đi tìm nhiệt độ tk&pk, điểm này phải

có cùng entropi với điểm (p0,t0) và (p2,t2), tức là từ điểm 0->k->2 là quá trình đẳng entropi

Ta cũng lập một hàm riêng để xác định entropi theo nhiệt độ và áp suất bằng giải thuật nh với trờng hợp xác định entanpi.Từ đó biết entropi và xác định đợc entanpi của điểm này nhờ công thức:

ik = (i0 – i2) + i2t, với i0, i2 là entanpi tại điểm 0, 2

Ta xây dựng hàm tính tk&pk theo entanpi & entropi bằng cách lặp nh sau:

Trang 22

Tạo giá trị ban đầu tk= tk*

pk = pk*

tính entanpi & entropi theo tk* &pk* (theo cách ở trên)

nếu (entropi-0.5 <entropi*(vừa tính) <entropi +0.5)

và(entanpi-1 < entanpi(vừa tính)<entanpi+1)

Thoát

Nếu cha thoả mãn điều kiện trên

Tiếp tục tăng tk &pk

Lại tìm entanpi trong cánh động theo tk& pk

Một hàm quan trọng khác là hàm tìm thể tích riêng lý thuyết theo nhiệt độ và áp suất

Ta sử dụng hàm sau:

v =

6 3 3

Tất cả các đại lợng còn lại đều đã có công thức tờng minh(các công thức sau đây

đơc lấy ra từ sách tuốc bin hơi nớc GS.TS Phạm Lơng Tuệ)

áp suất hãm trớc tầng(bar) :p0h = h0+C02.khi0/2;

Tỷ số tốc độ :u/Ca = u/ 2.10 03h

Độ phản lực rô :chọn

Nhiệt giáng lý thuyết trong dãy ống phun (kj/kg) : h01 = (1-ro)h0h

(hoh:nhiệt giáng với thông số hãm)

Nhiệt giáng lý thuyết trong dãy cánh động(kj/kg) :h02 = r o.h0

Tốc ra lý thuyết khỏi cánh ống phun(m/s) :C1t = 2.10 013h

Diện tích ra của dãy ống phun(m2) :F1 =

1 1

1

t

Gv t C

à

Trang 23

Chiều cao của cánh ống phun(m) :l1 =

sin

F d

Tốc độ ra của hơI khỏi dãy ống phun (m) :C1 =ϕ.C1t

Tốc độ tơng đối đầu vào cánh động(m): W1 = C12+ −u2 2uC1cos 1α

Góc hớng beta của tốc độ tơng đối W1 :tg 1 sin 1

cos 1 u C/ 1

αβ

Gv W

βπ

=

Tốc độ tơng đối của đầu ra cánh đợng W2 :W2 =ψW 2t

Tốc độ tuyệt đối đầu ra cánh động (m) :C2 = 2 2

Năng lợng lý thuyết của tầng E0(kj/kg) :E0=h0-khic2.Hc2

Hiệu suất trên cánh quạt : 0

0

c l ol

E

Nhiệt giáng sử dụng của tầng(kj/kg) :Hi =Eo-Ho-Hl

Công suất trong của tầng(kW) :Pi =G.Hi

Hiệu suất tơng đối của tầng :η =oi Hi E/ 0

Thuật giải bài toán đợc cụ thể nh sau:

Viện Khoa học & công nghệ Nhiệt lạnh

Trờng Đại học Bách khoa Hà Nội

Nhập thông số đầu vào

P0, t0, p2, G, d, Co,ro, muy1, muy2, pxi, phi, anfa1

khico, khic2:

(đây là các thông số đầu vào cần thiết)

Nội suy các giá trị:

Trang 24

c.Néi dung bµi gi¶i

//x0 gia tri can tinh tai x0

//x,y ma tran gia tri nhap vao

double nstuyentinhmien(int n, int m,double *x,double *y, MT z, double x0, double

//ham entanpi theo ap suat va nhiet do

double ham_h2(double t,double p);

Trang 25

//t nhiet do

double ham_v(double t,double p);

//ham the tich theo ap suat va nhiet do

double ham_s(double t,double p);

//ham tinh entropi theo ap suat va nhiet do

void tpis(double *t,double *p);

//ham tinh ap suat ,nhiet do khi biet entanpi voi qua trinh doan nhiet

//cac thong so cua tua bin can tinh

printf("\n vaoluu luong hoi G(kg/s): "); scanf("%lf",&G);

printf("\n duong kinh trung binh d(m): "); scanf("%lf",&d);

printf("\n tan so quay n(1/s): "); scanf("%lf",&n);

printf("\n ap suat hoi truoc tang p0(bar): "); scanf("%lf",&p0);

printf("\n nhiet do hoi truoc tang t0(oC): "); scanf("%lf",&t0);

printf("\n toc do hoi vao tang C0(m/s): "); scanf("%lf",&C0);

printf("\n ap suat sau tang p2(bar): "); scanf("%lf",&p2);

printf("\n do phan luc ro: "); scanf("%lf",&ro);

printf("\n he so luu luong ong fun muy1: "); scanf("%lf",&muy1);

printf("\n goc huong cua toc do C1,anfa1(do):"); scanf("%lf",&anfa1);

printf("\n he so toc do day ong fun phi: "); scanf("%lf",&phi);

printf("\n he so luu luong canh dong muy2: "); scanf("%lf",&muy2);

printf("\n he so toc do day canh dong pxi: "); scanf("%lf",&pxi);

printf("\n he so su dung tang khic0: "); scanf("%lf",&khic0);

printf("\n he so su dung tang khic2 : "); scanf("%lf",&khic2);

Trang 26

printf("\nEntanpi cua hoi truoc tang i0: %10.4lf(kj/kg)",i0);

printf("\nEntanpi hoi sau tang i2: %10.4lf(kj/kg)",i2);

printf("\nEntropi cua qua trinh doan nhiet s0: %10.4lf(kj/kg.k)",s0); printf("\nNhiet giang ly thuyet cua tang theo thong so ham h0:

%10.4lf(kj/kg)",h0);

printf("\nToc do vong quay: u: %10.4lf(m/s)",u);

printf("\nTy so toc do uca: %10.4lf",uca);

printf("\nNhiet giang ly thuyet trong day ong phun h01: %10.4lf(kj/kg)",h01);

Trang 27

printf("\nNhiet giang ly thuyet trong day canh dong h02:

printf("\nChieu cao canh ong phun l1: %10.4lf(m)",l1);

printf("\nDien tich ra cua day canh dong F2: %10.4lf(m2)",F2);

printf("\nChieu cao canh dong l2: %10.4lf(m)",l2);

printf("\nGoc huong beta1(tang) cua toc do tuong doi W1 :

%10.4lf",tanbeta1);

printf("\nGoc huong anfa2(tang) cua toc do C2 : %10.4lf",tananfa2); printf("\nGoc huong beta2(sin) cua toc do W2 : %10.4lf",sinbeta2); printf("\nTon that trong day ong phun Hc Hc: %10.4lf(kj/kg)",Hc); printf("\nTon that trong day canh dong Hl Hl: %10.4lf(kj/kg)",Hl); printf("\nNang luong cua toc do ra Hc2 Hc2: %10.4lf(kj.kg)",Hc2); printf("\nNang ly thuyet cua tang E0 E0: %10.4lf(kj/kg)",E0);

printf("\nNhiet giang su dung tang Hi Hi: %10.4lf(kj/kg)",Hi);

printf("\nHieu suat tren canh quat nuyol: %10.4lf",nuyol);

printf("\nHieu suat trong tuong doi cua tang nuyoi: %10.4lf",nuyoi);

printf("\nCong suat trong cua tang Pi: %10.4lf(kW)",Pi);

Ngày đăng: 24/06/2016, 21:32

TỪ KHÓA LIÊN QUAN

w